-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Bindings to the Vulkan graphics API.
--
-- Bindings to the Vulkan graphics API.
@package vulkan
@version 3.4
module Vulkan.CStruct
-- | A class for types which can be marshalled into a C style structure.
class ToCStruct a
-- | Allocates a C type structure and all dependencies and passes it to a
-- continuation. The space is deallocated when this continuation returns
-- and the C type structure must not be returned out of it.
withCStruct :: ToCStruct a => a -> (Ptr a -> IO b) -> IO b
-- | Write a C type struct into some existing memory and run a
-- continuation. The pointed to structure is not necessarily valid
-- outside the continuation as additional allocations may have been made.
pokeCStruct :: ToCStruct a => Ptr a -> a -> IO b -> IO b
-- | Allocate space for an "empty" a and populate any univalued
-- members with their value.
withZeroCStruct :: ToCStruct a => (Ptr a -> IO b) -> IO b
-- | And populate any univalued members with their value, run a function
-- and then clean up any allocated resources.
pokeZeroCStruct :: ToCStruct a => Ptr a -> IO b -> IO b
-- | The size of this struct, note that this doesn't account for any extra
-- pointed-to data
cStructSize :: ToCStruct a => Int
-- | The required memory alignment for this type
cStructAlignment :: ToCStruct a => Int
-- | A class for types which can be marshalled from a C style structure.
class FromCStruct a
-- | Read an a and any other pointed to data from memory
peekCStruct :: FromCStruct a => Ptr a -> IO a
module Vulkan.CStruct.Utils
-- | Store a ByteString in a fixed amount of space, truncating if
-- necessary.
--
-- If the ByteString is not long enough to fill the space the
-- remaining bytes are unchanged
pokeFixedLengthByteString :: forall n. KnownNat n => Ptr (FixedArray n Word8) -> ByteString -> IO ()
-- | Store a ByteString in a fixed amount of space inserting a null
-- character at the end and truncating if necessary.
--
-- If the ByteString is not long enough to fill the space the
-- remaining bytes are unchanged
--
-- Note that if the ByteString is exactly long enough the last
-- byte will still be replaced with 0
pokeFixedLengthNullTerminatedByteString :: forall n. KnownNat n => Ptr (FixedArray n CChar) -> ByteString -> IO ()
-- | Peek a ByteString from a fixed sized array of bytes
peekByteStringFromSizedVectorPtr :: forall n. KnownNat n => Ptr (FixedArray n Word8) -> IO ByteString
-- | Get the pointer to the first element in the array
lowerArrayPtr :: forall a n. Ptr (FixedArray n a) -> Ptr a
-- | A type restricted plusPtr
advancePtrBytes :: Ptr a -> Int -> Ptr a
-- | An unpopulated type intended to be used as in Ptr
-- (FixedArray n a) to indicate that the pointer points to an array
-- of n as
data FixedArray (n :: Nat) (a :: Type)
module Vulkan.Extensions.VK_AMD_gcn_shader
type AMD_GCN_SHADER_SPEC_VERSION = 1
pattern AMD_GCN_SHADER_SPEC_VERSION :: forall a. Integral a => a
type AMD_GCN_SHADER_EXTENSION_NAME = "VK_AMD_gcn_shader"
pattern AMD_GCN_SHADER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_gpu_shader_half_float
type AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION = 2
pattern AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION :: forall a. Integral a => a
type AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME = "VK_AMD_gpu_shader_half_float"
pattern AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_gpu_shader_int16
type AMD_GPU_SHADER_INT16_SPEC_VERSION = 2
pattern AMD_GPU_SHADER_INT16_SPEC_VERSION :: forall a. Integral a => a
type AMD_GPU_SHADER_INT16_EXTENSION_NAME = "VK_AMD_gpu_shader_int16"
pattern AMD_GPU_SHADER_INT16_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_mixed_attachment_samples
type AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION = 1
pattern AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION :: forall a. Integral a => a
type AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME = "VK_AMD_mixed_attachment_samples"
pattern AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_negative_viewport_height
type AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION = 1
pattern AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION :: forall a. Integral a => a
type AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME = "VK_AMD_negative_viewport_height"
pattern AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_shader_ballot
type AMD_SHADER_BALLOT_SPEC_VERSION = 1
pattern AMD_SHADER_BALLOT_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_BALLOT_EXTENSION_NAME = "VK_AMD_shader_ballot"
pattern AMD_SHADER_BALLOT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_shader_explicit_vertex_parameter
type AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION = 1
pattern AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME = "VK_AMD_shader_explicit_vertex_parameter"
pattern AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_shader_fragment_mask
type AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION = 1
pattern AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME = "VK_AMD_shader_fragment_mask"
pattern AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_shader_image_load_store_lod
type AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION = 1
pattern AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME = "VK_AMD_shader_image_load_store_lod"
pattern AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_shader_trinary_minmax
type AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION = 1
pattern AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME = "VK_AMD_shader_trinary_minmax"
pattern AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_depth_range_unrestricted
type EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION = 1
pattern EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION :: forall a. Integral a => a
type EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME = "VK_EXT_depth_range_unrestricted"
pattern EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_external_memory_dma_buf
type EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION = 1
pattern EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION :: forall a. Integral a => a
type EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME = "VK_EXT_external_memory_dma_buf"
pattern EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_post_depth_coverage
type EXT_POST_DEPTH_COVERAGE_SPEC_VERSION = 1
pattern EXT_POST_DEPTH_COVERAGE_SPEC_VERSION :: forall a. Integral a => a
type EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME = "VK_EXT_post_depth_coverage"
pattern EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_shader_stencil_export
type EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION = 1
pattern EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION :: forall a. Integral a => a
type EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME = "VK_EXT_shader_stencil_export"
pattern EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_shader_subgroup_ballot
type EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION = 1
pattern EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION :: forall a. Integral a => a
type EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME = "VK_EXT_shader_subgroup_ballot"
pattern EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_shader_subgroup_vote
type EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION = 1
pattern EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION :: forall a. Integral a => a
type EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME = "VK_EXT_shader_subgroup_vote"
pattern EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_shader_viewport_index_layer
type EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION = 1
pattern EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION :: forall a. Integral a => a
type EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME = "VK_EXT_shader_viewport_index_layer"
pattern EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_GOOGLE_decorate_string
type GOOGLE_DECORATE_STRING_SPEC_VERSION = 1
pattern GOOGLE_DECORATE_STRING_SPEC_VERSION :: forall a. Integral a => a
type GOOGLE_DECORATE_STRING_EXTENSION_NAME = "VK_GOOGLE_decorate_string"
pattern GOOGLE_DECORATE_STRING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_GOOGLE_hlsl_functionality1
type GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION = 1
pattern GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION :: forall a. Integral a => a
type GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME = "VK_GOOGLE_hlsl_functionality1"
pattern GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_GOOGLE_user_type
type GOOGLE_USER_TYPE_SPEC_VERSION = 1
pattern GOOGLE_USER_TYPE_SPEC_VERSION :: forall a. Integral a => a
type GOOGLE_USER_TYPE_EXTENSION_NAME = "VK_GOOGLE_user_type"
pattern GOOGLE_USER_TYPE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_IMG_filter_cubic
type IMG_FILTER_CUBIC_SPEC_VERSION = 1
pattern IMG_FILTER_CUBIC_SPEC_VERSION :: forall a. Integral a => a
type IMG_FILTER_CUBIC_EXTENSION_NAME = "VK_IMG_filter_cubic"
pattern IMG_FILTER_CUBIC_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_IMG_format_pvrtc
type IMG_FORMAT_PVRTC_SPEC_VERSION = 1
pattern IMG_FORMAT_PVRTC_SPEC_VERSION :: forall a. Integral a => a
type IMG_FORMAT_PVRTC_EXTENSION_NAME = "VK_IMG_format_pvrtc"
pattern IMG_FORMAT_PVRTC_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_KHR_relaxed_block_layout
type KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION = 1
pattern KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION :: forall a. Integral a => a
type KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME = "VK_KHR_relaxed_block_layout"
pattern KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_KHR_shader_draw_parameters
type KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION = 1
pattern KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME = "VK_KHR_shader_draw_parameters"
pattern KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_KHR_shader_non_semantic_info
type KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION = 1
pattern KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME = "VK_KHR_shader_non_semantic_info"
pattern KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_KHR_spirv_1_4
type KHR_SPIRV_1_4_SPEC_VERSION = 1
pattern KHR_SPIRV_1_4_SPEC_VERSION :: forall a. Integral a => a
type KHR_SPIRV_1_4_EXTENSION_NAME = "VK_KHR_spirv_1_4"
pattern KHR_SPIRV_1_4_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_KHR_storage_buffer_storage_class
type KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION = 1
pattern KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION :: forall a. Integral a => a
type KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME = "VK_KHR_storage_buffer_storage_class"
pattern KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_NV_fill_rectangle
type NV_FILL_RECTANGLE_SPEC_VERSION = 1
pattern NV_FILL_RECTANGLE_SPEC_VERSION :: forall a. Integral a => a
type NV_FILL_RECTANGLE_EXTENSION_NAME = "VK_NV_fill_rectangle"
pattern NV_FILL_RECTANGLE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_NV_geometry_shader_passthrough
type NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION = 1
pattern NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION :: forall a. Integral a => a
type NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME = "VK_NV_geometry_shader_passthrough"
pattern NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_NV_glsl_shader
type NV_GLSL_SHADER_SPEC_VERSION = 1
pattern NV_GLSL_SHADER_SPEC_VERSION :: forall a. Integral a => a
type NV_GLSL_SHADER_EXTENSION_NAME = "VK_NV_glsl_shader"
pattern NV_GLSL_SHADER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_NV_sample_mask_override_coverage
type NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION = 1
pattern NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION :: forall a. Integral a => a
type NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME = "VK_NV_sample_mask_override_coverage"
pattern NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_NV_shader_subgroup_partitioned
type NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION = 1
pattern NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION :: forall a. Integral a => a
type NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME = "VK_NV_shader_subgroup_partitioned"
pattern NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_NV_viewport_array2
type NV_VIEWPORT_ARRAY2_SPEC_VERSION = 1
pattern NV_VIEWPORT_ARRAY2_SPEC_VERSION :: forall a. Integral a => a
type NV_VIEWPORT_ARRAY2_EXTENSION_NAME = "VK_NV_viewport_array2"
pattern NV_VIEWPORT_ARRAY2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_QCOM_render_pass_shader_resolve
type QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION = 4
pattern QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION :: forall a. Integral a => a
type QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME = "VK_QCOM_render_pass_shader_resolve"
pattern QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_QCOM_render_pass_store_ops
type QCOM_render_pass_store_ops_SPEC_VERSION = 2
pattern QCOM_render_pass_store_ops_SPEC_VERSION :: forall a. Integral a => a
type QCOM_render_pass_store_ops_EXTENSION_NAME = "VK_QCOM_render_pass_store_ops"
pattern QCOM_render_pass_store_ops_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.NamedType
-- | Annotate a type with a name
type (name :: k) ::: a = a
module Vulkan.Version
pattern HEADER_VERSION :: Word32
pattern HEADER_VERSION_COMPLETE :: Word32
pattern MAKE_VERSION :: Word32 -> Word32 -> Word32 -> Word32
_VERSION_MAJOR :: Word32 -> Word32
_VERSION_MINOR :: Word32 -> Word32
_VERSION_PATCH :: Word32 -> Word32
module Vulkan.Zero
-- | A class for initializing things with all zero data
--
-- Any instance should satisfy the following law:
--
-- new zero = calloc or with zero = withZeroCStruct
--
-- i.e. Marshaling zero to memory yeilds only zero-valued bytes,
-- except for structs which require a "type" tag
class Zero a
zero :: Zero a => a
instance Vulkan.Zero.Zero GHC.Types.Bool
instance Vulkan.Zero.Zero (GHC.Ptr.FunPtr a)
instance Vulkan.Zero.Zero (GHC.Ptr.Ptr a)
instance Vulkan.Zero.Zero GHC.Int.Int8
instance Vulkan.Zero.Zero GHC.Int.Int16
instance Vulkan.Zero.Zero GHC.Int.Int32
instance Vulkan.Zero.Zero GHC.Int.Int64
instance Vulkan.Zero.Zero GHC.Word.Word8
instance Vulkan.Zero.Zero GHC.Word.Word16
instance Vulkan.Zero.Zero GHC.Word.Word32
instance Vulkan.Zero.Zero GHC.Word.Word64
instance Vulkan.Zero.Zero GHC.Types.Float
instance Vulkan.Zero.Zero Foreign.C.Types.CFloat
instance Vulkan.Zero.Zero Foreign.C.Types.CChar
instance Vulkan.Zero.Zero Foreign.C.Types.CSize
instance Vulkan.Zero.Zero Foreign.C.Types.CInt
module Vulkan.Core12.Enums.ShaderFloatControlsIndependence
-- | VkShaderFloatControlsIndependence - Enum specifying whether, and how,
-- shader float controls can be set separately
--
--
See Also
--
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceVulkan12Properties
newtype ShaderFloatControlsIndependence
ShaderFloatControlsIndependence :: Int32 -> ShaderFloatControlsIndependence
-- | SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY specifies that
-- shader float controls for 32-bit floating point can be set
-- independently; other bit widths must be set identically to each
-- other.
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY :: ShaderFloatControlsIndependence
-- | SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL specifies that shader
-- float controls for all bit widths can be set independently.
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL :: ShaderFloatControlsIndependence
-- | SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE specifies that shader
-- float controls for all bit widths must be set identically.
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE :: ShaderFloatControlsIndependence
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.ShaderFloatControlsIndependence.ShaderFloatControlsIndependence
instance Foreign.Storable.Storable Vulkan.Core12.Enums.ShaderFloatControlsIndependence.ShaderFloatControlsIndependence
instance GHC.Classes.Ord Vulkan.Core12.Enums.ShaderFloatControlsIndependence.ShaderFloatControlsIndependence
instance GHC.Classes.Eq Vulkan.Core12.Enums.ShaderFloatControlsIndependence.ShaderFloatControlsIndependence
instance GHC.Show.Show Vulkan.Core12.Enums.ShaderFloatControlsIndependence.ShaderFloatControlsIndependence
instance GHC.Read.Read Vulkan.Core12.Enums.ShaderFloatControlsIndependence.ShaderFloatControlsIndependence
module Vulkan.Core12.Enums.SemaphoreType
-- | VkSemaphoreType - Sepcifies the type of a semaphore object
--
-- See Also
--
-- SemaphoreTypeCreateInfo
newtype SemaphoreType
SemaphoreType :: Int32 -> SemaphoreType
-- | SEMAPHORE_TYPE_BINARY specifies a binary semaphore type
-- that has a boolean payload indicating whether the semaphore is
-- currently signaled or unsignaled. When created, the semaphore is in
-- the unsignaled state.
pattern SEMAPHORE_TYPE_BINARY :: SemaphoreType
-- | SEMAPHORE_TYPE_TIMELINE specifies a timeline semaphore
-- type that has a monotonically increasing 64-bit unsigned integer
-- payload indicating whether the semaphore is signaled with respect to a
-- particular reference value. When created, the semaphore payload has
-- the value given by the initialValue field of
-- SemaphoreTypeCreateInfo.
pattern SEMAPHORE_TYPE_TIMELINE :: SemaphoreType
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.SemaphoreType.SemaphoreType
instance Foreign.Storable.Storable Vulkan.Core12.Enums.SemaphoreType.SemaphoreType
instance GHC.Classes.Ord Vulkan.Core12.Enums.SemaphoreType.SemaphoreType
instance GHC.Classes.Eq Vulkan.Core12.Enums.SemaphoreType.SemaphoreType
instance GHC.Show.Show Vulkan.Core12.Enums.SemaphoreType.SemaphoreType
instance GHC.Read.Read Vulkan.Core12.Enums.SemaphoreType.SemaphoreType
module Vulkan.Core12.Enums.SamplerReductionMode
-- | VkSamplerReductionMode - Specify reduction mode for texture filtering
--
-- See Also
--
-- SamplerReductionModeCreateInfo
newtype SamplerReductionMode
SamplerReductionMode :: Int32 -> SamplerReductionMode
-- | SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE specifies that texel
-- values are combined by computing a weighted average of values in the
-- footprint, using weights as specified in the image operations
-- chapter.
pattern SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE :: SamplerReductionMode
-- | SAMPLER_REDUCTION_MODE_MIN specifies that texel values are
-- combined by taking the component-wise minimum of values in the
-- footprint with non-zero weights.
pattern SAMPLER_REDUCTION_MODE_MIN :: SamplerReductionMode
-- | SAMPLER_REDUCTION_MODE_MAX specifies that texel values are
-- combined by taking the component-wise maximum of values in the
-- footprint with non-zero weights.
pattern SAMPLER_REDUCTION_MODE_MAX :: SamplerReductionMode
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.SamplerReductionMode.SamplerReductionMode
instance Foreign.Storable.Storable Vulkan.Core12.Enums.SamplerReductionMode.SamplerReductionMode
instance GHC.Classes.Ord Vulkan.Core12.Enums.SamplerReductionMode.SamplerReductionMode
instance GHC.Classes.Eq Vulkan.Core12.Enums.SamplerReductionMode.SamplerReductionMode
instance GHC.Show.Show Vulkan.Core12.Enums.SamplerReductionMode.SamplerReductionMode
instance GHC.Read.Read Vulkan.Core12.Enums.SamplerReductionMode.SamplerReductionMode
module Vulkan.Core12.Enums.DriverId
-- | VkDriverId - Khronos driver IDs
--
-- Description
--
-- Note
--
-- Khronos driver IDs may be allocated by vendors at any time. There may
-- be multiple driver IDs for the same vendor, representing different
-- drivers (for e.g. different platforms, proprietary or open source,
-- etc.). Only the latest canonical versions of this Specification, of
-- the corresponding vk.xml API Registry, and of the
-- corresponding vulkan_core.h header file must contain
-- all reserved Khronos driver IDs.
--
-- Only driver IDs registered with Khronos are given symbolic names.
-- There may be unregistered driver IDs returned.
--
-- See Also
--
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceVulkan12Properties
newtype DriverId
DriverId :: Int32 -> DriverId
pattern DRIVER_ID_AMD_PROPRIETARY :: DriverId
pattern DRIVER_ID_AMD_OPEN_SOURCE :: DriverId
pattern DRIVER_ID_MESA_RADV :: DriverId
pattern DRIVER_ID_NVIDIA_PROPRIETARY :: DriverId
pattern DRIVER_ID_INTEL_PROPRIETARY_WINDOWS :: DriverId
pattern DRIVER_ID_INTEL_OPEN_SOURCE_MESA :: DriverId
pattern DRIVER_ID_IMAGINATION_PROPRIETARY :: DriverId
pattern DRIVER_ID_QUALCOMM_PROPRIETARY :: DriverId
pattern DRIVER_ID_ARM_PROPRIETARY :: DriverId
pattern DRIVER_ID_GOOGLE_SWIFTSHADER :: DriverId
pattern DRIVER_ID_GGP_PROPRIETARY :: DriverId
pattern DRIVER_ID_BROADCOM_PROPRIETARY :: DriverId
pattern DRIVER_ID_MESA_LLVMPIPE :: DriverId
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.DriverId.DriverId
instance Foreign.Storable.Storable Vulkan.Core12.Enums.DriverId.DriverId
instance GHC.Classes.Ord Vulkan.Core12.Enums.DriverId.DriverId
instance GHC.Classes.Eq Vulkan.Core12.Enums.DriverId.DriverId
instance GHC.Show.Show Vulkan.Core12.Enums.DriverId.DriverId
instance GHC.Read.Read Vulkan.Core12.Enums.DriverId.DriverId
module Vulkan.Core11.Enums.TessellationDomainOrigin
-- | VkTessellationDomainOrigin - Enum describing tessellation domain
-- origin
--
-- Description
--
-- This enum affects how the VertexOrderCw and
-- VertexOrderCcw tessellation execution modes are interpreted,
-- since the winding is defined relative to the orientation of the
-- domain.
--
-- See Also
--
-- PipelineTessellationDomainOriginStateCreateInfo
newtype TessellationDomainOrigin
TessellationDomainOrigin :: Int32 -> TessellationDomainOrigin
-- | TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT specifies that the origin
-- of the domain space is in the upper left corner, as shown in figure
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#img-tessellation-topology-ul.
pattern TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT :: TessellationDomainOrigin
-- | TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT specifies that the origin
-- of the domain space is in the lower left corner, as shown in figure
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#img-tessellation-topology-ll.
pattern TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT :: TessellationDomainOrigin
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.TessellationDomainOrigin.TessellationDomainOrigin
instance Foreign.Storable.Storable Vulkan.Core11.Enums.TessellationDomainOrigin.TessellationDomainOrigin
instance GHC.Classes.Ord Vulkan.Core11.Enums.TessellationDomainOrigin.TessellationDomainOrigin
instance GHC.Classes.Eq Vulkan.Core11.Enums.TessellationDomainOrigin.TessellationDomainOrigin
instance GHC.Show.Show Vulkan.Core11.Enums.TessellationDomainOrigin.TessellationDomainOrigin
instance GHC.Read.Read Vulkan.Core11.Enums.TessellationDomainOrigin.TessellationDomainOrigin
module Vulkan.Core11.Enums.SamplerYcbcrRange
-- | VkSamplerYcbcrRange - Range of encoded values in a color space
--
-- Description
--
-- The formulae for these conversions is described in the Sampler
-- Y′CBCR Range Expansion section of the Image Operations
-- chapter.
--
-- No range modification takes place if ycbcrModel is
-- SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY; the
-- ycbcrRange field of SamplerYcbcrConversionCreateInfo
-- is ignored in this case.
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- SamplerYcbcrConversionCreateInfo
newtype SamplerYcbcrRange
SamplerYcbcrRange :: Int32 -> SamplerYcbcrRange
-- | SAMPLER_YCBCR_RANGE_ITU_FULL specifies that the full range of
-- the encoded values are valid and interpreted according to the ITU
-- “full range” quantization rules.
pattern SAMPLER_YCBCR_RANGE_ITU_FULL :: SamplerYcbcrRange
-- | SAMPLER_YCBCR_RANGE_ITU_NARROW specifies that headroom and foot
-- room are reserved in the numerical range of encoded values, and the
-- remaining values are expanded according to the ITU “narrow range”
-- quantization rules.
pattern SAMPLER_YCBCR_RANGE_ITU_NARROW :: SamplerYcbcrRange
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.SamplerYcbcrRange.SamplerYcbcrRange
instance Foreign.Storable.Storable Vulkan.Core11.Enums.SamplerYcbcrRange.SamplerYcbcrRange
instance GHC.Classes.Ord Vulkan.Core11.Enums.SamplerYcbcrRange.SamplerYcbcrRange
instance GHC.Classes.Eq Vulkan.Core11.Enums.SamplerYcbcrRange.SamplerYcbcrRange
instance GHC.Show.Show Vulkan.Core11.Enums.SamplerYcbcrRange.SamplerYcbcrRange
instance GHC.Read.Read Vulkan.Core11.Enums.SamplerYcbcrRange.SamplerYcbcrRange
module Vulkan.Core11.Enums.SamplerYcbcrModelConversion
-- | VkSamplerYcbcrModelConversion - Color model component of a color space
--
-- Description
--
--
--
--
--
-- In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color
-- models, for the input to the sampler Y′CBCR range expansion and model
-- conversion:
--
--
-- - the Y (Y′ luma) channel corresponds to the G channel of an RGB
-- image.
-- - the CB (CB or “U” blue color difference) channel corresponds to
-- the B channel of an RGB image.
-- - the CR (CR or “V” red color difference) channel corresponds to the
-- R channel of an RGB image.
-- - the alpha channel, if present, is not modified by color model
-- conversion.
--
--
-- These rules reflect the mapping of channels after the channel swizzle
-- operation (controlled by
-- SamplerYcbcrConversionCreateInfo::components).
--
-- Note
--
-- For example, an “YUVA” 32-bit format comprising four 8-bit channels
-- can be implemented as FORMAT_R8G8B8A8_UNORM with a component
-- mapping:
--
--
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- SamplerYcbcrConversionCreateInfo
newtype SamplerYcbcrModelConversion
SamplerYcbcrModelConversion :: Int32 -> SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 :: SamplerYcbcrModelConversion
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.SamplerYcbcrModelConversion.SamplerYcbcrModelConversion
instance Foreign.Storable.Storable Vulkan.Core11.Enums.SamplerYcbcrModelConversion.SamplerYcbcrModelConversion
instance GHC.Classes.Ord Vulkan.Core11.Enums.SamplerYcbcrModelConversion.SamplerYcbcrModelConversion
instance GHC.Classes.Eq Vulkan.Core11.Enums.SamplerYcbcrModelConversion.SamplerYcbcrModelConversion
instance GHC.Show.Show Vulkan.Core11.Enums.SamplerYcbcrModelConversion.SamplerYcbcrModelConversion
instance GHC.Read.Read Vulkan.Core11.Enums.SamplerYcbcrModelConversion.SamplerYcbcrModelConversion
module Vulkan.Core11.Enums.PointClippingBehavior
-- | VkPointClippingBehavior - Enum specifying the point clipping behavior
--
-- See Also
--
-- PhysicalDevicePointClippingProperties,
-- PhysicalDeviceVulkan11Properties
newtype PointClippingBehavior
PointClippingBehavior :: Int32 -> PointClippingBehavior
-- | POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES specifies that the
-- primitive is discarded if the vertex lies outside any clip plane,
-- including the planes bounding the view volume.
pattern POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES :: PointClippingBehavior
-- | POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY specifies that
-- the primitive is discarded only if the vertex lies outside any user
-- clip plane.
pattern POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY :: PointClippingBehavior
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.PointClippingBehavior.PointClippingBehavior
instance Foreign.Storable.Storable Vulkan.Core11.Enums.PointClippingBehavior.PointClippingBehavior
instance GHC.Classes.Ord Vulkan.Core11.Enums.PointClippingBehavior.PointClippingBehavior
instance GHC.Classes.Eq Vulkan.Core11.Enums.PointClippingBehavior.PointClippingBehavior
instance GHC.Show.Show Vulkan.Core11.Enums.PointClippingBehavior.PointClippingBehavior
instance GHC.Read.Read Vulkan.Core11.Enums.PointClippingBehavior.PointClippingBehavior
module Vulkan.Core11.Enums.DescriptorUpdateTemplateType
-- | VkDescriptorUpdateTemplateType - Indicates the valid usage of the
-- descriptor update template
--
-- See Also
--
-- DescriptorUpdateTemplateCreateInfo
newtype DescriptorUpdateTemplateType
DescriptorUpdateTemplateType :: Int32 -> DescriptorUpdateTemplateType
-- | DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET specifies that
-- the descriptor update template will be used for descriptor set updates
-- only.
pattern DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET :: DescriptorUpdateTemplateType
-- | DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR specifies
-- that the descriptor update template will be used for push descriptor
-- updates only.
pattern DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR :: DescriptorUpdateTemplateType
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.DescriptorUpdateTemplateType.DescriptorUpdateTemplateType
instance Foreign.Storable.Storable Vulkan.Core11.Enums.DescriptorUpdateTemplateType.DescriptorUpdateTemplateType
instance GHC.Classes.Ord Vulkan.Core11.Enums.DescriptorUpdateTemplateType.DescriptorUpdateTemplateType
instance GHC.Classes.Eq Vulkan.Core11.Enums.DescriptorUpdateTemplateType.DescriptorUpdateTemplateType
instance GHC.Show.Show Vulkan.Core11.Enums.DescriptorUpdateTemplateType.DescriptorUpdateTemplateType
instance GHC.Read.Read Vulkan.Core11.Enums.DescriptorUpdateTemplateType.DescriptorUpdateTemplateType
module Vulkan.Core11.Enums.ChromaLocation
-- | VkChromaLocation - Position of downsampled chroma samples
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- SamplerYcbcrConversionCreateInfo
newtype ChromaLocation
ChromaLocation :: Int32 -> ChromaLocation
-- | CHROMA_LOCATION_COSITED_EVEN specifies that downsampled chroma
-- samples are aligned with luma samples with even coordinates.
pattern CHROMA_LOCATION_COSITED_EVEN :: ChromaLocation
-- | CHROMA_LOCATION_MIDPOINT specifies that downsampled chroma
-- samples are located half way between each even luma sample and the
-- nearest higher odd luma sample.
pattern CHROMA_LOCATION_MIDPOINT :: ChromaLocation
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ChromaLocation.ChromaLocation
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ChromaLocation.ChromaLocation
instance GHC.Classes.Ord Vulkan.Core11.Enums.ChromaLocation.ChromaLocation
instance GHC.Classes.Eq Vulkan.Core11.Enums.ChromaLocation.ChromaLocation
instance GHC.Show.Show Vulkan.Core11.Enums.ChromaLocation.ChromaLocation
instance GHC.Read.Read Vulkan.Core11.Enums.ChromaLocation.ChromaLocation
module Vulkan.Core10.Enums.VertexInputRate
-- | VkVertexInputRate - Specify rate at which vertex attributes are pulled
-- from buffers
--
-- See Also
--
-- VertexInputBindingDescription
newtype VertexInputRate
VertexInputRate :: Int32 -> VertexInputRate
-- | VERTEX_INPUT_RATE_VERTEX specifies that vertex attribute
-- addressing is a function of the vertex index.
pattern VERTEX_INPUT_RATE_VERTEX :: VertexInputRate
-- | VERTEX_INPUT_RATE_INSTANCE specifies that vertex attribute
-- addressing is a function of the instance index.
pattern VERTEX_INPUT_RATE_INSTANCE :: VertexInputRate
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.VertexInputRate.VertexInputRate
instance Foreign.Storable.Storable Vulkan.Core10.Enums.VertexInputRate.VertexInputRate
instance GHC.Classes.Ord Vulkan.Core10.Enums.VertexInputRate.VertexInputRate
instance GHC.Classes.Eq Vulkan.Core10.Enums.VertexInputRate.VertexInputRate
instance GHC.Show.Show Vulkan.Core10.Enums.VertexInputRate.VertexInputRate
instance GHC.Read.Read Vulkan.Core10.Enums.VertexInputRate.VertexInputRate
module Vulkan.Core10.Enums.VendorId
-- | VkVendorId - Khronos vendor IDs
--
-- Description
--
-- Note
--
-- Khronos vendor IDs may be allocated by vendors at any time. Only the
-- latest canonical versions of this Specification, of the corresponding
-- vk.xml API Registry, and of the corresponding
-- vulkan_core.h header file must contain all reserved
-- Khronos vendor IDs.
--
-- Only Khronos vendor IDs are given symbolic names at present. PCI
-- vendor IDs returned by the implementation can be looked up in the
-- PCI-SIG database.
--
-- See Also
--
-- No cross-references are available
newtype VendorId
VendorId :: Int32 -> VendorId
pattern VENDOR_ID_VIV :: VendorId
pattern VENDOR_ID_VSI :: VendorId
pattern VENDOR_ID_KAZAN :: VendorId
pattern VENDOR_ID_CODEPLAY :: VendorId
pattern VENDOR_ID_MESA :: VendorId
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.VendorId.VendorId
instance Foreign.Storable.Storable Vulkan.Core10.Enums.VendorId.VendorId
instance GHC.Classes.Ord Vulkan.Core10.Enums.VendorId.VendorId
instance GHC.Classes.Eq Vulkan.Core10.Enums.VendorId.VendorId
instance GHC.Show.Show Vulkan.Core10.Enums.VendorId.VendorId
instance GHC.Read.Read Vulkan.Core10.Enums.VendorId.VendorId
module Vulkan.Core10.Enums.SystemAllocationScope
-- | VkSystemAllocationScope - Allocation scope
--
-- Description
--
--
--
--
--
-- Most Vulkan commands operate on a single object, or there is a sole
-- object that is being created or manipulated. When an allocation uses
-- an allocation scope of SYSTEM_ALLOCATION_SCOPE_OBJECT or
-- SYSTEM_ALLOCATION_SCOPE_CACHE, the allocation is scoped to the
-- object being created or manipulated.
--
-- When an implementation requires host memory, it will make callbacks to
-- the application using the most specific allocator and allocation scope
-- available:
--
--
-- - If an allocation is scoped to the duration of a command, the
-- allocator will use the SYSTEM_ALLOCATION_SCOPE_COMMAND
-- allocation scope. The most specific allocator available is used: if
-- the object being created or manipulated has an allocator, that
-- object’s allocator will be used, else if the parent Device has
-- an allocator it will be used, else if the parent Instance has
-- an allocator it will be used. Else,
-- - If an allocation is associated with a ValidationCacheEXT or
-- PipelineCache object, the allocator will use the
-- SYSTEM_ALLOCATION_SCOPE_CACHE allocation scope. The most
-- specific allocator available is used (cache, else device, else
-- instance). Else,
-- - If an allocation is scoped to the lifetime of an object, that
-- object is being created or manipulated by the command, and that
-- object’s type is not Device or Instance, the allocator
-- will use an allocation scope of SYSTEM_ALLOCATION_SCOPE_OBJECT.
-- The most specific allocator available is used (object, else device,
-- else instance). Else,
-- - If an allocation is scoped to the lifetime of a device, the
-- allocator will use an allocation scope of
-- SYSTEM_ALLOCATION_SCOPE_DEVICE. The most specific allocator
-- available is used (device, else instance). Else,
-- - If the allocation is scoped to the lifetime of an instance and the
-- instance has an allocator, its allocator will be used with an
-- allocation scope of SYSTEM_ALLOCATION_SCOPE_INSTANCE.
-- - Otherwise an implementation will allocate memory through an
-- alternative mechanism that is unspecified.
--
--
-- See Also
--
-- AllocationCallbacks
newtype SystemAllocationScope
SystemAllocationScope :: Int32 -> SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_COMMAND :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_OBJECT :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_CACHE :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_DEVICE :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_INSTANCE :: SystemAllocationScope
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SystemAllocationScope.SystemAllocationScope
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SystemAllocationScope.SystemAllocationScope
instance GHC.Classes.Ord Vulkan.Core10.Enums.SystemAllocationScope.SystemAllocationScope
instance GHC.Classes.Eq Vulkan.Core10.Enums.SystemAllocationScope.SystemAllocationScope
instance GHC.Show.Show Vulkan.Core10.Enums.SystemAllocationScope.SystemAllocationScope
instance GHC.Read.Read Vulkan.Core10.Enums.SystemAllocationScope.SystemAllocationScope
module Vulkan.Core10.Enums.SubpassContents
-- | VkSubpassContents - Specify how commands in the first subpass of a
-- render pass are provided
--
-- See Also
--
-- SubpassBeginInfo, cmdBeginRenderPass,
-- cmdNextSubpass
newtype SubpassContents
SubpassContents :: Int32 -> SubpassContents
-- | SUBPASS_CONTENTS_INLINE specifies that the contents of the
-- subpass will be recorded inline in the primary command buffer, and
-- secondary command buffers must not be executed within the
-- subpass.
pattern SUBPASS_CONTENTS_INLINE :: SubpassContents
-- | SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS specifies that the
-- contents are recorded in secondary command buffers that will be called
-- from the primary command buffer, and cmdExecuteCommands is the
-- only valid command on the command buffer until cmdNextSubpass
-- or cmdEndRenderPass.
pattern SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS :: SubpassContents
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SubpassContents.SubpassContents
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SubpassContents.SubpassContents
instance GHC.Classes.Ord Vulkan.Core10.Enums.SubpassContents.SubpassContents
instance GHC.Classes.Eq Vulkan.Core10.Enums.SubpassContents.SubpassContents
instance GHC.Show.Show Vulkan.Core10.Enums.SubpassContents.SubpassContents
instance GHC.Read.Read Vulkan.Core10.Enums.SubpassContents.SubpassContents
module Vulkan.Core10.Enums.StructureType
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.StructureType.StructureType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.StructureType.StructureType
instance GHC.Classes.Ord Vulkan.Core10.Enums.StructureType.StructureType
instance GHC.Classes.Eq Vulkan.Core10.Enums.StructureType.StructureType
instance GHC.Show.Show Vulkan.Core10.Enums.StructureType.StructureType
instance GHC.Read.Read Vulkan.Core10.Enums.StructureType.StructureType
module Vulkan.Extensions.VK_GGP_frame_token
-- | VkPresentFrameTokenGGP - The Google Games Platform frame token
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PresentFrameTokenGGP
PresentFrameTokenGGP :: GgpFrameToken -> PresentFrameTokenGGP
-- | frameToken is the Google Games Platform frame token.
--
-- frameToken must be a valid GgpFrameToken
[$sel:frameToken:PresentFrameTokenGGP] :: PresentFrameTokenGGP -> GgpFrameToken
type GGP_FRAME_TOKEN_SPEC_VERSION = 1
pattern GGP_FRAME_TOKEN_SPEC_VERSION :: forall a. Integral a => a
type GGP_FRAME_TOKEN_EXTENSION_NAME = "VK_GGP_frame_token"
pattern GGP_FRAME_TOKEN_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type GgpFrameToken = Word32
instance GHC.Classes.Eq Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
instance GHC.Generics.Generic Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
instance GHC.Show.Show Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
instance Foreign.Storable.Storable Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GGP_frame_token.PresentFrameTokenGGP
module Vulkan.Extensions.VK_EXT_validation_flags
-- | VkValidationFlagsEXT - Specify validation checks to disable for a
-- Vulkan instance
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, ValidationCheckEXT
data ValidationFlagsEXT
ValidationFlagsEXT :: Vector ValidationCheckEXT -> ValidationFlagsEXT
-- | pDisabledValidationChecks is a pointer to an array of
-- ValidationCheckEXT values specifying the validation checks to
-- be disabled.
--
-- pDisabledValidationChecks must be a valid pointer to
-- an array of disabledValidationCheckCount valid
-- ValidationCheckEXT values
[$sel:disabledValidationChecks:ValidationFlagsEXT] :: ValidationFlagsEXT -> Vector ValidationCheckEXT
-- | VkValidationCheckEXT - Specify validation checks to disable
--
-- See Also
--
-- ValidationFlagsEXT
newtype ValidationCheckEXT
ValidationCheckEXT :: Int32 -> ValidationCheckEXT
-- | VALIDATION_CHECK_ALL_EXT specifies that all validation checks
-- are disabled.
pattern VALIDATION_CHECK_ALL_EXT :: ValidationCheckEXT
-- | VALIDATION_CHECK_SHADERS_EXT specifies that shader validation
-- is disabled.
pattern VALIDATION_CHECK_SHADERS_EXT :: ValidationCheckEXT
type EXT_VALIDATION_FLAGS_SPEC_VERSION = 2
pattern EXT_VALIDATION_FLAGS_SPEC_VERSION :: forall a. Integral a => a
type EXT_VALIDATION_FLAGS_EXTENSION_NAME = "VK_EXT_validation_flags"
pattern EXT_VALIDATION_FLAGS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_flags.ValidationCheckEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_flags.ValidationCheckEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_validation_flags.ValidationCheckEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_validation_flags.ValidationCheckEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_validation_flags.ValidationFlagsEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_flags.ValidationFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_validation_flags.ValidationFlagsEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_validation_flags.ValidationFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_flags.ValidationFlagsEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_flags.ValidationCheckEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_validation_flags.ValidationCheckEXT
module Vulkan.Extensions.VK_EXT_validation_features
-- | VkValidationFeaturesEXT - Specify validation features to enable or
-- disable for a Vulkan instance
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If enabledValidationFeatureCount is not 0,
-- pEnabledValidationFeatures must be a valid pointer to
-- an array of enabledValidationFeatureCount valid
-- ValidationFeatureEnableEXT values
-- - If disabledValidationFeatureCount is not 0,
-- pDisabledValidationFeatures must be a valid pointer to
-- an array of disabledValidationFeatureCount valid
-- ValidationFeatureDisableEXT values
--
--
-- See Also
--
-- StructureType, ValidationFeatureDisableEXT,
-- ValidationFeatureEnableEXT
data ValidationFeaturesEXT
ValidationFeaturesEXT :: Vector ValidationFeatureEnableEXT -> Vector ValidationFeatureDisableEXT -> ValidationFeaturesEXT
-- | pEnabledValidationFeatures is a pointer to an array of
-- ValidationFeatureEnableEXT values specifying the validation
-- features to be enabled.
[$sel:enabledValidationFeatures:ValidationFeaturesEXT] :: ValidationFeaturesEXT -> Vector ValidationFeatureEnableEXT
-- | pDisabledValidationFeatures is a pointer to an array of
-- ValidationFeatureDisableEXT values specifying the validation
-- features to be disabled.
[$sel:disabledValidationFeatures:ValidationFeaturesEXT] :: ValidationFeaturesEXT -> Vector ValidationFeatureDisableEXT
-- | VkValidationFeatureEnableEXT - Specify validation features to enable
--
-- See Also
--
-- ValidationFeaturesEXT
newtype ValidationFeatureEnableEXT
ValidationFeatureEnableEXT :: Int32 -> ValidationFeatureEnableEXT
-- | VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT specifies that
-- GPU-assisted validation is enabled. Activating this feature
-- instruments shader programs to generate additional diagnostic data.
-- This feature is disabled by default.
pattern VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT :: ValidationFeatureEnableEXT
-- | VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT
-- specifies that the validation layers reserve a descriptor set binding
-- slot for their own use. The layer reports a value for
-- PhysicalDeviceLimits::maxBoundDescriptorSets that is
-- one less than the value reported by the device. If the device supports
-- the binding of only one descriptor set, the validation layer does not
-- perform GPU-assisted validation. This feature is disabled by default.
pattern VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT :: ValidationFeatureEnableEXT
-- | VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT specifies that
-- Vulkan best-practices validation is enabled. Activating this feature
-- enables the output of warnings related to common misuse of the API,
-- but which are not explicitly prohibited by the specification. This
-- feature is disabled by default.
pattern VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT :: ValidationFeatureEnableEXT
-- | VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT specifies that the
-- layers will process debugPrintfEXT operations in shaders and
-- send the resulting output to the debug callback. This feature is
-- disabled by default.
pattern VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT :: ValidationFeatureEnableEXT
-- | VkValidationFeatureDisableEXT - Specify validation features to disable
--
-- See Also
--
-- ValidationFeaturesEXT
newtype ValidationFeatureDisableEXT
ValidationFeatureDisableEXT :: Int32 -> ValidationFeatureDisableEXT
-- | VALIDATION_FEATURE_DISABLE_ALL_EXT specifies that all
-- validation checks are disabled.
pattern VALIDATION_FEATURE_DISABLE_ALL_EXT :: ValidationFeatureDisableEXT
-- | VALIDATION_FEATURE_DISABLE_SHADERS_EXT specifies that shader
-- validation is disabled. This feature is enabled by default.
pattern VALIDATION_FEATURE_DISABLE_SHADERS_EXT :: ValidationFeatureDisableEXT
-- | 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
-- | 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
-- | 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
-- | 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
-- | 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
type EXT_VALIDATION_FEATURES_SPEC_VERSION = 3
pattern EXT_VALIDATION_FEATURES_SPEC_VERSION :: forall a. Integral a => a
type EXT_VALIDATION_FEATURES_EXTENSION_NAME = "VK_EXT_validation_features"
pattern EXT_VALIDATION_FEATURES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureDisableEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureDisableEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureDisableEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureDisableEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureEnableEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureEnableEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureEnableEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureEnableEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_validation_features.ValidationFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_features.ValidationFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_validation_features.ValidationFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_validation_features.ValidationFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_features.ValidationFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureDisableEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureDisableEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureEnableEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_validation_features.ValidationFeatureEnableEXT
module Vulkan.Extensions.VK_EXT_pci_bus_info
-- | VkPhysicalDevicePCIBusInfoPropertiesEXT - Structure containing PCI bus
-- information of a physical device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDevicePCIBusInfoPropertiesEXT
PhysicalDevicePCIBusInfoPropertiesEXT :: Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDevicePCIBusInfoPropertiesEXT
-- | pciDomain is the PCI bus domain.
[$sel:pciDomain:PhysicalDevicePCIBusInfoPropertiesEXT] :: PhysicalDevicePCIBusInfoPropertiesEXT -> Word32
-- | pciBus is the PCI bus identifier.
[$sel:pciBus:PhysicalDevicePCIBusInfoPropertiesEXT] :: PhysicalDevicePCIBusInfoPropertiesEXT -> Word32
-- | pciDevice is the PCI device identifier.
[$sel:pciDevice:PhysicalDevicePCIBusInfoPropertiesEXT] :: PhysicalDevicePCIBusInfoPropertiesEXT -> Word32
-- | pciFunction is the PCI device function identifier.
[$sel:pciFunction:PhysicalDevicePCIBusInfoPropertiesEXT] :: PhysicalDevicePCIBusInfoPropertiesEXT -> Word32
type EXT_PCI_BUS_INFO_SPEC_VERSION = 2
pattern EXT_PCI_BUS_INFO_SPEC_VERSION :: forall a. Integral a => a
type EXT_PCI_BUS_INFO_EXTENSION_NAME = "VK_EXT_pci_bus_info"
pattern EXT_PCI_BUS_INFO_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_pci_bus_info.PhysicalDevicePCIBusInfoPropertiesEXT
module Vulkan.Extensions.VK_EXT_global_priority
-- | VkDeviceQueueGlobalPriorityCreateInfoEXT - Specify a system wide
-- priority
--
-- Description
--
-- A queue created without specifying
-- DeviceQueueGlobalPriorityCreateInfoEXT will default to
-- QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- QueueGlobalPriorityEXT, StructureType
data DeviceQueueGlobalPriorityCreateInfoEXT
DeviceQueueGlobalPriorityCreateInfoEXT :: QueueGlobalPriorityEXT -> DeviceQueueGlobalPriorityCreateInfoEXT
-- | globalPriority is the system-wide priority associated to this
-- queue as specified by QueueGlobalPriorityEXT
--
-- globalPriority must be a valid
-- QueueGlobalPriorityEXT value
[$sel:globalPriority:DeviceQueueGlobalPriorityCreateInfoEXT] :: DeviceQueueGlobalPriorityCreateInfoEXT -> QueueGlobalPriorityEXT
-- | VkQueueGlobalPriorityEXT - Values specifying a system-wide queue
-- priority
--
-- Description
--
-- Priority values are sorted in ascending order. A comparison operation
-- on the enum values can be used to determine the priority order.
--
-- See Also
--
-- DeviceQueueGlobalPriorityCreateInfoEXT
newtype QueueGlobalPriorityEXT
QueueGlobalPriorityEXT :: Int32 -> QueueGlobalPriorityEXT
-- | QUEUE_GLOBAL_PRIORITY_LOW_EXT is below the system default.
-- Useful for non-interactive tasks.
pattern QUEUE_GLOBAL_PRIORITY_LOW_EXT :: QueueGlobalPriorityEXT
-- | QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT is the system default
-- priority.
pattern QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT :: QueueGlobalPriorityEXT
-- | QUEUE_GLOBAL_PRIORITY_HIGH_EXT is above the system default.
pattern QUEUE_GLOBAL_PRIORITY_HIGH_EXT :: QueueGlobalPriorityEXT
-- | QUEUE_GLOBAL_PRIORITY_REALTIME_EXT is the highest priority.
-- Useful for critical tasks.
pattern QUEUE_GLOBAL_PRIORITY_REALTIME_EXT :: QueueGlobalPriorityEXT
type EXT_GLOBAL_PRIORITY_SPEC_VERSION = 2
pattern EXT_GLOBAL_PRIORITY_SPEC_VERSION :: forall a. Integral a => a
type EXT_GLOBAL_PRIORITY_EXTENSION_NAME = "VK_EXT_global_priority"
pattern EXT_GLOBAL_PRIORITY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_global_priority.DeviceQueueGlobalPriorityCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_global_priority.QueueGlobalPriorityEXT
module Vulkan.Extensions.VK_AMD_shader_core_properties
-- | VkPhysicalDeviceShaderCorePropertiesAMD - Structure describing shader
-- core properties that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceShaderCorePropertiesAMD
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceShaderCorePropertiesAMD structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceShaderCorePropertiesAMD
PhysicalDeviceShaderCorePropertiesAMD :: Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDeviceShaderCorePropertiesAMD
-- | shaderEngineCount is an unsigned integer value indicating the
-- number of shader engines found inside the shader core of the physical
-- device.
[$sel:shaderEngineCount:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | shaderArraysPerEngineCount is an unsigned integer value
-- indicating the number of shader arrays inside a shader engine. Each
-- shader array has its own scan converter, set of compute units, and a
-- render back end (color and depth buffers). Shader arrays within a
-- shader engine share shader processor input (wave launcher) and shader
-- export (export buffer) units. Currently, a shader engine can have one
-- or two shader arrays.
[$sel:shaderArraysPerEngineCount:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | computeUnitsPerShaderArray is an unsigned integer value
-- indicating the physical number of compute units within a shader array.
-- The active number of compute units in a shader array may be
-- lower. A compute unit houses a set of SIMDs along with a sequencer
-- module and a local data store.
[$sel:computeUnitsPerShaderArray:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | simdPerComputeUnit is an unsigned integer value indicating
-- the number of SIMDs inside a compute unit. Each SIMD processes a
-- single instruction at a time.
[$sel:simdPerComputeUnit:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
[$sel:wavefrontsPerSimd:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | wavefrontSize is an unsigned integer value indicating the
-- maximum size of a subgroup.
[$sel:wavefrontSize:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | sgprsPerSimd is an unsigned integer value indicating the
-- number of physical Scalar General Purpose Registers (SGPRs) per SIMD.
[$sel:sgprsPerSimd:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | minSgprAllocation is an unsigned integer value indicating the
-- minimum number of SGPRs allocated for a wave.
[$sel:minSgprAllocation:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | maxSgprAllocation is an unsigned integer value indicating the
-- maximum number of SGPRs allocated for a wave.
[$sel:maxSgprAllocation:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | sgprAllocationGranularity is an unsigned integer value
-- indicating the granularity of SGPR allocation for a wave.
[$sel:sgprAllocationGranularity:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | vgprsPerSimd is an unsigned integer value indicating the
-- number of physical Vector General Purpose Registers (VGPRs) per SIMD.
[$sel:vgprsPerSimd:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | minVgprAllocation is an unsigned integer value indicating the
-- minimum number of VGPRs allocated for a wave.
[$sel:minVgprAllocation:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | maxVgprAllocation is an unsigned integer value indicating the
-- maximum number of VGPRs allocated for a wave.
[$sel:maxVgprAllocation:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
-- | vgprAllocationGranularity is an unsigned integer value
-- indicating the granularity of VGPR allocation for a wave.
[$sel:vgprAllocationGranularity:PhysicalDeviceShaderCorePropertiesAMD] :: PhysicalDeviceShaderCorePropertiesAMD -> Word32
type AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION = 2
pattern AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME = "VK_AMD_shader_core_properties"
pattern AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_shader_core_properties.PhysicalDeviceShaderCorePropertiesAMD
module Vulkan.Extensions.VK_AMD_rasterization_order
-- | VkPipelineRasterizationStateRasterizationOrderAMD - Structure defining
-- rasterization order for a graphics pipeline
--
-- Valid Usage (Implicit)
--
-- If the VK_AMD_rasterization_order device extension is not
-- enabled or the application does not request a particular rasterization
-- order through specifying a
-- PipelineRasterizationStateRasterizationOrderAMD structure then
-- the rasterization order used by the graphics pipeline defaults to
-- RASTERIZATION_ORDER_STRICT_AMD.
--
-- See Also
--
-- RasterizationOrderAMD, StructureType
data PipelineRasterizationStateRasterizationOrderAMD
PipelineRasterizationStateRasterizationOrderAMD :: RasterizationOrderAMD -> PipelineRasterizationStateRasterizationOrderAMD
-- | rasterizationOrder is a RasterizationOrderAMD value
-- specifying the primitive rasterization order to use.
--
-- rasterizationOrder must be a valid
-- RasterizationOrderAMD value
[$sel:rasterizationOrder:PipelineRasterizationStateRasterizationOrderAMD] :: PipelineRasterizationStateRasterizationOrderAMD -> RasterizationOrderAMD
-- | VkRasterizationOrderAMD - Specify rasterization order for a graphics
-- pipeline
--
-- See Also
--
-- PipelineRasterizationStateRasterizationOrderAMD
newtype RasterizationOrderAMD
RasterizationOrderAMD :: Int32 -> RasterizationOrderAMD
-- | RASTERIZATION_ORDER_STRICT_AMD specifies that operations for
-- each primitive in a subpass must occur in primitive
-- order.
pattern RASTERIZATION_ORDER_STRICT_AMD :: RasterizationOrderAMD
-- | RASTERIZATION_ORDER_RELAXED_AMD specifies that operations for
-- each primitive in a subpass may not occur in primitive
-- order.
pattern RASTERIZATION_ORDER_RELAXED_AMD :: RasterizationOrderAMD
type AMD_RASTERIZATION_ORDER_SPEC_VERSION = 1
pattern AMD_RASTERIZATION_ORDER_SPEC_VERSION :: forall a. Integral a => a
type AMD_RASTERIZATION_ORDER_EXTENSION_NAME = "VK_AMD_rasterization_order"
pattern AMD_RASTERIZATION_ORDER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_rasterization_order.RasterizationOrderAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_rasterization_order.RasterizationOrderAMD
instance GHC.Classes.Ord Vulkan.Extensions.VK_AMD_rasterization_order.RasterizationOrderAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_rasterization_order.RasterizationOrderAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_rasterization_order.PipelineRasterizationStateRasterizationOrderAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_rasterization_order.RasterizationOrderAMD
instance GHC.Read.Read Vulkan.Extensions.VK_AMD_rasterization_order.RasterizationOrderAMD
module Vulkan.Extensions.VK_AMD_memory_overallocation_behavior
-- | VkDeviceMemoryOverallocationCreateInfoAMD - Specify memory
-- overallocation behavior for a Vulkan device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- MemoryOverallocationBehaviorAMD, StructureType
data DeviceMemoryOverallocationCreateInfoAMD
DeviceMemoryOverallocationCreateInfoAMD :: MemoryOverallocationBehaviorAMD -> DeviceMemoryOverallocationCreateInfoAMD
-- | overallocationBehavior is the desired overallocation
-- behavior.
--
-- overallocationBehavior must be a valid
-- MemoryOverallocationBehaviorAMD value
[$sel:overallocationBehavior:DeviceMemoryOverallocationCreateInfoAMD] :: DeviceMemoryOverallocationCreateInfoAMD -> MemoryOverallocationBehaviorAMD
-- | VkMemoryOverallocationBehaviorAMD - Specify memory overallocation
-- behavior
--
-- See Also
--
-- DeviceMemoryOverallocationCreateInfoAMD
newtype MemoryOverallocationBehaviorAMD
MemoryOverallocationBehaviorAMD :: Int32 -> MemoryOverallocationBehaviorAMD
-- | MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD lets the
-- implementation decide if overallocation is allowed.
pattern MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD :: MemoryOverallocationBehaviorAMD
-- | MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD specifies
-- overallocation is allowed if platform permits.
pattern MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD :: MemoryOverallocationBehaviorAMD
-- | MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD specifies the
-- application is not allowed to allocate device memory beyond the heap
-- sizes reported by PhysicalDeviceMemoryProperties. Allocations
-- that are not explicitly made by the application within the scope of
-- the Vulkan instance are not accounted for.
pattern MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD :: MemoryOverallocationBehaviorAMD
type AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION = 1
pattern AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION :: forall a. Integral a => a
type AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME = "VK_AMD_memory_overallocation_behavior"
pattern AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.MemoryOverallocationBehaviorAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.MemoryOverallocationBehaviorAMD
instance GHC.Classes.Ord Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.MemoryOverallocationBehaviorAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.MemoryOverallocationBehaviorAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.DeviceMemoryOverallocationCreateInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.MemoryOverallocationBehaviorAMD
instance GHC.Read.Read Vulkan.Extensions.VK_AMD_memory_overallocation_behavior.MemoryOverallocationBehaviorAMD
module Vulkan.Core10.Enums.StencilOp
-- | VkStencilOp - Stencil comparison function
--
-- Description
--
-- For purposes of increment and decrement, the stencil bits are
-- considered as an unsigned integer.
--
-- See Also
--
-- StencilOpState
newtype StencilOp
StencilOp :: Int32 -> StencilOp
-- | STENCIL_OP_KEEP keeps the current value.
pattern STENCIL_OP_KEEP :: StencilOp
-- | STENCIL_OP_ZERO sets the value to 0.
pattern STENCIL_OP_ZERO :: StencilOp
-- | STENCIL_OP_REPLACE sets the value to reference.
pattern STENCIL_OP_REPLACE :: StencilOp
-- | STENCIL_OP_INCREMENT_AND_CLAMP increments the current value and
-- clamps to the maximum representable unsigned value.
pattern STENCIL_OP_INCREMENT_AND_CLAMP :: StencilOp
-- | STENCIL_OP_DECREMENT_AND_CLAMP decrements the current value and
-- clamps to 0.
pattern STENCIL_OP_DECREMENT_AND_CLAMP :: StencilOp
-- | STENCIL_OP_INVERT bitwise-inverts the current value.
pattern STENCIL_OP_INVERT :: StencilOp
-- | STENCIL_OP_INCREMENT_AND_WRAP increments the current value and
-- wraps to 0 when the maximum value would have been exceeded.
pattern STENCIL_OP_INCREMENT_AND_WRAP :: StencilOp
-- | STENCIL_OP_DECREMENT_AND_WRAP decrements the current value and
-- wraps to the maximum possible value when the value would go below 0.
pattern STENCIL_OP_DECREMENT_AND_WRAP :: StencilOp
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.StencilOp.StencilOp
instance Foreign.Storable.Storable Vulkan.Core10.Enums.StencilOp.StencilOp
instance GHC.Classes.Ord Vulkan.Core10.Enums.StencilOp.StencilOp
instance GHC.Classes.Eq Vulkan.Core10.Enums.StencilOp.StencilOp
instance GHC.Show.Show Vulkan.Core10.Enums.StencilOp.StencilOp
instance GHC.Read.Read Vulkan.Core10.Enums.StencilOp.StencilOp
module Vulkan.Core10.Enums.SharingMode
-- | VkSharingMode - Buffer and image sharing modes
--
-- Description
--
-- Note
--
-- SHARING_MODE_CONCURRENT may result in lower performance
-- access to the buffer or image than SHARING_MODE_EXCLUSIVE.
--
-- Ranges of buffers and image subresources of image objects created
-- using SHARING_MODE_EXCLUSIVE must only be accessed by
-- queues in the queue family that has ownership of the resource.
-- Upon creation, such resources are not owned by any queue family;
-- ownership is implicitly acquired upon first use within a queue. Once a
-- resource using SHARING_MODE_EXCLUSIVE is owned by some queue
-- family, the application must perform a queue family
-- ownership transfer to make the memory contents of a range or image
-- subresource accessible to a different queue family.
--
-- Note
--
-- Images still require a layout transition from
-- IMAGE_LAYOUT_UNDEFINED or IMAGE_LAYOUT_PREINITIALIZED
-- before being used on the first queue.
--
-- A queue family can take ownership of an image subresource or
-- buffer range of a resource created with SHARING_MODE_EXCLUSIVE,
-- without an ownership transfer, in the same way as for a resource that
-- was just created; however, taking ownership in this way has the effect
-- that the contents of the image subresource or buffer range are
-- undefined.
--
-- Ranges of buffers and image subresources of image objects created
-- using SHARING_MODE_CONCURRENT must only be accessed by
-- queues from the queue families specified through the
-- queueFamilyIndexCount and pQueueFamilyIndices
-- members of the corresponding create info structures.
--
-- See Also
--
-- BufferCreateInfo, ImageCreateInfo,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- SwapchainCreateInfoKHR
newtype SharingMode
SharingMode :: Int32 -> SharingMode
-- | SHARING_MODE_EXCLUSIVE specifies that access to any range or
-- image subresource of the object will be exclusive to a single queue
-- family at a time.
pattern SHARING_MODE_EXCLUSIVE :: SharingMode
-- | SHARING_MODE_CONCURRENT specifies that concurrent access to any
-- range or image subresource of the object from multiple queue families
-- is supported.
pattern SHARING_MODE_CONCURRENT :: SharingMode
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SharingMode.SharingMode
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SharingMode.SharingMode
instance GHC.Classes.Ord Vulkan.Core10.Enums.SharingMode.SharingMode
instance GHC.Classes.Eq Vulkan.Core10.Enums.SharingMode.SharingMode
instance GHC.Show.Show Vulkan.Core10.Enums.SharingMode.SharingMode
instance GHC.Read.Read Vulkan.Core10.Enums.SharingMode.SharingMode
module Vulkan.Core10.Enums.SamplerMipmapMode
-- | VkSamplerMipmapMode - Specify mipmap mode used for texture lookups
--
-- Description
--
-- These modes are described in detail in Texel Filtering.
--
-- See Also
--
-- SamplerCreateInfo
newtype SamplerMipmapMode
SamplerMipmapMode :: Int32 -> SamplerMipmapMode
-- | SAMPLER_MIPMAP_MODE_NEAREST specifies nearest filtering.
pattern SAMPLER_MIPMAP_MODE_NEAREST :: SamplerMipmapMode
-- | SAMPLER_MIPMAP_MODE_LINEAR specifies linear filtering.
pattern SAMPLER_MIPMAP_MODE_LINEAR :: SamplerMipmapMode
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SamplerMipmapMode.SamplerMipmapMode
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SamplerMipmapMode.SamplerMipmapMode
instance GHC.Classes.Ord Vulkan.Core10.Enums.SamplerMipmapMode.SamplerMipmapMode
instance GHC.Classes.Eq Vulkan.Core10.Enums.SamplerMipmapMode.SamplerMipmapMode
instance GHC.Show.Show Vulkan.Core10.Enums.SamplerMipmapMode.SamplerMipmapMode
instance GHC.Read.Read Vulkan.Core10.Enums.SamplerMipmapMode.SamplerMipmapMode
module Vulkan.Core10.Enums.SamplerAddressMode
-- | VkSamplerAddressMode - Specify behavior of sampling with texture
-- coordinates outside an image
--
-- See Also
--
-- SamplerCreateInfo
newtype SamplerAddressMode
SamplerAddressMode :: Int32 -> SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_REPEAT specifies that the repeat wrap mode
-- will be used.
pattern SAMPLER_ADDRESS_MODE_REPEAT :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT specifies that the
-- mirrored repeat wrap mode will be used.
pattern SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE specifies that the clamp to
-- edge wrap mode will be used.
pattern SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER specifies that the clamp
-- to border wrap mode will be used.
pattern SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE specifies that the
-- mirror clamp to edge wrap mode will be used. This is only valid if
-- samplerMirrorClampToEdge is enabled, or if the
-- VK_KHR_sampler_mirror_clamp_to_edge extension is enabled.
pattern SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE :: SamplerAddressMode
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SamplerAddressMode.SamplerAddressMode
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SamplerAddressMode.SamplerAddressMode
instance GHC.Classes.Ord Vulkan.Core10.Enums.SamplerAddressMode.SamplerAddressMode
instance GHC.Classes.Eq Vulkan.Core10.Enums.SamplerAddressMode.SamplerAddressMode
instance GHC.Show.Show Vulkan.Core10.Enums.SamplerAddressMode.SamplerAddressMode
instance GHC.Read.Read Vulkan.Core10.Enums.SamplerAddressMode.SamplerAddressMode
module Vulkan.Extensions.VK_KHR_sampler_mirror_clamp_to_edge
pattern SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR :: SamplerAddressMode
type KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION = 3
pattern KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION :: forall a. Integral a => a
type KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME = "VK_KHR_sampler_mirror_clamp_to_edge"
pattern KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.Result
-- | VkResult - Vulkan command return codes
--
-- Description
--
-- If a command returns a runtime error, unless otherwise specified any
-- output parameters will have undefined contents, except that if the
-- output parameter is a structure with sType and pNext
-- fields, those fields will be unmodified. Any structures chained from
-- pNext will also have undefined contents, except that
-- sType and pNext will be unmodified.
--
-- Out of memory errors do not damage any currently existing Vulkan
-- objects. Objects that have already been successfully created
-- can still be used by the application.
--
-- ERROR_UNKNOWN will be returned by an implementation when an
-- unexpected error occurs that cannot be attributed to valid behavior of
-- the application and implementation. Under these conditions, it
-- may be returned from any command returning a Result.
--
-- Note
--
-- ERROR_UNKNOWN is not expected to ever be returned if the
-- application behavior is valid, and if the implementation is bug-free.
-- If ERROR_UNKNOWN is received, the application should be checked
-- against the latest validation layers to verify correct behavior as
-- much as possible. If no issues are identified it could be an
-- implementation issue, and the implementor should be contacted for
-- support.
--
-- Performance-critical commands generally do not have return codes. If a
-- runtime error occurs in such commands, the implementation will defer
-- reporting the error until a specified point. For commands that record
-- into command buffers (vkCmd*) runtime errors are reported by
-- endCommandBuffer.
--
-- See Also
--
-- PresentInfoKHR
newtype Result
Result :: Int32 -> Result
-- | SUCCESS Command successfully completed
pattern SUCCESS :: Result
-- | NOT_READY A fence or query has not yet completed
pattern NOT_READY :: Result
-- | TIMEOUT A wait operation has not completed in the specified
-- time
pattern TIMEOUT :: Result
-- | EVENT_SET An event is signaled
pattern EVENT_SET :: Result
-- | EVENT_RESET An event is unsignaled
pattern EVENT_RESET :: Result
-- | INCOMPLETE A return array was too small for the result
pattern INCOMPLETE :: Result
-- | ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
pattern ERROR_OUT_OF_HOST_MEMORY :: Result
-- | ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has
-- failed.
pattern ERROR_OUT_OF_DEVICE_MEMORY :: Result
-- | ERROR_INITIALIZATION_FAILED Initialization of an object could
-- not be completed for implementation-specific reasons.
pattern ERROR_INITIALIZATION_FAILED :: Result
-- | ERROR_DEVICE_LOST The logical or physical device has been lost.
-- See Lost Device
pattern ERROR_DEVICE_LOST :: Result
-- | ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
pattern ERROR_MEMORY_MAP_FAILED :: Result
-- | ERROR_LAYER_NOT_PRESENT A requested layer is not present or
-- could not be loaded.
pattern ERROR_LAYER_NOT_PRESENT :: Result
-- | ERROR_EXTENSION_NOT_PRESENT A requested extension is not
-- supported.
pattern ERROR_EXTENSION_NOT_PRESENT :: Result
-- | ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
pattern ERROR_FEATURE_NOT_PRESENT :: Result
-- | ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is
-- not supported by the driver or is otherwise incompatible for
-- implementation-specific reasons.
pattern ERROR_INCOMPATIBLE_DRIVER :: Result
-- | ERROR_TOO_MANY_OBJECTS Too many objects of the type have
-- already been created.
pattern ERROR_TOO_MANY_OBJECTS :: Result
-- | ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported
-- on this device.
pattern ERROR_FORMAT_NOT_SUPPORTED :: Result
-- | ERROR_FRAGMENTED_POOL A pool allocation has failed due to
-- fragmentation of the pool’s memory. This must only be returned
-- if no attempt to allocate host or device memory was made to
-- accommodate the new allocation. This should be returned in
-- preference to ERROR_OUT_OF_POOL_MEMORY, but only if the
-- implementation is certain that the pool allocation failure was due to
-- fragmentation.
pattern ERROR_FRAGMENTED_POOL :: Result
-- | ERROR_UNKNOWN An unknown error has occurred; either the
-- application has provided invalid input, or an implementation failure
-- has occurred.
pattern ERROR_UNKNOWN :: Result
-- | PIPELINE_COMPILE_REQUIRED_EXT A requested pipeline creation
-- would have required compilation, but the application requested
-- compilation to not be performed.
pattern PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | OPERATION_NOT_DEFERRED_KHR A deferred operation was requested
-- and no operations were deferred.
pattern OPERATION_NOT_DEFERRED_KHR :: Result
-- | OPERATION_DEFERRED_KHR A deferred operation was requested and
-- at least some of the work was deferred.
pattern OPERATION_DEFERRED_KHR :: Result
-- | THREAD_DONE_KHR A deferred operation is not complete but there
-- is no work remaining to assign to additional threads.
pattern THREAD_DONE_KHR :: Result
-- | THREAD_IDLE_KHR A deferred operation is not complete but there
-- is currently no work for this thread to do at the time of this call.
pattern THREAD_IDLE_KHR :: Result
-- | ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a
-- swapchain created with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it
-- did not have exlusive full-screen access. This may occur due to
-- implementation-dependent reasons, outside of the application’s
-- control.
pattern ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: Result
pattern ERROR_NOT_PERMITTED_EXT :: Result
pattern ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: Result
pattern ERROR_INCOMPATIBLE_VERSION_KHR :: Result
-- | ERROR_INVALID_SHADER_NV One or more shaders failed to compile
-- or link. More details are reported back to the application via
-- VK_EXT_debug_report if enabled.
pattern ERROR_INVALID_SHADER_NV :: Result
pattern ERROR_VALIDATION_FAILED_EXT :: Result
-- | ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain
-- does not use the same presentable image layout, or is incompatible in
-- a way that prevents sharing an image.
pattern ERROR_INCOMPATIBLE_DISPLAY_KHR :: Result
-- | ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that
-- it is no longer compatible with the swapchain, and further
-- presentation requests using the swapchain will fail. Applications
-- must query the new surface properties and recreate their
-- swapchain if they wish to continue presenting to the surface.
pattern ERROR_OUT_OF_DATE_KHR :: Result
-- | SUBOPTIMAL_KHR A swapchain no longer matches the surface
-- properties exactly, but can still be used to present to the
-- surface successfully.
pattern SUBOPTIMAL_KHR :: Result
-- | ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already
-- in use by Vulkan or another API in a manner which prevents it from
-- being used again.
pattern ERROR_NATIVE_WINDOW_IN_USE_KHR :: Result
-- | ERROR_SURFACE_LOST_KHR A surface is no longer available.
pattern ERROR_SURFACE_LOST_KHR :: Result
-- | ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or
-- memory allocation failed because the requested address is not
-- available. A shader group handle assignment failed because the
-- requested shader group handle information is no longer valid.
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: Result
-- | ERROR_FRAGMENTATION A descriptor pool creation has failed due
-- to fragmentation.
pattern ERROR_FRAGMENTATION :: Result
-- | ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid
-- handle of the specified type.
pattern ERROR_INVALID_EXTERNAL_HANDLE :: Result
-- | ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed.
-- This must only be returned if no attempt to allocate host or
-- device memory was made to accommodate the new allocation. If the
-- failure was definitely due to fragmentation of the pool,
-- ERROR_FRAGMENTED_POOL should be returned instead.
pattern ERROR_OUT_OF_POOL_MEMORY :: Result
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.Result.Result
instance Foreign.Storable.Storable Vulkan.Core10.Enums.Result.Result
instance GHC.Classes.Ord Vulkan.Core10.Enums.Result.Result
instance GHC.Classes.Eq Vulkan.Core10.Enums.Result.Result
instance GHC.Show.Show Vulkan.Core10.Enums.Result.Result
instance GHC.Read.Read Vulkan.Core10.Enums.Result.Result
module Vulkan.Exception
-- | This exception is thrown from calls to marshalled Vulkan commands
-- which return a negative VkResult.
newtype VulkanException
VulkanException :: Result -> VulkanException
[$sel:vulkanExceptionResult:VulkanException] :: VulkanException -> Result
instance GHC.Show.Show Vulkan.Exception.VulkanException
instance GHC.Read.Read Vulkan.Exception.VulkanException
instance GHC.Classes.Ord Vulkan.Exception.VulkanException
instance GHC.Classes.Eq Vulkan.Exception.VulkanException
instance GHC.Exception.Type.Exception Vulkan.Exception.VulkanException
module Vulkan.Core10.FundamentalTypes
boolToBool32 :: Bool -> Bool32
bool32ToBool :: Bool32 -> Bool
-- | VkOffset2D - Structure specifying a two-dimensional offset
--
-- See Also
--
-- DisplayPlaneCapabilitiesKHR, Rect2D, RectLayerKHR
data Offset2D
Offset2D :: Int32 -> Int32 -> Offset2D
-- | x is the x offset.
[$sel:x:Offset2D] :: Offset2D -> Int32
-- | y is the y offset.
[$sel:y:Offset2D] :: Offset2D -> Int32
-- | VkOffset3D - Structure specifying a three-dimensional offset
--
-- See Also
--
-- BufferImageCopy, ImageBlit, ImageCopy,
-- ImageResolve, SparseImageMemoryBind
data Offset3D
Offset3D :: Int32 -> Int32 -> Int32 -> Offset3D
-- | x is the x offset.
[$sel:x:Offset3D] :: Offset3D -> Int32
-- | y is the y offset.
[$sel:y:Offset3D] :: Offset3D -> Int32
-- | z is the z offset.
[$sel:z:Offset3D] :: Offset3D -> Int32
-- | VkExtent2D - Structure specifying a two-dimensional extent
--
-- See Also
--
-- DisplayModeParametersKHR, DisplayPlaneCapabilitiesKHR,
-- DisplayPropertiesKHR, DisplaySurfaceCreateInfoKHR,
-- MultisamplePropertiesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceShadingRateImagePropertiesNV, Rect2D,
-- RectLayerKHR, SampleLocationsInfoEXT,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SwapchainCreateInfoKHR, getRenderAreaGranularity
data Extent2D
Extent2D :: Word32 -> Word32 -> Extent2D
-- | width is the width of the extent.
[$sel:width:Extent2D] :: Extent2D -> Word32
-- | height is the height of the extent.
[$sel:height:Extent2D] :: Extent2D -> Word32
-- | VkExtent3D - Structure specifying a three-dimensional extent
--
-- See Also
--
-- BufferImageCopy, ImageCopy, ImageCreateInfo,
-- ImageFormatProperties, ImageResolve,
-- QueueFamilyProperties, SparseImageFormatProperties,
-- SparseImageMemoryBind
data Extent3D
Extent3D :: Word32 -> Word32 -> Word32 -> Extent3D
-- | width is the width of the extent.
[$sel:width:Extent3D] :: Extent3D -> Word32
-- | height is the height of the extent.
[$sel:height:Extent3D] :: Extent3D -> Word32
-- | depth is the depth of the extent.
[$sel:depth:Extent3D] :: Extent3D -> Word32
-- | VkRect2D - Structure specifying a two-dimensional subregion
--
-- See Also
--
-- BindImageMemoryDeviceGroupInfo, ClearRect,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DeviceGroupRenderPassBeginInfo, DisplayPresentInfoKHR,
-- Extent2D, Offset2D,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportStateCreateInfo, RenderPassBeginInfo,
-- cmdSetDiscardRectangleEXT, cmdSetExclusiveScissorNV,
-- cmdSetScissor, getPhysicalDevicePresentRectanglesKHR
data Rect2D
Rect2D :: Offset2D -> Extent2D -> Rect2D
-- | offset is a Offset2D specifying the rectangle offset.
[$sel:offset:Rect2D] :: Rect2D -> Offset2D
-- | extent is a Extent2D specifying the rectangle extent.
[$sel:extent:Rect2D] :: Rect2D -> Extent2D
-- | VkBool32 - Vulkan boolean type
--
-- Description
--
-- TRUE represents a boolean True (integer 1) value, and
-- FALSE a boolean False (integer 0) value.
--
-- All values returned from a Vulkan implementation in a Bool32
-- will be either TRUE or FALSE.
--
-- Applications must not pass any other values than TRUE or
-- FALSE into a Vulkan implementation where a Bool32 is
-- expected.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DescriptorSetLayoutSupport,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPresentInfoKHR, DisplayPropertiesKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- IndirectCommandsLayoutTokenNV,
-- MemoryDedicatedRequirements,
-- PerformanceOverrideInfoINTEL, PerformanceValueDataINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceFeatures,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceLimits,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceSparseProperties,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendAttachmentState,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutableStatisticValueKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- ProtectedSubmitInfo, SamplerCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceProtectedCapabilitiesKHR, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- cmdBuildAccelerationStructureNV,
-- cmdExecuteGeneratedCommandsNV,
-- getPhysicalDeviceSurfaceSupportKHR, setLocalDimmingAMD,
-- waitForFences
newtype Bool32
Bool32 :: Int32 -> Bool32
pattern FALSE :: Bool32
pattern TRUE :: Bool32
-- | VkSampleMask - Mask of sample coverage information
--
-- See Also
--
-- PipelineMultisampleStateCreateInfo
type SampleMask = Word32
-- | VkFlags - Vulkan bitmasks
--
-- Description
--
-- Bitmasks are passed to many commands and structures to compactly
-- represent options, but Flags is not used directly in the API.
-- Instead, a Vk*Flags type which is an alias of Flags,
-- and whose name matches the corresponding Vk*FlagBits that are
-- valid for that type, is used.
--
-- Any Vk*Flags member or parameter used in the API as an input
-- must be a valid combination of bit flags. A valid combination
-- is either zero or the bitwise OR of valid bit flags. A bit flag is
-- valid if:
--
--
-- - The bit flag is defined as part of the Vk*FlagBits type,
-- where the bits type is obtained by taking the flag type and replacing
-- the trailing Flags with FlagBits. For example, a flag
-- value of type ColorComponentFlags must contain only bit
-- flags defined by ColorComponentFlagBits.
-- - The flag is allowed in the context in which it is being used. For
-- example, in some cases, certain bit flags or combinations of bit flags
-- are mutually exclusive.
--
--
-- Any Vk*Flags member or parameter returned from a query
-- command or otherwise output from Vulkan to the application may
-- contain bit flags undefined in its corresponding Vk*FlagBits
-- type. An application cannot rely on the state of these
-- unspecified bits.
--
-- Only the low-order 31 bits (bit positions zero through 30) are
-- available for use as flag bits.
--
-- Note
--
-- This restriction is due to poorly defined behavior by C compilers
-- given a C enumerant value of 0x80000000. In some cases adding
-- this enumerant value may increase the size of the underlying
-- Vk*FlagBits type, breaking the ABI.
--
-- See Also
--
-- ColorComponentFlags
type Flags = Word32
-- | VkDeviceSize - Vulkan device memory size and offsets
--
-- See Also
--
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AndroidHardwareBufferPropertiesANDROID,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryInfo, BindImageMemoryInfo,
-- BufferCopy, BufferCreateInfo, BufferImageCopy,
-- BufferMemoryBarrier, BufferViewCreateInfo,
-- ConditionalRenderingBeginInfoEXT, DescriptorBufferInfo,
-- GeneratedCommandsInfoNV, GeometryAABBNV,
-- GeometryTrianglesNV, ImageFormatProperties,
-- ImageViewAddressPropertiesNVX, IndirectCommandsStreamNV,
-- MappedMemoryRange, MemoryAllocateInfo,
-- MemoryHeap, MemoryRequirements,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceLimits,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceVulkan11Properties, SparseImageMemoryBind,
-- SparseImageMemoryRequirements, SparseMemoryBind,
-- StridedBufferRegionKHR, SubresourceLayout,
-- bindBufferMemory, bindImageMemory,
-- cmdBeginTransformFeedbackEXT, cmdBindIndexBuffer,
-- cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureNV,
-- cmdCopyQueryPoolResults, cmdDispatchIndirect,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdEndTransformFeedbackEXT,
-- cmdFillBuffer, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWriteBufferMarkerAMD, getDeviceMemoryCommitment,
-- getQueryPoolResults, mapMemory
type DeviceSize = Word64
-- | VkDeviceAddress - Vulkan device address type
--
-- See Also
--
-- AccelerationStructureCreateInfoKHR,
-- BindIndexBufferIndirectCommandNV,
-- BindVertexBufferIndirectCommandNV,
-- BufferDeviceAddressCreateInfoEXT,
-- DeviceOrHostAddressConstKHR, DeviceOrHostAddressKHR,
-- ImageViewAddressPropertiesNVX
type DeviceAddress = Word64
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkResult - Vulkan command return codes
--
-- Description
--
-- If a command returns a runtime error, unless otherwise specified any
-- output parameters will have undefined contents, except that if the
-- output parameter is a structure with sType and pNext
-- fields, those fields will be unmodified. Any structures chained from
-- pNext will also have undefined contents, except that
-- sType and pNext will be unmodified.
--
-- Out of memory errors do not damage any currently existing Vulkan
-- objects. Objects that have already been successfully created
-- can still be used by the application.
--
-- ERROR_UNKNOWN will be returned by an implementation when an
-- unexpected error occurs that cannot be attributed to valid behavior of
-- the application and implementation. Under these conditions, it
-- may be returned from any command returning a Result.
--
-- Note
--
-- ERROR_UNKNOWN is not expected to ever be returned if the
-- application behavior is valid, and if the implementation is bug-free.
-- If ERROR_UNKNOWN is received, the application should be checked
-- against the latest validation layers to verify correct behavior as
-- much as possible. If no issues are identified it could be an
-- implementation issue, and the implementor should be contacted for
-- support.
--
-- Performance-critical commands generally do not have return codes. If a
-- runtime error occurs in such commands, the implementation will defer
-- reporting the error until a specified point. For commands that record
-- into command buffers (vkCmd*) runtime errors are reported by
-- endCommandBuffer.
--
-- See Also
--
-- PresentInfoKHR
newtype Result
Result :: Int32 -> Result
-- | SUCCESS Command successfully completed
pattern SUCCESS :: Result
-- | NOT_READY A fence or query has not yet completed
pattern NOT_READY :: Result
-- | TIMEOUT A wait operation has not completed in the specified
-- time
pattern TIMEOUT :: Result
-- | EVENT_SET An event is signaled
pattern EVENT_SET :: Result
-- | EVENT_RESET An event is unsignaled
pattern EVENT_RESET :: Result
-- | INCOMPLETE A return array was too small for the result
pattern INCOMPLETE :: Result
-- | ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
pattern ERROR_OUT_OF_HOST_MEMORY :: Result
-- | ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has
-- failed.
pattern ERROR_OUT_OF_DEVICE_MEMORY :: Result
-- | ERROR_INITIALIZATION_FAILED Initialization of an object could
-- not be completed for implementation-specific reasons.
pattern ERROR_INITIALIZATION_FAILED :: Result
-- | ERROR_DEVICE_LOST The logical or physical device has been lost.
-- See Lost Device
pattern ERROR_DEVICE_LOST :: Result
-- | ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
pattern ERROR_MEMORY_MAP_FAILED :: Result
-- | ERROR_LAYER_NOT_PRESENT A requested layer is not present or
-- could not be loaded.
pattern ERROR_LAYER_NOT_PRESENT :: Result
-- | ERROR_EXTENSION_NOT_PRESENT A requested extension is not
-- supported.
pattern ERROR_EXTENSION_NOT_PRESENT :: Result
-- | ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
pattern ERROR_FEATURE_NOT_PRESENT :: Result
-- | ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is
-- not supported by the driver or is otherwise incompatible for
-- implementation-specific reasons.
pattern ERROR_INCOMPATIBLE_DRIVER :: Result
-- | ERROR_TOO_MANY_OBJECTS Too many objects of the type have
-- already been created.
pattern ERROR_TOO_MANY_OBJECTS :: Result
-- | ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported
-- on this device.
pattern ERROR_FORMAT_NOT_SUPPORTED :: Result
-- | ERROR_FRAGMENTED_POOL A pool allocation has failed due to
-- fragmentation of the pool’s memory. This must only be returned
-- if no attempt to allocate host or device memory was made to
-- accommodate the new allocation. This should be returned in
-- preference to ERROR_OUT_OF_POOL_MEMORY, but only if the
-- implementation is certain that the pool allocation failure was due to
-- fragmentation.
pattern ERROR_FRAGMENTED_POOL :: Result
-- | ERROR_UNKNOWN An unknown error has occurred; either the
-- application has provided invalid input, or an implementation failure
-- has occurred.
pattern ERROR_UNKNOWN :: Result
-- | PIPELINE_COMPILE_REQUIRED_EXT A requested pipeline creation
-- would have required compilation, but the application requested
-- compilation to not be performed.
pattern PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | OPERATION_NOT_DEFERRED_KHR A deferred operation was requested
-- and no operations were deferred.
pattern OPERATION_NOT_DEFERRED_KHR :: Result
-- | OPERATION_DEFERRED_KHR A deferred operation was requested and
-- at least some of the work was deferred.
pattern OPERATION_DEFERRED_KHR :: Result
-- | THREAD_DONE_KHR A deferred operation is not complete but there
-- is no work remaining to assign to additional threads.
pattern THREAD_DONE_KHR :: Result
-- | THREAD_IDLE_KHR A deferred operation is not complete but there
-- is currently no work for this thread to do at the time of this call.
pattern THREAD_IDLE_KHR :: Result
-- | ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a
-- swapchain created with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it
-- did not have exlusive full-screen access. This may occur due to
-- implementation-dependent reasons, outside of the application’s
-- control.
pattern ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: Result
pattern ERROR_NOT_PERMITTED_EXT :: Result
pattern ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: Result
pattern ERROR_INCOMPATIBLE_VERSION_KHR :: Result
-- | ERROR_INVALID_SHADER_NV One or more shaders failed to compile
-- or link. More details are reported back to the application via
-- VK_EXT_debug_report if enabled.
pattern ERROR_INVALID_SHADER_NV :: Result
pattern ERROR_VALIDATION_FAILED_EXT :: Result
-- | ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain
-- does not use the same presentable image layout, or is incompatible in
-- a way that prevents sharing an image.
pattern ERROR_INCOMPATIBLE_DISPLAY_KHR :: Result
-- | ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that
-- it is no longer compatible with the swapchain, and further
-- presentation requests using the swapchain will fail. Applications
-- must query the new surface properties and recreate their
-- swapchain if they wish to continue presenting to the surface.
pattern ERROR_OUT_OF_DATE_KHR :: Result
-- | SUBOPTIMAL_KHR A swapchain no longer matches the surface
-- properties exactly, but can still be used to present to the
-- surface successfully.
pattern SUBOPTIMAL_KHR :: Result
-- | ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already
-- in use by Vulkan or another API in a manner which prevents it from
-- being used again.
pattern ERROR_NATIVE_WINDOW_IN_USE_KHR :: Result
-- | ERROR_SURFACE_LOST_KHR A surface is no longer available.
pattern ERROR_SURFACE_LOST_KHR :: Result
-- | ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or
-- memory allocation failed because the requested address is not
-- available. A shader group handle assignment failed because the
-- requested shader group handle information is no longer valid.
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: Result
-- | ERROR_FRAGMENTATION A descriptor pool creation has failed due
-- to fragmentation.
pattern ERROR_FRAGMENTATION :: Result
-- | ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid
-- handle of the specified type.
pattern ERROR_INVALID_EXTERNAL_HANDLE :: Result
-- | ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed.
-- This must only be returned if no attempt to allocate host or
-- device memory was made to accommodate the new allocation. If the
-- failure was definitely due to fragmentation of the pool,
-- ERROR_FRAGMENTED_POOL should be returned instead.
pattern ERROR_OUT_OF_POOL_MEMORY :: Result
instance Vulkan.Zero.Zero Vulkan.Core10.FundamentalTypes.Bool32
instance Foreign.Storable.Storable Vulkan.Core10.FundamentalTypes.Bool32
instance GHC.Classes.Ord Vulkan.Core10.FundamentalTypes.Bool32
instance GHC.Classes.Eq Vulkan.Core10.FundamentalTypes.Bool32
instance GHC.Classes.Eq Vulkan.Core10.FundamentalTypes.Extent3D
instance GHC.Classes.Eq Vulkan.Core10.FundamentalTypes.Extent2D
instance GHC.Classes.Eq Vulkan.Core10.FundamentalTypes.Offset3D
instance GHC.Classes.Eq Vulkan.Core10.FundamentalTypes.Offset2D
instance GHC.Generics.Generic Vulkan.Core10.FundamentalTypes.Offset2D
instance GHC.Show.Show Vulkan.Core10.FundamentalTypes.Offset2D
instance GHC.Generics.Generic Vulkan.Core10.FundamentalTypes.Offset3D
instance GHC.Show.Show Vulkan.Core10.FundamentalTypes.Offset3D
instance GHC.Generics.Generic Vulkan.Core10.FundamentalTypes.Extent2D
instance GHC.Show.Show Vulkan.Core10.FundamentalTypes.Extent2D
instance GHC.Generics.Generic Vulkan.Core10.FundamentalTypes.Extent3D
instance GHC.Show.Show Vulkan.Core10.FundamentalTypes.Extent3D
instance GHC.Generics.Generic Vulkan.Core10.FundamentalTypes.Rect2D
instance GHC.Show.Show Vulkan.Core10.FundamentalTypes.Rect2D
instance GHC.Show.Show Vulkan.Core10.FundamentalTypes.Bool32
instance GHC.Read.Read Vulkan.Core10.FundamentalTypes.Bool32
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.FundamentalTypes.Rect2D
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.FundamentalTypes.Rect2D
instance Vulkan.Zero.Zero Vulkan.Core10.FundamentalTypes.Rect2D
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.FundamentalTypes.Extent3D
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.FundamentalTypes.Extent3D
instance Foreign.Storable.Storable Vulkan.Core10.FundamentalTypes.Extent3D
instance Vulkan.Zero.Zero Vulkan.Core10.FundamentalTypes.Extent3D
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.FundamentalTypes.Extent2D
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.FundamentalTypes.Extent2D
instance Foreign.Storable.Storable Vulkan.Core10.FundamentalTypes.Extent2D
instance Vulkan.Zero.Zero Vulkan.Core10.FundamentalTypes.Extent2D
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.FundamentalTypes.Offset3D
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.FundamentalTypes.Offset3D
instance Foreign.Storable.Storable Vulkan.Core10.FundamentalTypes.Offset3D
instance Vulkan.Zero.Zero Vulkan.Core10.FundamentalTypes.Offset3D
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.FundamentalTypes.Offset2D
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.FundamentalTypes.Offset2D
instance Foreign.Storable.Storable Vulkan.Core10.FundamentalTypes.Offset2D
instance Vulkan.Zero.Zero Vulkan.Core10.FundamentalTypes.Offset2D
module Vulkan.Extensions.VK_NV_viewport_swizzle
-- | VkViewportSwizzleNV - Structure specifying a viewport swizzle
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineViewportSwizzleStateCreateInfoNV,
-- ViewportCoordinateSwizzleNV
data ViewportSwizzleNV
ViewportSwizzleNV :: ViewportCoordinateSwizzleNV -> ViewportCoordinateSwizzleNV -> ViewportCoordinateSwizzleNV -> ViewportCoordinateSwizzleNV -> ViewportSwizzleNV
-- | x is a ViewportCoordinateSwizzleNV value specifying
-- the swizzle operation to apply to the x component of the primitive
--
-- x must be a valid ViewportCoordinateSwizzleNV
-- value
[$sel:x:ViewportSwizzleNV] :: ViewportSwizzleNV -> ViewportCoordinateSwizzleNV
-- | y is a ViewportCoordinateSwizzleNV value specifying
-- the swizzle operation to apply to the y component of the primitive
--
-- y must be a valid ViewportCoordinateSwizzleNV
-- value
[$sel:y:ViewportSwizzleNV] :: ViewportSwizzleNV -> ViewportCoordinateSwizzleNV
-- | z is a ViewportCoordinateSwizzleNV value specifying
-- the swizzle operation to apply to the z component of the primitive
--
-- z must be a valid ViewportCoordinateSwizzleNV
-- value
[$sel:z:ViewportSwizzleNV] :: ViewportSwizzleNV -> ViewportCoordinateSwizzleNV
-- | w is a ViewportCoordinateSwizzleNV value specifying
-- the swizzle operation to apply to the w component of the primitive
--
-- w must be a valid ViewportCoordinateSwizzleNV
-- value
[$sel:w:ViewportSwizzleNV] :: ViewportSwizzleNV -> ViewportCoordinateSwizzleNV
-- | VkPipelineViewportSwizzleStateCreateInfoNV - Structure specifying
-- swizzle applied to primitive clip coordinates
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineViewportSwizzleStateCreateFlagsNV,
-- StructureType, ViewportSwizzleNV
data PipelineViewportSwizzleStateCreateInfoNV
PipelineViewportSwizzleStateCreateInfoNV :: PipelineViewportSwizzleStateCreateFlagsNV -> Vector ViewportSwizzleNV -> PipelineViewportSwizzleStateCreateInfoNV
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:PipelineViewportSwizzleStateCreateInfoNV] :: PipelineViewportSwizzleStateCreateInfoNV -> PipelineViewportSwizzleStateCreateFlagsNV
-- | pViewportSwizzles is a pointer to an array of
-- ViewportSwizzleNV structures, defining the viewport swizzles.
--
-- pViewportSwizzles must be a valid pointer to an array
-- of viewportCount valid ViewportSwizzleNV structures
[$sel:viewportSwizzles:PipelineViewportSwizzleStateCreateInfoNV] :: PipelineViewportSwizzleStateCreateInfoNV -> Vector ViewportSwizzleNV
-- | VkPipelineViewportSwizzleStateCreateFlagsNV - Reserved for future use
--
-- Description
--
-- PipelineViewportSwizzleStateCreateFlagsNV is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineViewportSwizzleStateCreateInfoNV
newtype PipelineViewportSwizzleStateCreateFlagsNV
PipelineViewportSwizzleStateCreateFlagsNV :: Flags -> PipelineViewportSwizzleStateCreateFlagsNV
-- | VkViewportCoordinateSwizzleNV - Specify how a viewport coordinate is
-- swizzled
--
-- Description
--
-- These values are described in detail in Viewport Swizzle.
--
-- See Also
--
-- ViewportSwizzleNV
newtype ViewportCoordinateSwizzleNV
ViewportCoordinateSwizzleNV :: Int32 -> ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV :: ViewportCoordinateSwizzleNV
pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV :: ViewportCoordinateSwizzleNV
type NV_VIEWPORT_SWIZZLE_SPEC_VERSION = 1
pattern NV_VIEWPORT_SWIZZLE_SPEC_VERSION :: forall a. Integral a => a
type NV_VIEWPORT_SWIZZLE_EXTENSION_NAME = "VK_NV_viewport_swizzle"
pattern NV_VIEWPORT_SWIZZLE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportCoordinateSwizzleNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportCoordinateSwizzleNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportCoordinateSwizzleNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportCoordinateSwizzleNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportSwizzleNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportCoordinateSwizzleNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_viewport_swizzle.ViewportCoordinateSwizzleNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_viewport_swizzle.PipelineViewportSwizzleStateCreateFlagsNV
module Vulkan.Extensions.VK_NV_shader_sm_builtins
-- | VkPhysicalDeviceShaderSMBuiltinsPropertiesNV - Structure describing
-- shader SM Builtins properties supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceShaderSMBuiltinsPropertiesNV
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceShaderSMBuiltinsPropertiesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceShaderSMBuiltinsPropertiesNV
PhysicalDeviceShaderSMBuiltinsPropertiesNV :: Word32 -> Word32 -> PhysicalDeviceShaderSMBuiltinsPropertiesNV
-- | shaderSMCount is the number of SMs on the device.
[$sel:shaderSMCount:PhysicalDeviceShaderSMBuiltinsPropertiesNV] :: PhysicalDeviceShaderSMBuiltinsPropertiesNV -> Word32
-- | shaderWarpsPerSM is the maximum number of simultaneously
-- executing warps on an SM.
[$sel:shaderWarpsPerSM:PhysicalDeviceShaderSMBuiltinsPropertiesNV] :: PhysicalDeviceShaderSMBuiltinsPropertiesNV -> Word32
-- | VkPhysicalDeviceShaderSMBuiltinsFeaturesNV - Structure describing the
-- shader SM Builtins features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceShaderSMBuiltinsFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceShaderSMBuiltinsFeaturesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderSMBuiltinsFeaturesNV
PhysicalDeviceShaderSMBuiltinsFeaturesNV :: Bool -> PhysicalDeviceShaderSMBuiltinsFeaturesNV
-- | shaderSMBuiltins indicates whether the implementation
-- supports the SPIR-V ShaderSMBuiltinsNV capability.
[$sel:shaderSMBuiltins:PhysicalDeviceShaderSMBuiltinsFeaturesNV] :: PhysicalDeviceShaderSMBuiltinsFeaturesNV -> Bool
type NV_SHADER_SM_BUILTINS_SPEC_VERSION = 1
pattern NV_SHADER_SM_BUILTINS_SPEC_VERSION :: forall a. Integral a => a
type NV_SHADER_SM_BUILTINS_EXTENSION_NAME = "VK_NV_shader_sm_builtins"
pattern NV_SHADER_SM_BUILTINS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shader_sm_builtins.PhysicalDeviceShaderSMBuiltinsPropertiesNV
module Vulkan.Extensions.VK_NV_shader_image_footprint
-- | VkPhysicalDeviceShaderImageFootprintFeaturesNV - Structure describing
-- shader image footprint features that can be supported by an
-- implementation
--
-- Description
--
-- See Texel Footprint Evaluation for more information.
--
-- If the PhysicalDeviceShaderImageFootprintFeaturesNV structure
-- is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceShaderImageFootprintFeaturesNV can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderImageFootprintFeaturesNV
PhysicalDeviceShaderImageFootprintFeaturesNV :: Bool -> PhysicalDeviceShaderImageFootprintFeaturesNV
-- | imageFootprint specifies whether the implementation supports
-- the ImageFootprintNV SPIR-V capability.
[$sel:imageFootprint:PhysicalDeviceShaderImageFootprintFeaturesNV] :: PhysicalDeviceShaderImageFootprintFeaturesNV -> Bool
type NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION = 2
pattern NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION :: forall a. Integral a => a
type NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME = "VK_NV_shader_image_footprint"
pattern NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shader_image_footprint.PhysicalDeviceShaderImageFootprintFeaturesNV
module Vulkan.Extensions.VK_NV_representative_fragment_test
-- | VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV - Structure
-- describing the representative fragment test features that can be
-- supported by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceRepresentativeFragmentTestFeaturesNV
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceRepresentativeFragmentTestFeaturesNV
PhysicalDeviceRepresentativeFragmentTestFeaturesNV :: Bool -> PhysicalDeviceRepresentativeFragmentTestFeaturesNV
-- | representativeFragmentTest indicates whether the
-- implementation supports the representative fragment test. See
-- Representative Fragment Test.
[$sel:representativeFragmentTest:PhysicalDeviceRepresentativeFragmentTestFeaturesNV] :: PhysicalDeviceRepresentativeFragmentTestFeaturesNV -> Bool
-- | VkPipelineRepresentativeFragmentTestStateCreateInfoNV - Structure
-- specifying representative fragment test
--
-- Description
--
-- If this structure is not present,
-- representativeFragmentTestEnable is considered to be
-- FALSE, and the representative fragment test is disabled.
--
-- If early fragment tests are not enabled in the active fragment
-- shader, the representative fragment shader test has no effect, even if
-- enabled.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PipelineRepresentativeFragmentTestStateCreateInfoNV
PipelineRepresentativeFragmentTestStateCreateInfoNV :: Bool -> PipelineRepresentativeFragmentTestStateCreateInfoNV
-- | representativeFragmentTestEnable controls whether the
-- representative fragment test is enabled.
[$sel:representativeFragmentTestEnable:PipelineRepresentativeFragmentTestStateCreateInfoNV] :: PipelineRepresentativeFragmentTestStateCreateInfoNV -> Bool
type NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION = 2
pattern NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION :: forall a. Integral a => a
type NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME = "VK_NV_representative_fragment_test"
pattern NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_representative_fragment_test.PipelineRepresentativeFragmentTestStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_representative_fragment_test.PhysicalDeviceRepresentativeFragmentTestFeaturesNV
module Vulkan.Extensions.VK_NV_framebuffer_mixed_samples
-- | VkPipelineCoverageModulationStateCreateInfoNV - Structure specifying
-- parameters controlling coverage modulation
--
-- Description
--
-- If coverageModulationTableEnable is FALSE, then for
-- each color sample the associated bits of the fragment’s coverage are
-- counted and divided by the number of associated bits to produce a
-- modulation factor R in the range (0,1] (a value of zero would have
-- been killed due to a color coverage of 0). Specifically:
--
--
-- - N = value of rasterizationSamples
-- - M = value of AttachmentDescription::samples for
-- any color attachments
-- - R = popcount(associated coverage bits) / (N / M)
--
--
-- If coverageModulationTableEnable is TRUE, the value R
-- is computed using a programmable lookup table. The lookup table has N
-- / M elements, and the element of the table is selected by:
--
--
-- - R = pCoverageModulationTable[popcount(associated coverage
-- bits)-1]
--
--
-- Note that the table does not have an entry for popcount(associated
-- coverage bits) = 0, because such samples would have been killed.
--
-- The values of pCoverageModulationTable may be rounded
-- to an implementation-dependent precision, which is at least as fine as
-- 1 / N, and clamped to [0,1].
--
-- For each color attachment with a floating point or normalized color
-- format, each fragment output color value is replicated to M values
-- which can each be modulated (multiplied) by that color sample’s
-- associated value of R. Which components are modulated is controlled by
-- coverageModulationMode.
--
-- If this structure is not present, it is as if
-- coverageModulationMode is
-- COVERAGE_MODULATION_MODE_NONE_NV.
--
-- If the coverage reduction mode is
-- COVERAGE_REDUCTION_MODE_TRUNCATE_NV, each color sample is
-- associated with only a single coverage sample. In this case, it is as
-- if coverageModulationMode is
-- COVERAGE_MODULATION_MODE_NONE_NV.
--
-- Valid Usage
--
--
-- - If coverageModulationTableEnable is TRUE,
-- coverageModulationTableCount must be equal to the
-- number of rasterization samples divided by the number of color samples
-- in the subpass
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, CoverageModulationModeNV,
-- PipelineCoverageModulationStateCreateFlagsNV,
-- StructureType
data PipelineCoverageModulationStateCreateInfoNV
PipelineCoverageModulationStateCreateInfoNV :: PipelineCoverageModulationStateCreateFlagsNV -> CoverageModulationModeNV -> Bool -> Word32 -> Vector Float -> PipelineCoverageModulationStateCreateInfoNV
-- | flags is reserved for future use.
[$sel:flags:PipelineCoverageModulationStateCreateInfoNV] :: PipelineCoverageModulationStateCreateInfoNV -> PipelineCoverageModulationStateCreateFlagsNV
-- | coverageModulationMode is a CoverageModulationModeNV
-- value controlling which color components are modulated.
[$sel:coverageModulationMode:PipelineCoverageModulationStateCreateInfoNV] :: PipelineCoverageModulationStateCreateInfoNV -> CoverageModulationModeNV
-- | coverageModulationTableEnable controls whether the modulation
-- factor is looked up from a table in pCoverageModulationTable.
[$sel:coverageModulationTableEnable:PipelineCoverageModulationStateCreateInfoNV] :: PipelineCoverageModulationStateCreateInfoNV -> Bool
-- | coverageModulationTableCount is the number of elements in
-- pCoverageModulationTable.
[$sel:coverageModulationTableCount:PipelineCoverageModulationStateCreateInfoNV] :: PipelineCoverageModulationStateCreateInfoNV -> Word32
-- | pCoverageModulationTable is a table of modulation factors
-- containing a value for each number of covered samples.
[$sel:coverageModulationTable:PipelineCoverageModulationStateCreateInfoNV] :: PipelineCoverageModulationStateCreateInfoNV -> Vector Float
-- | VkPipelineCoverageModulationStateCreateFlagsNV - Reserved for future
-- use
--
-- Description
--
-- PipelineCoverageModulationStateCreateFlagsNV is a bitmask type
-- for setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineCoverageModulationStateCreateInfoNV
newtype PipelineCoverageModulationStateCreateFlagsNV
PipelineCoverageModulationStateCreateFlagsNV :: Flags -> PipelineCoverageModulationStateCreateFlagsNV
-- | VkCoverageModulationModeNV - Specify the coverage modulation mode
--
-- See Also
--
-- PipelineCoverageModulationStateCreateInfoNV
newtype CoverageModulationModeNV
CoverageModulationModeNV :: Int32 -> CoverageModulationModeNV
-- | COVERAGE_MODULATION_MODE_NONE_NV specifies that no components
-- are multiplied by the modulation factor.
pattern COVERAGE_MODULATION_MODE_NONE_NV :: CoverageModulationModeNV
-- | COVERAGE_MODULATION_MODE_RGB_NV specifies that the red, green,
-- and blue components are multiplied by the modulation factor.
pattern COVERAGE_MODULATION_MODE_RGB_NV :: CoverageModulationModeNV
-- | COVERAGE_MODULATION_MODE_ALPHA_NV specifies that the alpha
-- component is multiplied by the modulation factor.
pattern COVERAGE_MODULATION_MODE_ALPHA_NV :: CoverageModulationModeNV
-- | COVERAGE_MODULATION_MODE_RGBA_NV specifies that all components
-- are multiplied by the modulation factor.
pattern COVERAGE_MODULATION_MODE_RGBA_NV :: CoverageModulationModeNV
type NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION = 1
pattern NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION :: forall a. Integral a => a
type NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME = "VK_NV_framebuffer_mixed_samples"
pattern NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.CoverageModulationModeNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.CoverageModulationModeNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.CoverageModulationModeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.CoverageModulationModeNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.CoverageModulationModeNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.CoverageModulationModeNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_framebuffer_mixed_samples.PipelineCoverageModulationStateCreateFlagsNV
module Vulkan.Extensions.VK_NV_fragment_shader_barycentric
-- | VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV - Structure
-- describing barycentric support in fragment shaders that can be
-- supported by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV structure
-- describe the following features:
--
-- Description
--
-- See Barycentric Interpolation for more information.
--
-- If the PhysicalDeviceFragmentShaderBarycentricFeaturesNV
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceFragmentShaderBarycentricFeaturesNV
PhysicalDeviceFragmentShaderBarycentricFeaturesNV :: Bool -> PhysicalDeviceFragmentShaderBarycentricFeaturesNV
-- | fragmentShaderBarycentric indicates that the implementation
-- supports the BaryCoordNV and BaryCoordNoPerspNV
-- SPIR-V fragment shader built-ins and supports the PerVertexNV
-- SPIR-V decoration on fragment shader input variables.
[$sel:fragmentShaderBarycentric:PhysicalDeviceFragmentShaderBarycentricFeaturesNV] :: PhysicalDeviceFragmentShaderBarycentricFeaturesNV -> Bool
type NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION = 1
pattern NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION :: forall a. Integral a => a
type NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME = "VK_NV_fragment_shader_barycentric"
pattern NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_fragment_shader_barycentric.PhysicalDeviceFragmentShaderBarycentricFeaturesNV
module Vulkan.Extensions.VK_NV_fragment_coverage_to_color
-- | VkPipelineCoverageToColorStateCreateInfoNV - Structure specifying
-- whether fragment coverage replaces a color
--
-- Description
--
-- If coverageToColorEnable is TRUE, the coverage
-- mask replaces the first component of the color value corresponding
-- to the fragment shader output location with Location equal to
-- coverageToColorLocation and Index equal to zero. If
-- the color attachment format has fewer bits than the coverage mask, the
-- low bits of the sample coverage mask are taken without any clamping.
-- If the color attachment format has more bits than the coverage mask,
-- the high bits of the sample coverage mask are filled with zeros.
--
-- If coverageToColorEnable is FALSE, these operations
-- are skipped. If this structure is not present, it is as if
-- coverageToColorEnable is FALSE.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, PipelineCoverageToColorStateCreateFlagsNV,
-- StructureType
data PipelineCoverageToColorStateCreateInfoNV
PipelineCoverageToColorStateCreateInfoNV :: PipelineCoverageToColorStateCreateFlagsNV -> Bool -> Word32 -> PipelineCoverageToColorStateCreateInfoNV
-- | flags is reserved for future use.
[$sel:flags:PipelineCoverageToColorStateCreateInfoNV] :: PipelineCoverageToColorStateCreateInfoNV -> PipelineCoverageToColorStateCreateFlagsNV
-- | coverageToColorEnable controls whether the fragment coverage
-- value replaces a fragment color output.
[$sel:coverageToColorEnable:PipelineCoverageToColorStateCreateInfoNV] :: PipelineCoverageToColorStateCreateInfoNV -> Bool
-- | coverageToColorLocation controls which fragment shader color
-- output value is replaced.
[$sel:coverageToColorLocation:PipelineCoverageToColorStateCreateInfoNV] :: PipelineCoverageToColorStateCreateInfoNV -> Word32
-- | VkPipelineCoverageToColorStateCreateFlagsNV - Reserved for future use
--
-- Description
--
-- PipelineCoverageToColorStateCreateFlagsNV is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineCoverageToColorStateCreateInfoNV
newtype PipelineCoverageToColorStateCreateFlagsNV
PipelineCoverageToColorStateCreateFlagsNV :: Flags -> PipelineCoverageToColorStateCreateFlagsNV
type NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION = 1
pattern NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION :: forall a. Integral a => a
type NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME = "VK_NV_fragment_coverage_to_color"
pattern NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_fragment_coverage_to_color.PipelineCoverageToColorStateCreateFlagsNV
module Vulkan.Extensions.VK_NV_device_diagnostics_config
-- | VkPhysicalDeviceDiagnosticsConfigFeaturesNV - Structure describing the
-- device-generated diagnostic configuration features that can be
-- supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceDiagnosticsConfigFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceDiagnosticsConfigFeaturesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceDiagnosticsConfigFeaturesNV can also be
-- used in the pNext chain of DeviceCreateInfo to enable
-- the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceDiagnosticsConfigFeaturesNV
PhysicalDeviceDiagnosticsConfigFeaturesNV :: Bool -> PhysicalDeviceDiagnosticsConfigFeaturesNV
-- | diagnosticsConfig indicates whether the implementation
-- supports the ability to configure diagnostic tools.
[$sel:diagnosticsConfig:PhysicalDeviceDiagnosticsConfigFeaturesNV] :: PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
-- | VkDeviceDiagnosticsConfigCreateInfoNV - Specify diagnostics config for
-- a Vulkan device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceDiagnosticsConfigFlagsNV, StructureType
data DeviceDiagnosticsConfigCreateInfoNV
DeviceDiagnosticsConfigCreateInfoNV :: DeviceDiagnosticsConfigFlagsNV -> DeviceDiagnosticsConfigCreateInfoNV
-- | flags is a bitmask of
-- DeviceDiagnosticsConfigFlagBitsNV specifying addtional
-- parameters for configuring diagnostic tools.
--
-- flags must be a valid combination of
-- DeviceDiagnosticsConfigFlagBitsNV values
[$sel:flags:DeviceDiagnosticsConfigCreateInfoNV] :: DeviceDiagnosticsConfigCreateInfoNV -> DeviceDiagnosticsConfigFlagsNV
-- | VkDeviceDiagnosticsConfigFlagBitsNV - Bitmask specifying diagnostics
-- flags
--
-- See Also
--
-- DeviceDiagnosticsConfigFlagsNV
newtype DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV :: Flags -> DeviceDiagnosticsConfigFlagBitsNV
-- | DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV
-- enables the generation of debug information for shaders.
pattern DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
-- | DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV
-- enables driver side tracking of resources (images, buffers, etc.) used
-- to augment the device fault information.
pattern DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
-- | DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
-- enables automatic insertion of diagnostic checkpoints for draw
-- calls, dispatches, trace rays, and copies. The CPU call stack at the
-- time of the command will be associated as the marker data for the
-- automatically inserted checkpoints.
pattern DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
type DeviceDiagnosticsConfigFlagsNV = DeviceDiagnosticsConfigFlagBitsNV
type NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION = 1
pattern NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION :: forall a. Integral a => a
type NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME = "VK_NV_device_diagnostics_config"
pattern NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_device_diagnostics_config.DeviceDiagnosticsConfigFlagBitsNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_diagnostics_config.PhysicalDeviceDiagnosticsConfigFeaturesNV
module Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing
-- | VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV - Structure
-- describing dedicated allocation image aliasing features that can be
-- supported by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
-- can also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV :: Bool -> PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
-- | dedicatedAllocationImageAliasing indicates that the
-- implementation supports aliasing of compatible image objects on a
-- dedicated allocation.
[$sel:dedicatedAllocationImageAliasing:PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV] :: PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV -> Bool
type NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION = 1
pattern NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION :: forall a. Integral a => a
type NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME = "VK_NV_dedicated_allocation_image_aliasing"
pattern NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_dedicated_allocation_image_aliasing.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
module Vulkan.Extensions.VK_NV_corner_sampled_image
-- | VkPhysicalDeviceCornerSampledImageFeaturesNV - Structure describing
-- corner sampled image features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceCornerSampledImageFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceCornerSampledImageFeaturesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceCornerSampledImageFeaturesNV can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceCornerSampledImageFeaturesNV
PhysicalDeviceCornerSampledImageFeaturesNV :: Bool -> PhysicalDeviceCornerSampledImageFeaturesNV
-- | cornerSampledImage specifies whether images can be created
-- with a ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV. See Corner-Sampled
-- Images.
[$sel:cornerSampledImage:PhysicalDeviceCornerSampledImageFeaturesNV] :: PhysicalDeviceCornerSampledImageFeaturesNV -> Bool
type NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION = 2
pattern NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION :: forall a. Integral a => a
type NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME = "VK_NV_corner_sampled_image"
pattern NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_corner_sampled_image.PhysicalDeviceCornerSampledImageFeaturesNV
module Vulkan.Extensions.VK_NV_compute_shader_derivatives
-- | VkPhysicalDeviceComputeShaderDerivativesFeaturesNV - Structure
-- describing compute shader derivative features that can be supported by
-- an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV structure
-- describe the following features:
--
-- Description
--
-- See Compute Shader Derivatives for more information.
--
-- If the PhysicalDeviceComputeShaderDerivativesFeaturesNV
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceComputeShaderDerivativesFeaturesNV
PhysicalDeviceComputeShaderDerivativesFeaturesNV :: Bool -> Bool -> PhysicalDeviceComputeShaderDerivativesFeaturesNV
-- | computeDerivativeGroupQuads indicates that the implementation
-- supports the ComputeDerivativeGroupQuadsNV SPIR-V capability.
[$sel:computeDerivativeGroupQuads:PhysicalDeviceComputeShaderDerivativesFeaturesNV] :: PhysicalDeviceComputeShaderDerivativesFeaturesNV -> Bool
-- | computeDerivativeGroupLinear indicates that the
-- implementation supports the ComputeDerivativeGroupLinearNV
-- SPIR-V capability.
[$sel:computeDerivativeGroupLinear:PhysicalDeviceComputeShaderDerivativesFeaturesNV] :: PhysicalDeviceComputeShaderDerivativesFeaturesNV -> Bool
type NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION = 1
pattern NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: forall a. Integral a => a
type NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_NV_compute_shader_derivatives"
pattern NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_compute_shader_derivatives.PhysicalDeviceComputeShaderDerivativesFeaturesNV
module Vulkan.Extensions.VK_NVX_multiview_per_view_attributes
-- | VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX - Structure
-- describing multiview limits that can be supported by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
-- structure is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX :: Bool -> PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
-- | perViewPositionAllComponents is TRUE if the
-- implementation supports per-view position values that differ in
-- components other than the X component.
[$sel:perViewPositionAllComponents:PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX] :: PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX -> Bool
type NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION = 1
pattern NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION :: forall a. Integral a => a
type NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME = "VK_NVX_multiview_per_view_attributes"
pattern NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
instance GHC.Generics.Generic Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
instance GHC.Show.Show Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NVX_multiview_per_view_attributes.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
module Vulkan.Extensions.VK_KHR_surface_protected_capabilities
-- | VkSurfaceProtectedCapabilitiesKHR - Structure describing capability of
-- a surface to be protected
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data SurfaceProtectedCapabilitiesKHR
SurfaceProtectedCapabilitiesKHR :: Bool -> SurfaceProtectedCapabilitiesKHR
-- | supportsProtected specifies whether a protected swapchain
-- created from PhysicalDeviceSurfaceInfo2KHR::surface
-- for a particular windowing system can be displayed on screen or
-- not. If supportsProtected is TRUE, then creation of
-- swapchains with the SWAPCHAIN_CREATE_PROTECTED_BIT_KHR flag set
-- must be supported for surface.
[$sel:supportsProtected:SurfaceProtectedCapabilitiesKHR] :: SurfaceProtectedCapabilitiesKHR -> Bool
type KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION = 1
pattern KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION :: forall a. Integral a => a
type KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME = "VK_KHR_surface_protected_capabilities"
pattern KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface_protected_capabilities.SurfaceProtectedCapabilitiesKHR
module Vulkan.Extensions.VK_KHR_shader_clock
-- | VkPhysicalDeviceShaderClockFeaturesKHR - Structure describing features
-- supported by VK_KHR_shader_clock
--
-- Description
--
-- If the PhysicalDeviceShaderClockFeaturesKHR structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceShaderClockFeaturesKHR can also be included in
-- the pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderClockFeaturesKHR
PhysicalDeviceShaderClockFeaturesKHR :: Bool -> Bool -> PhysicalDeviceShaderClockFeaturesKHR
-- | shaderSubgroupClock indicates whether shaders can
-- support Subgroup scoped clock reads.
[$sel:shaderSubgroupClock:PhysicalDeviceShaderClockFeaturesKHR] :: PhysicalDeviceShaderClockFeaturesKHR -> Bool
-- | shaderDeviceClock indicates whether shaders can
-- support Device scoped clock reads.
[$sel:shaderDeviceClock:PhysicalDeviceShaderClockFeaturesKHR] :: PhysicalDeviceShaderClockFeaturesKHR -> Bool
type KHR_SHADER_CLOCK_SPEC_VERSION = 1
pattern KHR_SHADER_CLOCK_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_CLOCK_EXTENSION_NAME = "VK_KHR_shader_clock"
pattern KHR_SHADER_CLOCK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_shader_clock.PhysicalDeviceShaderClockFeaturesKHR
module Vulkan.Extensions.VK_KHR_incremental_present
-- | VkPresentRegionsKHR - Structure hint of rectangular regions changed by
-- vkQueuePresentKHR
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pRegions is not NULL, pRegions
-- must be a valid pointer to an array of swapchainCount
-- valid PresentRegionKHR structures
-- - swapchainCount must be greater than
-- 0
--
--
-- See Also
--
-- PresentRegionKHR, StructureType
data PresentRegionsKHR
PresentRegionsKHR :: Word32 -> Vector PresentRegionKHR -> PresentRegionsKHR
-- | swapchainCount is the number of swapchains being presented to
-- by this command.
[$sel:swapchainCount:PresentRegionsKHR] :: PresentRegionsKHR -> Word32
-- | pRegions is NULL or a pointer to an array of
-- PresentRegionKHR elements with swapchainCount entries.
-- If not NULL, each element of pRegions contains the
-- region that has changed since the last present to the swapchain in the
-- corresponding entry in the PresentInfoKHR::pSwapchains
-- array.
[$sel:regions:PresentRegionsKHR] :: PresentRegionsKHR -> Vector PresentRegionKHR
-- | VkPresentRegionKHR - Structure containing rectangular region changed
-- by vkQueuePresentKHR for a given VkImage
--
-- Valid Usage (Implicit)
--
--
-- - If rectangleCount is not 0, and
-- pRectangles is not NULL, pRectangles
-- must be a valid pointer to an array of rectangleCount
-- valid RectLayerKHR structures
--
--
-- See Also
--
-- PresentRegionsKHR, RectLayerKHR
data PresentRegionKHR
PresentRegionKHR :: Word32 -> Vector RectLayerKHR -> PresentRegionKHR
-- | rectangleCount is the number of rectangles in
-- pRectangles, or zero if the entire image has changed and
-- should be presented.
[$sel:rectangleCount:PresentRegionKHR] :: PresentRegionKHR -> Word32
-- | pRectangles is either NULL or a pointer to an array
-- of RectLayerKHR structures. The RectLayerKHR structure
-- is the framebuffer coordinates, plus layer, of a portion of a
-- presentable image that has changed and must be presented. If
-- non-NULL, each entry in pRectangles is a rectangle
-- of the given image that has changed since the last image was presented
-- to the given swapchain.
[$sel:rectangles:PresentRegionKHR] :: PresentRegionKHR -> Vector RectLayerKHR
-- | VkRectLayerKHR - Structure containing a rectangle, including layer,
-- changed by vkQueuePresentKHR for a given VkImage
--
-- Valid Usage
--
--
--
--
--
-- Some platforms allow the size of a surface to change, and then scale
-- the pixels of the image to fit the surface. RectLayerKHR
-- specifies pixels of the swapchain’s image(s), which will be constant
-- for the life of the swapchain.
--
-- See Also
--
-- Extent2D, Offset2D, PresentRegionKHR
data RectLayerKHR
RectLayerKHR :: Offset2D -> Extent2D -> Word32 -> RectLayerKHR
-- | offset is the origin of the rectangle, in pixels.
[$sel:offset:RectLayerKHR] :: RectLayerKHR -> Offset2D
-- | extent is the size of the rectangle, in pixels.
[$sel:extent:RectLayerKHR] :: RectLayerKHR -> Extent2D
-- | layer is the layer of the image. For images with only one
-- layer, the value of layer must be 0.
[$sel:layer:RectLayerKHR] :: RectLayerKHR -> Word32
type KHR_INCREMENTAL_PRESENT_SPEC_VERSION = 1
pattern KHR_INCREMENTAL_PRESENT_SPEC_VERSION :: forall a. Integral a => a
type KHR_INCREMENTAL_PRESENT_EXTENSION_NAME = "VK_KHR_incremental_present"
pattern KHR_INCREMENTAL_PRESENT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionsKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_incremental_present.RectLayerKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_incremental_present.RectLayerKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionsKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_incremental_present.PresentRegionKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_incremental_present.RectLayerKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_incremental_present.RectLayerKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_incremental_present.RectLayerKHR
module Vulkan.Extensions.VK_INTEL_shader_integer_functions2
-- | VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL - Structure
-- describing shader integer functions that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL :: Bool -> PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
-- | shaderIntegerFunctions2 indicates that the implementation
-- supports the ShaderIntegerFunctions2INTEL SPIR-V capability.
[$sel:shaderIntegerFunctions2:PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL] :: PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL -> Bool
type INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION = 1
pattern INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION :: forall a. Integral a => a
type INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME = "VK_INTEL_shader_integer_functions2"
pattern INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_shader_integer_functions2.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
module Vulkan.Extensions.VK_EXT_ycbcr_image_arrays
-- | VkPhysicalDeviceYcbcrImageArraysFeaturesEXT - Structure describing
-- extended Y’CbCr image creation features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceYcbcrImageArraysFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceYcbcrImageArraysFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceYcbcrImageArraysFeaturesEXT
PhysicalDeviceYcbcrImageArraysFeaturesEXT :: Bool -> PhysicalDeviceYcbcrImageArraysFeaturesEXT
-- | ycbcrImageArrays indicates that the implementation supports
-- creating images with a format that requires Y′CBCR conversion
-- and has multiple array layers.
[$sel:ycbcrImageArrays:PhysicalDeviceYcbcrImageArraysFeaturesEXT] :: PhysicalDeviceYcbcrImageArraysFeaturesEXT -> Bool
type EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION = 1
pattern EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION :: forall a. Integral a => a
type EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME = "VK_EXT_ycbcr_image_arrays"
pattern EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_ycbcr_image_arrays.PhysicalDeviceYcbcrImageArraysFeaturesEXT
module Vulkan.Extensions.VK_EXT_vertex_attribute_divisor
-- | VkVertexInputBindingDivisorDescriptionEXT - Structure specifying a
-- divisor used in instanced rendering
--
-- 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.
--
-- Valid Usage
--
--
--
--
--
-- See Also
--
-- PipelineVertexInputDivisorStateCreateInfoEXT
data VertexInputBindingDivisorDescriptionEXT
VertexInputBindingDivisorDescriptionEXT :: Word32 -> Word32 -> VertexInputBindingDivisorDescriptionEXT
-- | binding is the binding number for which the divisor is
-- specified.
[$sel:binding:VertexInputBindingDivisorDescriptionEXT] :: VertexInputBindingDivisorDescriptionEXT -> Word32
-- | divisor is the number of successive instances that will use
-- the same 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 queried using
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT::maxVertexAttribDivisor.
-- A value of 0 can be used for the divisor if the
-- vertexAttributeInstanceRateZeroDivisor feature is enabled. In
-- this case, the same vertex attribute will be applied to all instances.
[$sel:divisor:VertexInputBindingDivisorDescriptionEXT] :: VertexInputBindingDivisorDescriptionEXT -> Word32
-- | VkPipelineVertexInputDivisorStateCreateInfoEXT - Structure specifying
-- vertex attributes assignment during instanced rendering
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, VertexInputBindingDivisorDescriptionEXT
data PipelineVertexInputDivisorStateCreateInfoEXT
PipelineVertexInputDivisorStateCreateInfoEXT :: Vector VertexInputBindingDivisorDescriptionEXT -> PipelineVertexInputDivisorStateCreateInfoEXT
-- | pVertexBindingDivisors is a pointer to an array of
-- VertexInputBindingDivisorDescriptionEXT structures, which
-- specifies the divisor value for each binding.
--
-- pVertexBindingDivisors must be a valid pointer to an
-- array of vertexBindingDivisorCount
-- VertexInputBindingDivisorDescriptionEXT structures
[$sel:vertexBindingDivisors:PipelineVertexInputDivisorStateCreateInfoEXT] :: PipelineVertexInputDivisorStateCreateInfoEXT -> Vector VertexInputBindingDivisorDescriptionEXT
-- | VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT - Structure
-- describing max value of vertex attribute divisor that can be supported
-- by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceVertexAttributeDivisorPropertiesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceVertexAttributeDivisorPropertiesEXT
PhysicalDeviceVertexAttributeDivisorPropertiesEXT :: Word32 -> PhysicalDeviceVertexAttributeDivisorPropertiesEXT
-- | maxVertexAttribDivisor is the maximum value of the number of
-- instances that will repeat the value of vertex attribute data when
-- instanced rendering is enabled.
[$sel:maxVertexAttribDivisor:PhysicalDeviceVertexAttributeDivisorPropertiesEXT] :: PhysicalDeviceVertexAttributeDivisorPropertiesEXT -> Word32
-- | VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT - Structure
-- describing if fetching of vertex attribute may be repeated for
-- instanced rendering
--
-- Description
--
-- If the PhysicalDeviceVertexAttributeDivisorFeaturesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- the implementation-dependent behavior.
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT can also
-- be included in pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceVertexAttributeDivisorFeaturesEXT
PhysicalDeviceVertexAttributeDivisorFeaturesEXT :: Bool -> Bool -> PhysicalDeviceVertexAttributeDivisorFeaturesEXT
-- | vertexAttributeInstanceRateDivisor specifies whether vertex
-- attribute fetching may be repeated in case of instanced rendering.
[$sel:vertexAttributeInstanceRateDivisor:PhysicalDeviceVertexAttributeDivisorFeaturesEXT] :: PhysicalDeviceVertexAttributeDivisorFeaturesEXT -> Bool
-- | vertexAttributeInstanceRateZeroDivisor specifies whether a
-- zero value for
-- VertexInputBindingDivisorDescriptionEXT::divisor is
-- supported.
[$sel:vertexAttributeInstanceRateZeroDivisor:PhysicalDeviceVertexAttributeDivisorFeaturesEXT] :: PhysicalDeviceVertexAttributeDivisorFeaturesEXT -> Bool
type EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION = 3
pattern EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION :: forall a. Integral a => a
type EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME = "VK_EXT_vertex_attribute_divisor"
pattern EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PipelineVertexInputDivisorStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PipelineVertexInputDivisorStateCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PhysicalDeviceVertexAttributeDivisorPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PipelineVertexInputDivisorStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PipelineVertexInputDivisorStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.PipelineVertexInputDivisorStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_vertex_attribute_divisor.VertexInputBindingDivisorDescriptionEXT
module Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr
-- | VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT - Structure
-- describing ASTC HDR features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT can
-- also be included in the pNext chain of createDevice to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT :: Bool -> PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
-- | textureCompressionASTC_HDR indicates whether all of the ASTC
-- HDR compressed texture formats are supported. If this feature is
-- enabled, then the FORMAT_FEATURE_SAMPLED_IMAGE_BIT,
-- FORMAT_FEATURE_BLIT_SRC_BIT and
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT features
-- must be supported in optimalTilingFeatures for the
-- following formats:
--
--
--
-- To query for additional properties, or if the feature is not enabled,
-- getPhysicalDeviceFormatProperties and
-- getPhysicalDeviceImageFormatProperties can be used to
-- check for supported properties of individual formats as normal.
[$sel:textureCompressionASTC_HDR:PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT] :: PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT -> Bool
type EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION = 1
pattern EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION :: forall a. Integral a => a
type EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME = "VK_EXT_texture_compression_astc_hdr"
pattern EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_texture_compression_astc_hdr.PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT
module Vulkan.Extensions.VK_EXT_texel_buffer_alignment
-- | VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT - Structure describing
-- the texel buffer alignment features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceTexelBufferAlignmentFeaturesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT can also
-- be included in the pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceTexelBufferAlignmentFeaturesEXT
PhysicalDeviceTexelBufferAlignmentFeaturesEXT :: Bool -> PhysicalDeviceTexelBufferAlignmentFeaturesEXT
-- | texelBufferAlignment indicates whether the implementation
-- uses more specific alignment requirements advertised in
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT rather than
-- PhysicalDeviceLimits::minTexelBufferOffsetAlignment.
[$sel:texelBufferAlignment:PhysicalDeviceTexelBufferAlignmentFeaturesEXT] :: PhysicalDeviceTexelBufferAlignmentFeaturesEXT -> Bool
-- | VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT - Structure
-- describing the texel buffer alignment requirements supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceTexelBufferAlignmentPropertiesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- If the single texel alignment property is FALSE, then the
-- buffer view’s offset must be aligned to the corresponding byte
-- alignment value. If the single texel alignment property is
-- TRUE, then the buffer view’s offset must be aligned to
-- the lesser of the corresponding byte alignment value or the size of a
-- single texel, based on BufferViewCreateInfo::format.
-- If the size of a single texel is a multiple of three bytes, then the
-- size of a single component of the format is used instead.
--
-- These limits must not advertise a larger alignment than the
-- required maximum minimum value of
-- PhysicalDeviceLimits::minTexelBufferOffsetAlignment,
-- for any format that supports use as a texel buffer.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, DeviceSize, StructureType
data PhysicalDeviceTexelBufferAlignmentPropertiesEXT
PhysicalDeviceTexelBufferAlignmentPropertiesEXT :: DeviceSize -> Bool -> DeviceSize -> Bool -> PhysicalDeviceTexelBufferAlignmentPropertiesEXT
-- | storageTexelBufferOffsetAlignmentBytes is a byte alignment
-- that is sufficient for a storage texel buffer of any format.
[$sel:storageTexelBufferOffsetAlignmentBytes:PhysicalDeviceTexelBufferAlignmentPropertiesEXT] :: PhysicalDeviceTexelBufferAlignmentPropertiesEXT -> DeviceSize
-- | storageTexelBufferOffsetSingleTexelAlignment indicates
-- whether single texel alignment is sufficient for a storage texel
-- buffer of any format.
[$sel:storageTexelBufferOffsetSingleTexelAlignment:PhysicalDeviceTexelBufferAlignmentPropertiesEXT] :: PhysicalDeviceTexelBufferAlignmentPropertiesEXT -> Bool
-- | uniformTexelBufferOffsetAlignmentBytes is a byte alignment
-- that is sufficient for a uniform texel buffer of any format.
[$sel:uniformTexelBufferOffsetAlignmentBytes:PhysicalDeviceTexelBufferAlignmentPropertiesEXT] :: PhysicalDeviceTexelBufferAlignmentPropertiesEXT -> DeviceSize
-- | uniformTexelBufferOffsetSingleTexelAlignment indicates
-- whether single texel alignment is sufficient for a uniform texel
-- buffer of any format.
[$sel:uniformTexelBufferOffsetSingleTexelAlignment:PhysicalDeviceTexelBufferAlignmentPropertiesEXT] :: PhysicalDeviceTexelBufferAlignmentPropertiesEXT -> Bool
type EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION = 1
pattern EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION :: forall a. Integral a => a
type EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME = "VK_EXT_texel_buffer_alignment"
pattern EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_texel_buffer_alignment.PhysicalDeviceTexelBufferAlignmentFeaturesEXT
module Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation
-- | VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT - Structure
-- describing the shader demote to helper invocations features that can
-- be supported by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
-- can also be included in the pNext chain of
-- DeviceCreateInfo to enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT :: Bool -> PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
-- | shaderDemoteToHelperInvocation indicates whether the
-- implementation supports the SPIR-V
-- DemoteToHelperInvocationEXT capability.
[$sel:shaderDemoteToHelperInvocation:PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT] :: PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT -> Bool
type EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION = 1
pattern EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION :: forall a. Integral a => a
type EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME = "VK_EXT_shader_demote_to_helper_invocation"
pattern EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_shader_demote_to_helper_invocation.PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
module Vulkan.Extensions.VK_EXT_robustness2
-- | VkPhysicalDeviceRobustness2FeaturesEXT - Structure describing the
-- out-of-bounds behavior for an implementation
--
-- Members
--
-- The members of the PhysicalDeviceRobustness2FeaturesEXT
-- structure describe the following features:
--
-- Description
--
--
-- - robustBufferAccess2 indicates whether buffer accesses are
-- tightly bounds-checked against the range of the descriptor. Uniform
-- buffers must be bounds-checked to the range of the descriptor,
-- where the range is rounded up to a multiple of
-- robustUniformBufferAccessSizeAlignment. Storage buffers
-- must be bounds-checked to the range of the descriptor, where
-- the range is rounded up to a multiple of
-- robustStorageBufferAccessSizeAlignment. Out of bounds buffer
-- loads will return zero values, and formatted loads will have (0,0,1)
-- values inserted for missing G, B, or A components based on the
-- format.
--
--
--
-- - robustImageAccess2 indicates whether image accesses are
-- tightly bounds-checked against the dimensions of the image view. Out
-- of bounds image loads will return zero values, with (0,0,1) values
-- inserted for missing G, B, or A components based on the
-- format.
-- - nullDescriptor indicates whether descriptors can
-- be written with a NULL_HANDLE resource or view, which are
-- considered valid to access and act as if the descriptor were bound to
-- nothing.
--
--
-- If the PhysicalDeviceRobustness2FeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceRobustness2FeaturesEXT
PhysicalDeviceRobustness2FeaturesEXT :: Bool -> Bool -> Bool -> PhysicalDeviceRobustness2FeaturesEXT
[$sel:robustBufferAccess2:PhysicalDeviceRobustness2FeaturesEXT] :: PhysicalDeviceRobustness2FeaturesEXT -> Bool
[$sel:robustImageAccess2:PhysicalDeviceRobustness2FeaturesEXT] :: PhysicalDeviceRobustness2FeaturesEXT -> Bool
[$sel:nullDescriptor:PhysicalDeviceRobustness2FeaturesEXT] :: PhysicalDeviceRobustness2FeaturesEXT -> Bool
-- | VkPhysicalDeviceRobustness2PropertiesEXT - Structure describing robust
-- buffer access properties supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceRobustness2PropertiesEXT
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceRobustness2PropertiesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceSize, StructureType
data PhysicalDeviceRobustness2PropertiesEXT
PhysicalDeviceRobustness2PropertiesEXT :: DeviceSize -> DeviceSize -> PhysicalDeviceRobustness2PropertiesEXT
-- | robustStorageBufferAccessSizeAlignment is the number of bytes
-- that the range of a storage buffer descriptor is rounded up to when
-- used for bounds-checking when robustBufferAccess2 is enabled.
-- This value is either 1 or 4.
[$sel:robustStorageBufferAccessSizeAlignment:PhysicalDeviceRobustness2PropertiesEXT] :: PhysicalDeviceRobustness2PropertiesEXT -> DeviceSize
-- | robustUniformBufferAccessSizeAlignment is the number of bytes
-- that the range of a uniform buffer descriptor is rounded up to when
-- used for bounds-checking when robustBufferAccess2 is enabled.
-- This value is a power of two in the range [1, 256].
[$sel:robustUniformBufferAccessSizeAlignment:PhysicalDeviceRobustness2PropertiesEXT] :: PhysicalDeviceRobustness2PropertiesEXT -> DeviceSize
type EXT_ROBUSTNESS_2_SPEC_VERSION = 1
pattern EXT_ROBUSTNESS_2_SPEC_VERSION :: forall a. Integral a => a
type EXT_ROBUSTNESS_2_EXTENSION_NAME = "VK_EXT_robustness2"
pattern EXT_ROBUSTNESS_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2PropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_robustness2.PhysicalDeviceRobustness2FeaturesEXT
module Vulkan.Extensions.VK_EXT_pipeline_creation_feedback
-- | VkPipelineCreationFeedbackEXT - Feedback about the creation of a
-- pipeline or pipeline stage
--
-- Description
--
-- If the PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT is not set in
-- flags, an implementation must not set any other bits
-- in flags, and all other PipelineCreationFeedbackEXT
-- data members are undefined.
--
-- See Also
--
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineCreationFeedbackFlagBitsEXT,
-- PipelineCreationFeedbackFlagsEXT
data PipelineCreationFeedbackEXT
PipelineCreationFeedbackEXT :: PipelineCreationFeedbackFlagsEXT -> Word64 -> PipelineCreationFeedbackEXT
-- | flags is a bitmask of
-- PipelineCreationFeedbackFlagBitsEXT providing feedback about
-- the creation of a pipeline or of a pipeline stage.
[$sel:flags:PipelineCreationFeedbackEXT] :: PipelineCreationFeedbackEXT -> PipelineCreationFeedbackFlagsEXT
-- | duration is the duration spent creating a pipeline or
-- pipeline stage in nanoseconds.
[$sel:duration:PipelineCreationFeedbackEXT] :: PipelineCreationFeedbackEXT -> Word64
-- | VkPipelineCreationFeedbackCreateInfoEXT - Request for feedback about
-- the creation of a pipeline
--
-- Description
--
-- An implementation should write pipeline creation feedback to
-- pPipelineCreationFeedback and may write pipeline stage
-- creation feedback to pPipelineStageCreationFeedbacks. An
-- implementation must set or clear the
-- PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT in
-- PipelineCreationFeedbackEXT::flags for
-- pPipelineCreationFeedback and every element of
-- pPipelineStageCreationFeedbacks.
--
-- Note
--
-- One common scenario for an implementation to skip per-stage feedback
-- is when
-- PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT
-- is set in pPipelineCreationFeedback.
--
-- When chained to RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, or
-- GraphicsPipelineCreateInfo, the i element of
-- pPipelineStageCreationFeedbacks corresponds to the i
-- element of RayTracingPipelineCreateInfoKHR::pStages,
-- RayTracingPipelineCreateInfoNV::pStages, or
-- GraphicsPipelineCreateInfo::pStages. When chained to
-- ComputePipelineCreateInfo, the first element of
-- pPipelineStageCreationFeedbacks corresponds to
-- ComputePipelineCreateInfo::stage.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPipelineCreationFeedback must be a valid pointer
-- to a PipelineCreationFeedbackEXT structure
-- - pPipelineStageCreationFeedbacks must be a valid
-- pointer to an array of pipelineStageCreationFeedbackCount
-- PipelineCreationFeedbackEXT structures
-- - pipelineStageCreationFeedbackCount must be greater
-- than 0
--
--
-- See Also
--
-- ComputePipelineCreateInfo, GraphicsPipelineCreateInfo,
-- PipelineCreationFeedbackEXT,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, StructureType
data PipelineCreationFeedbackCreateInfoEXT
PipelineCreationFeedbackCreateInfoEXT :: Ptr PipelineCreationFeedbackEXT -> Word32 -> Ptr PipelineCreationFeedbackEXT -> PipelineCreationFeedbackCreateInfoEXT
-- | pPipelineCreationFeedback is a pointer to a
-- PipelineCreationFeedbackEXT structure.
[$sel:pipelineCreationFeedback:PipelineCreationFeedbackCreateInfoEXT] :: PipelineCreationFeedbackCreateInfoEXT -> Ptr PipelineCreationFeedbackEXT
-- | pipelineStageCreationFeedbackCount is the number of elements
-- in pPipelineStageCreationFeedbacks.
[$sel:pipelineStageCreationFeedbackCount:PipelineCreationFeedbackCreateInfoEXT] :: PipelineCreationFeedbackCreateInfoEXT -> Word32
-- | pPipelineStageCreationFeedbacks is a pointer to an array of
-- pipelineStageCreationFeedbackCount
-- PipelineCreationFeedbackEXT structures.
[$sel:pipelineStageCreationFeedbacks:PipelineCreationFeedbackCreateInfoEXT] :: PipelineCreationFeedbackCreateInfoEXT -> Ptr PipelineCreationFeedbackEXT
-- | VkPipelineCreationFeedbackFlagBitsEXT - Bitmask specifying pipeline or
-- pipeline stage creation feedback
--
-- See Also
--
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineCreationFeedbackEXT,
-- PipelineCreationFeedbackFlagsEXT
newtype PipelineCreationFeedbackFlagBitsEXT
PipelineCreationFeedbackFlagBitsEXT :: Flags -> PipelineCreationFeedbackFlagBitsEXT
-- | PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT indicates that the
-- feedback information is valid.
pattern PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT
-- |
-- PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT
-- indicates that a readily usable pipeline or pipeline stage was found
-- in the pipelineCache specified by the application in the
-- pipeline creation command.
--
-- An implementation should set the
-- PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT
-- bit if it was able to avoid the large majority of pipeline or pipeline
-- stage creation work by using the pipelineCache parameter of
-- createGraphicsPipelines, createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, or createComputePipelines.
-- When an implementation sets this bit for the entire pipeline, it
-- may leave it unset for any stage.
--
-- Note
--
-- Implementations are encouraged to provide a meaningful signal to
-- applications using this bit. The intention is to communicate to the
-- application that the pipeline or pipeline stage was created "as fast
-- as it gets" using the pipeline cache provided by the application. If
-- an implementation uses an internal cache, it is discouraged from
-- setting this bit as the feedback would be unactionable.
pattern PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT
-- | PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT
-- indicates that the base pipeline specified by the
-- basePipelineHandle or basePipelineIndex member of
-- the Vk*PipelineCreateInfo structure was used to accelerate
-- the creation of the pipeline.
--
-- An implementation should set the
-- PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT
-- bit if it was able to avoid a significant amount of work by using the
-- base pipeline.
--
-- Note
--
-- While "significant amount of work" is subjective, implementations are
-- encouraged to provide a meaningful signal to applications using this
-- bit. For example, a 1% reduction in duration may not warrant setting
-- this bit, while a 50% reduction would.
pattern PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT
type PipelineCreationFeedbackFlagsEXT = PipelineCreationFeedbackFlagBitsEXT
type EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION = 1
pattern EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION :: forall a. Integral a => a
type EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME = "VK_EXT_pipeline_creation_feedback"
pattern EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_pipeline_creation_feedback.PipelineCreationFeedbackFlagBitsEXT
module Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control
pattern ERROR_PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT - Structure
-- describing whether pipeline cache control can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDevicePipelineCreationCacheControlFeaturesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT
-- can also be used in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevicePipelineCreationCacheControlFeaturesEXT
PhysicalDevicePipelineCreationCacheControlFeaturesEXT :: Bool -> PhysicalDevicePipelineCreationCacheControlFeaturesEXT
-- | pipelineCreationCacheControl indicates that the
-- implementation supports:
--
--
-- - The following can be used in
-- Vk*PipelineCreateInfo::flags:
-- - The following can be used in
-- PipelineCacheCreateInfo::flags:
--
[$sel:pipelineCreationCacheControl:PhysicalDevicePipelineCreationCacheControlFeaturesEXT] :: PhysicalDevicePipelineCreationCacheControlFeaturesEXT -> Bool
type EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION = 3
pattern EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION :: forall a. Integral a => a
type EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME = "VK_EXT_pipeline_creation_cache_control"
pattern EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_pipeline_creation_cache_control.PhysicalDevicePipelineCreationCacheControlFeaturesEXT
module Vulkan.Extensions.VK_EXT_memory_priority
-- | VkPhysicalDeviceMemoryPriorityFeaturesEXT - Structure describing
-- memory priority features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceMemoryPriorityFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceMemoryPriorityFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceMemoryPriorityFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceMemoryPriorityFeaturesEXT
PhysicalDeviceMemoryPriorityFeaturesEXT :: Bool -> PhysicalDeviceMemoryPriorityFeaturesEXT
-- | memoryPriority indicates that the implementation supports
-- memory priorities specified at memory allocation time via
-- MemoryPriorityAllocateInfoEXT.
[$sel:memoryPriority:PhysicalDeviceMemoryPriorityFeaturesEXT] :: PhysicalDeviceMemoryPriorityFeaturesEXT -> Bool
-- | VkMemoryPriorityAllocateInfoEXT - Specify a memory allocation priority
--
-- Description
--
-- Memory allocations with higher priority may be more likely to
-- stay in device-local memory when the system is under memory pressure.
--
-- If this structure is not included, it is as if the priority
-- value were 0.5.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data MemoryPriorityAllocateInfoEXT
MemoryPriorityAllocateInfoEXT :: Float -> MemoryPriorityAllocateInfoEXT
-- | priority is a floating-point value between 0 and
-- 1, indicating the priority of the allocation relative to
-- other memory allocations. Larger values are higher priority. The
-- granularity of the priorities is implementation-dependent.
--
-- priority must be between 0 and 1,
-- inclusive
[$sel:priority:MemoryPriorityAllocateInfoEXT] :: MemoryPriorityAllocateInfoEXT -> Float
type EXT_MEMORY_PRIORITY_SPEC_VERSION = 1
pattern EXT_MEMORY_PRIORITY_SPEC_VERSION :: forall a. Integral a => a
type EXT_MEMORY_PRIORITY_EXTENSION_NAME = "VK_EXT_memory_priority"
pattern EXT_MEMORY_PRIORITY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_memory_priority.MemoryPriorityAllocateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_memory_priority.PhysicalDeviceMemoryPriorityFeaturesEXT
module Vulkan.Extensions.VK_EXT_inline_uniform_block
-- | VkPhysicalDeviceInlineUniformBlockFeaturesEXT - Structure describing
-- inline uniform block features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceInlineUniformBlockFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceInlineUniformBlockFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceInlineUniformBlockFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceInlineUniformBlockFeaturesEXT
PhysicalDeviceInlineUniformBlockFeaturesEXT :: Bool -> Bool -> PhysicalDeviceInlineUniformBlockFeaturesEXT
-- | inlineUniformBlock indicates whether the implementation
-- supports inline uniform block descriptors. If this feature is not
-- enabled, DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT must
-- not be used.
[$sel:inlineUniformBlock:PhysicalDeviceInlineUniformBlockFeaturesEXT] :: PhysicalDeviceInlineUniformBlockFeaturesEXT -> Bool
-- | descriptorBindingInlineUniformBlockUpdateAfterBind indicates
-- whether the implementation supports updating inline uniform block
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT.
[$sel:descriptorBindingInlineUniformBlockUpdateAfterBind:PhysicalDeviceInlineUniformBlockFeaturesEXT] :: PhysicalDeviceInlineUniformBlockFeaturesEXT -> Bool
-- | VkPhysicalDeviceInlineUniformBlockPropertiesEXT - Structure describing
-- inline uniform block properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceInlineUniformBlockPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceInlineUniformBlockPropertiesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceInlineUniformBlockPropertiesEXT
PhysicalDeviceInlineUniformBlockPropertiesEXT :: Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDeviceInlineUniformBlockPropertiesEXT
-- | maxInlineUniformBlockSize is the maximum size in bytes of an
-- inline uniform block binding.
[$sel:maxInlineUniformBlockSize:PhysicalDeviceInlineUniformBlockPropertiesEXT] :: PhysicalDeviceInlineUniformBlockPropertiesEXT -> Word32
[$sel:maxPerStageDescriptorInlineUniformBlocks:PhysicalDeviceInlineUniformBlockPropertiesEXT] :: PhysicalDeviceInlineUniformBlockPropertiesEXT -> Word32
-- | maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks is
-- similar to maxPerStageDescriptorInlineUniformBlocks but
-- counts descriptor bindings from descriptor sets created with or
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks:PhysicalDeviceInlineUniformBlockPropertiesEXT] :: PhysicalDeviceInlineUniformBlockPropertiesEXT -> Word32
-- | maxDescriptorSetInlineUniformBlocks is the maximum number of
-- inline uniform block bindings that can be included in
-- descriptor bindings in a pipeline layout across all pipeline shader
-- stages and descriptor set numbers. Descriptor bindings with a
-- descriptor type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT
-- count against this limit. Only descriptor bindings in descriptor set
-- layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit.
[$sel:maxDescriptorSetInlineUniformBlocks:PhysicalDeviceInlineUniformBlockPropertiesEXT] :: PhysicalDeviceInlineUniformBlockPropertiesEXT -> Word32
-- | maxDescriptorSetUpdateAfterBindInlineUniformBlocks is similar
-- to maxDescriptorSetInlineUniformBlocks but counts descriptor
-- bindings from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindInlineUniformBlocks:PhysicalDeviceInlineUniformBlockPropertiesEXT] :: PhysicalDeviceInlineUniformBlockPropertiesEXT -> Word32
-- | VkWriteDescriptorSetInlineUniformBlockEXT - Structure specifying
-- inline uniform block data
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data WriteDescriptorSetInlineUniformBlockEXT
WriteDescriptorSetInlineUniformBlockEXT :: Word32 -> Ptr () -> WriteDescriptorSetInlineUniformBlockEXT
-- | dataSize is the number of bytes of inline uniform block data
-- pointed to by pData.
--
-- dataSize must be an integer multiple of 4
--
-- dataSize must be greater than 0
[$sel:dataSize:WriteDescriptorSetInlineUniformBlockEXT] :: WriteDescriptorSetInlineUniformBlockEXT -> Word32
-- | pData is a pointer to dataSize number of bytes of
-- data to write to the inline uniform block.
--
-- pData must be a valid pointer to an array of
-- dataSize bytes
[$sel:data':WriteDescriptorSetInlineUniformBlockEXT] :: WriteDescriptorSetInlineUniformBlockEXT -> Ptr ()
-- | VkDescriptorPoolInlineUniformBlockCreateInfoEXT - Structure specifying
-- the maximum number of inline uniform block bindings of a newly created
-- descriptor pool
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data DescriptorPoolInlineUniformBlockCreateInfoEXT
DescriptorPoolInlineUniformBlockCreateInfoEXT :: Word32 -> DescriptorPoolInlineUniformBlockCreateInfoEXT
-- | maxInlineUniformBlockBindings is the number of inline uniform
-- block bindings to allocate.
[$sel:maxInlineUniformBlockBindings:DescriptorPoolInlineUniformBlockCreateInfoEXT] :: DescriptorPoolInlineUniformBlockCreateInfoEXT -> Word32
type EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION = 1
pattern EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION :: forall a. Integral a => a
type EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME = "VK_EXT_inline_uniform_block"
pattern EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_inline_uniform_block.WriteDescriptorSetInlineUniformBlockEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_inline_uniform_block.WriteDescriptorSetInlineUniformBlockEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_inline_uniform_block.DescriptorPoolInlineUniformBlockCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.WriteDescriptorSetInlineUniformBlockEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.WriteDescriptorSetInlineUniformBlockEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_inline_uniform_block.WriteDescriptorSetInlineUniformBlockEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_inline_uniform_block.WriteDescriptorSetInlineUniformBlockEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_inline_uniform_block.PhysicalDeviceInlineUniformBlockFeaturesEXT
module Vulkan.Extensions.VK_EXT_index_type_uint8
-- | VkPhysicalDeviceIndexTypeUint8FeaturesEXT - Structure describing
-- whether uint8 index type can be used
--
-- Members
--
-- The members of the PhysicalDeviceIndexTypeUint8FeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceIndexTypeUint8FeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceIndexTypeUint8FeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceIndexTypeUint8FeaturesEXT
PhysicalDeviceIndexTypeUint8FeaturesEXT :: Bool -> PhysicalDeviceIndexTypeUint8FeaturesEXT
-- | indexTypeUint8 indicates that INDEX_TYPE_UINT8_EXT can
-- be used with cmdBindIndexBuffer.
[$sel:indexTypeUint8:PhysicalDeviceIndexTypeUint8FeaturesEXT] :: PhysicalDeviceIndexTypeUint8FeaturesEXT -> Bool
type EXT_INDEX_TYPE_UINT8_SPEC_VERSION = 1
pattern EXT_INDEX_TYPE_UINT8_SPEC_VERSION :: forall a. Integral a => a
type EXT_INDEX_TYPE_UINT8_EXTENSION_NAME = "VK_EXT_index_type_uint8"
pattern EXT_INDEX_TYPE_UINT8_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_index_type_uint8.PhysicalDeviceIndexTypeUint8FeaturesEXT
module Vulkan.Extensions.VK_EXT_fragment_shader_interlock
-- | VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT - Structure
-- describing fragment shader interlock features that can be supported by
-- an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceFragmentShaderInterlockFeaturesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceFragmentShaderInterlockFeaturesEXT
PhysicalDeviceFragmentShaderInterlockFeaturesEXT :: Bool -> Bool -> Bool -> PhysicalDeviceFragmentShaderInterlockFeaturesEXT
-- | fragmentShaderSampleInterlock indicates that the
-- implementation supports the FragmentShaderSampleInterlockEXT
-- SPIR-V capability.
[$sel:fragmentShaderSampleInterlock:PhysicalDeviceFragmentShaderInterlockFeaturesEXT] :: PhysicalDeviceFragmentShaderInterlockFeaturesEXT -> Bool
-- | fragmentShaderPixelInterlock indicates that the
-- implementation supports the FragmentShaderPixelInterlockEXT
-- SPIR-V capability.
[$sel:fragmentShaderPixelInterlock:PhysicalDeviceFragmentShaderInterlockFeaturesEXT] :: PhysicalDeviceFragmentShaderInterlockFeaturesEXT -> Bool
-- | fragmentShaderShadingRateInterlock indicates that the
-- implementation supports the
-- FragmentShaderShadingRateInterlockEXT SPIR-V capability.
[$sel:fragmentShaderShadingRateInterlock:PhysicalDeviceFragmentShaderInterlockFeaturesEXT] :: PhysicalDeviceFragmentShaderInterlockFeaturesEXT -> Bool
type EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION = 1
pattern EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION :: forall a. Integral a => a
type EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME = "VK_EXT_fragment_shader_interlock"
pattern EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_fragment_shader_interlock.PhysicalDeviceFragmentShaderInterlockFeaturesEXT
module Vulkan.Extensions.VK_EXT_depth_clip_enable
-- | VkPhysicalDeviceDepthClipEnableFeaturesEXT - Structure indicating
-- support for explicit enable of depth clip
--
-- Members
--
-- The members of the PhysicalDeviceDepthClipEnableFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceDepthClipEnableFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceDepthClipEnableFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable this feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceDepthClipEnableFeaturesEXT
PhysicalDeviceDepthClipEnableFeaturesEXT :: Bool -> PhysicalDeviceDepthClipEnableFeaturesEXT
-- | depthClipEnable indicates that the implementation supports
-- setting the depth clipping operation explicitly via the
-- PipelineRasterizationDepthClipStateCreateInfoEXT pipeline
-- state. Otherwise depth clipping is only enabled when
-- PipelineRasterizationStateCreateInfo::depthClampEnable
-- is set to FALSE.
[$sel:depthClipEnable:PhysicalDeviceDepthClipEnableFeaturesEXT] :: PhysicalDeviceDepthClipEnableFeaturesEXT -> Bool
-- | VkPipelineRasterizationDepthClipStateCreateInfoEXT - Structure
-- specifying depth clipping state
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32,
-- PipelineRasterizationDepthClipStateCreateFlagsEXT,
-- StructureType
data PipelineRasterizationDepthClipStateCreateInfoEXT
PipelineRasterizationDepthClipStateCreateInfoEXT :: PipelineRasterizationDepthClipStateCreateFlagsEXT -> Bool -> PipelineRasterizationDepthClipStateCreateInfoEXT
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:PipelineRasterizationDepthClipStateCreateInfoEXT] :: PipelineRasterizationDepthClipStateCreateInfoEXT -> PipelineRasterizationDepthClipStateCreateFlagsEXT
-- | depthClipEnable controls whether depth clipping is enabled as
-- described in Primitive Clipping.
[$sel:depthClipEnable:PipelineRasterizationDepthClipStateCreateInfoEXT] :: PipelineRasterizationDepthClipStateCreateInfoEXT -> Bool
-- | VkPipelineRasterizationDepthClipStateCreateFlagsEXT - Reserved for
-- future use
--
-- Description
--
-- PipelineRasterizationDepthClipStateCreateFlagsEXT is a bitmask
-- type for setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineRasterizationDepthClipStateCreateInfoEXT
newtype PipelineRasterizationDepthClipStateCreateFlagsEXT
PipelineRasterizationDepthClipStateCreateFlagsEXT :: Flags -> PipelineRasterizationDepthClipStateCreateFlagsEXT
type EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION = 1
pattern EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION :: forall a. Integral a => a
type EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME = "VK_EXT_depth_clip_enable"
pattern EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_depth_clip_enable.PipelineRasterizationDepthClipStateCreateFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_depth_clip_enable.PhysicalDeviceDepthClipEnableFeaturesEXT
module Vulkan.Extensions.VK_EXT_conservative_rasterization
-- | VkPhysicalDeviceConservativeRasterizationPropertiesEXT - Structure
-- describing conservative raster properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceConservativeRasterizationPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceConservativeRasterizationPropertiesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits and properties.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceConservativeRasterizationPropertiesEXT
PhysicalDeviceConservativeRasterizationPropertiesEXT :: Float -> Float -> Float -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceConservativeRasterizationPropertiesEXT
-- | primitiveOverestimationSize is the size in pixels the
-- generating primitive is increased at each of its edges during
-- conservative rasterization overestimation mode. Even with a size of
-- 0.0, conservative rasterization overestimation rules still apply and
-- if any part of the pixel rectangle is covered by the generating
-- primitive, fragments are generated for the entire pixel. However
-- implementations may make the pixel coverage area even more
-- conservative by increasing the size of the generating primitive.
[$sel:primitiveOverestimationSize:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Float
-- | maxExtraPrimitiveOverestimationSize is the maximum size in
-- pixels of extra overestimation the implementation supports in the
-- pipeline state. A value of 0.0 means the implementation does not
-- support any additional overestimation of the generating primitive
-- during conservative rasterization. A value above 0.0 allows the
-- application to further increase the size of the generating primitive
-- during conservative rasterization overestimation.
[$sel:maxExtraPrimitiveOverestimationSize:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Float
-- | extraPrimitiveOverestimationSizeGranularity is the
-- granularity of extra overestimation that can be specified in the
-- pipeline state between 0.0 and
-- maxExtraPrimitiveOverestimationSize inclusive. A value of 0.0
-- means the implementation can use the smallest representable non-zero
-- value in the screen space pixel fixed-point grid.
[$sel:extraPrimitiveOverestimationSizeGranularity:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Float
-- | primitiveUnderestimation is true if the implementation
-- supports the CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT
-- conservative rasterization mode in addition to
-- CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT. Otherwise the
-- implementation only supports
-- CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT.
[$sel:primitiveUnderestimation:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Bool
-- | conservativePointAndLineRasterization is true if the
-- implementation supports conservative rasterization of point and line
-- primitives as well as triangle primitives. Otherwise the
-- implementation only supports triangle primitives.
[$sel:conservativePointAndLineRasterization:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Bool
-- | degenerateTrianglesRasterized is false if the implementation
-- culls primitives generated from triangles that become zero area after
-- they are quantized to the fixed-point rasterization pixel grid.
-- degenerateTrianglesRasterized is true if these primitives are
-- not culled and the provoking vertex attributes and depth value are
-- used for the fragments. The primitive area calculation is done on the
-- primitive generated from the clipped triangle if applicable. Zero area
-- primitives are backfacing and the application can enable
-- backface culling if desired.
[$sel:degenerateTrianglesRasterized:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Bool
-- | degenerateLinesRasterized is false if the implementation
-- culls lines that become zero length after they are quantized to the
-- fixed-point rasterization pixel grid.
-- degenerateLinesRasterized is true if zero length lines are
-- not culled and the provoking vertex attributes and depth value are
-- used for the fragments.
[$sel:degenerateLinesRasterized:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Bool
-- | fullyCoveredFragmentShaderInputVariable is true if the
-- implementation supports the SPIR-V builtin fragment shader input
-- variable FullyCoveredEXT which specifies that conservative
-- rasterization is enabled and the fragment area is fully covered by the
-- generating primitive.
[$sel:fullyCoveredFragmentShaderInputVariable:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Bool
-- | conservativeRasterizationPostDepthCoverage is true if the
-- implementation supports conservative rasterization with the
-- PostDepthCoverage execution mode enabled. When supported the
-- SampleMask built-in input variable will reflect the coverage
-- after the early per-fragment depth and stencil tests are applied even
-- when conservative rasterization is enabled. Otherwise
-- PostDepthCoverage execution mode must not be used when
-- conservative rasterization is enabled.
[$sel:conservativeRasterizationPostDepthCoverage:PhysicalDeviceConservativeRasterizationPropertiesEXT] :: PhysicalDeviceConservativeRasterizationPropertiesEXT -> Bool
-- | VkPipelineRasterizationConservativeStateCreateInfoEXT - Structure
-- specifying conservative raster state
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ConservativeRasterizationModeEXT,
-- PipelineRasterizationConservativeStateCreateFlagsEXT,
-- StructureType
data PipelineRasterizationConservativeStateCreateInfoEXT
PipelineRasterizationConservativeStateCreateInfoEXT :: PipelineRasterizationConservativeStateCreateFlagsEXT -> ConservativeRasterizationModeEXT -> Float -> PipelineRasterizationConservativeStateCreateInfoEXT
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:PipelineRasterizationConservativeStateCreateInfoEXT] :: PipelineRasterizationConservativeStateCreateInfoEXT -> PipelineRasterizationConservativeStateCreateFlagsEXT
-- | conservativeRasterizationMode is the conservative
-- rasterization mode to use.
--
-- conservativeRasterizationMode must be a valid
-- ConservativeRasterizationModeEXT value
[$sel:conservativeRasterizationMode:PipelineRasterizationConservativeStateCreateInfoEXT] :: PipelineRasterizationConservativeStateCreateInfoEXT -> ConservativeRasterizationModeEXT
-- | extraPrimitiveOverestimationSize is the extra size in pixels
-- to increase the generating primitive during conservative rasterization
-- at each of its edges in X and Y equally in screen
-- space beyond the base overestimation specified in
-- PhysicalDeviceConservativeRasterizationPropertiesEXT::primitiveOverestimationSize.
--
-- extraPrimitiveOverestimationSize must be in the range
-- of 0.0 to
-- PhysicalDeviceConservativeRasterizationPropertiesEXT::maxExtraPrimitiveOverestimationSize
-- inclusive
[$sel:extraPrimitiveOverestimationSize:PipelineRasterizationConservativeStateCreateInfoEXT] :: PipelineRasterizationConservativeStateCreateInfoEXT -> Float
-- | VkPipelineRasterizationConservativeStateCreateFlagsEXT - Reserved for
-- future use
--
-- Description
--
-- PipelineRasterizationConservativeStateCreateFlagsEXT is a
-- bitmask type for setting a mask, but is currently reserved for future
-- use.
--
-- See Also
--
-- PipelineRasterizationConservativeStateCreateInfoEXT
newtype PipelineRasterizationConservativeStateCreateFlagsEXT
PipelineRasterizationConservativeStateCreateFlagsEXT :: Flags -> PipelineRasterizationConservativeStateCreateFlagsEXT
-- | VkConservativeRasterizationModeEXT - Specify the conservative
-- rasterization mode
--
-- See Also
--
-- PipelineRasterizationConservativeStateCreateInfoEXT
newtype ConservativeRasterizationModeEXT
ConservativeRasterizationModeEXT :: Int32 -> ConservativeRasterizationModeEXT
-- | CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT specifies that
-- conservative rasterization is disabled and rasterization proceeds as
-- normal.
pattern CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT :: ConservativeRasterizationModeEXT
-- | CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT specifies that
-- conservative rasterization is enabled in overestimation mode.
pattern CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT :: ConservativeRasterizationModeEXT
-- | CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT specifies
-- that conservative rasterization is enabled in underestimation mode.
pattern CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT :: ConservativeRasterizationModeEXT
type EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION = 1
pattern EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION :: forall a. Integral a => a
type EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME = "VK_EXT_conservative_rasterization"
pattern EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conservative_rasterization.ConservativeRasterizationModeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conservative_rasterization.ConservativeRasterizationModeEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_conservative_rasterization.ConservativeRasterizationModeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conservative_rasterization.ConservativeRasterizationModeEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conservative_rasterization.ConservativeRasterizationModeEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_conservative_rasterization.ConservativeRasterizationModeEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_conservative_rasterization.PipelineRasterizationConservativeStateCreateFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conservative_rasterization.PhysicalDeviceConservativeRasterizationPropertiesEXT
module Vulkan.Extensions.VK_EXT_blend_operation_advanced
-- | VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT - Structure
-- describing advanced blending features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceBlendOperationAdvancedFeaturesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT can also
-- be included in the pNext chain of DeviceCreateInfo to
-- enable the features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceBlendOperationAdvancedFeaturesEXT
PhysicalDeviceBlendOperationAdvancedFeaturesEXT :: Bool -> PhysicalDeviceBlendOperationAdvancedFeaturesEXT
-- | advancedBlendCoherentOperations specifies whether blending
-- using advanced blend operations is guaranteed to execute
-- atomically and in primitive order. If this is TRUE,
-- ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT is treated the
-- same as ACCESS_COLOR_ATTACHMENT_READ_BIT, and advanced blending
-- needs no additional synchronization over basic blending. If this is
-- FALSE, then memory dependencies are required to guarantee order
-- between two advanced blending operations that occur on the same
-- sample.
[$sel:advancedBlendCoherentOperations:PhysicalDeviceBlendOperationAdvancedFeaturesEXT] :: PhysicalDeviceBlendOperationAdvancedFeaturesEXT -> Bool
-- | VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT - Structure
-- describing advanced blending limits that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceBlendOperationAdvancedPropertiesEXT
-- structure is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceBlendOperationAdvancedPropertiesEXT
PhysicalDeviceBlendOperationAdvancedPropertiesEXT :: Word32 -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceBlendOperationAdvancedPropertiesEXT
-- | advancedBlendMaxColorAttachments is one greater than the
-- highest color attachment index that can be used in a subpass,
-- for a pipeline that uses an advanced blend operation.
[$sel:advancedBlendMaxColorAttachments:PhysicalDeviceBlendOperationAdvancedPropertiesEXT] :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT -> Word32
-- | advancedBlendIndependentBlend specifies whether advanced
-- blend operations can vary per-attachment.
[$sel:advancedBlendIndependentBlend:PhysicalDeviceBlendOperationAdvancedPropertiesEXT] :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT -> Bool
-- | advancedBlendNonPremultipliedSrcColor specifies whether the
-- source color can be treated as non-premultiplied. If this is
-- FALSE, then
-- PipelineColorBlendAdvancedStateCreateInfoEXT::srcPremultiplied
-- must be TRUE.
[$sel:advancedBlendNonPremultipliedSrcColor:PhysicalDeviceBlendOperationAdvancedPropertiesEXT] :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT -> Bool
-- | advancedBlendNonPremultipliedDstColor specifies whether the
-- destination color can be treated as non-premultiplied. If this
-- is FALSE, then
-- PipelineColorBlendAdvancedStateCreateInfoEXT::dstPremultiplied
-- must be TRUE.
[$sel:advancedBlendNonPremultipliedDstColor:PhysicalDeviceBlendOperationAdvancedPropertiesEXT] :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT -> Bool
-- | advancedBlendCorrelatedOverlap specifies whether the overlap
-- mode can be treated as correlated. If this is FALSE,
-- then
-- PipelineColorBlendAdvancedStateCreateInfoEXT::blendOverlap
-- must be BLEND_OVERLAP_UNCORRELATED_EXT.
[$sel:advancedBlendCorrelatedOverlap:PhysicalDeviceBlendOperationAdvancedPropertiesEXT] :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT -> Bool
-- | advancedBlendAllOperations specifies whether all advanced
-- blend operation enums are supported. See the valid usage of
-- PipelineColorBlendAttachmentState.
[$sel:advancedBlendAllOperations:PhysicalDeviceBlendOperationAdvancedPropertiesEXT] :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT -> Bool
-- | VkPipelineColorBlendAdvancedStateCreateInfoEXT - Structure specifying
-- parameters that affect advanced blend operations
--
-- Description
--
-- If this structure is not present, srcPremultiplied and
-- dstPremultiplied are both considered to be TRUE, and
-- blendOverlap is considered to be
-- BLEND_OVERLAP_UNCORRELATED_EXT.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- BlendOverlapEXT, Bool32, StructureType
data PipelineColorBlendAdvancedStateCreateInfoEXT
PipelineColorBlendAdvancedStateCreateInfoEXT :: Bool -> Bool -> BlendOverlapEXT -> PipelineColorBlendAdvancedStateCreateInfoEXT
-- | srcPremultiplied specifies whether the source color of the
-- blend operation is treated as premultiplied.
[$sel:srcPremultiplied:PipelineColorBlendAdvancedStateCreateInfoEXT] :: PipelineColorBlendAdvancedStateCreateInfoEXT -> Bool
-- | dstPremultiplied specifies whether the destination color of
-- the blend operation is treated as premultiplied.
[$sel:dstPremultiplied:PipelineColorBlendAdvancedStateCreateInfoEXT] :: PipelineColorBlendAdvancedStateCreateInfoEXT -> Bool
-- | blendOverlap is a BlendOverlapEXT value specifying how
-- the source and destination sample’s coverage is correlated.
[$sel:blendOverlap:PipelineColorBlendAdvancedStateCreateInfoEXT] :: PipelineColorBlendAdvancedStateCreateInfoEXT -> BlendOverlapEXT
-- | VkBlendOverlapEXT - Enumerant specifying the blend overlap parameter
--
-- Description
--
-- '
--
-- TODO: table
--
-- Advanced Blend Overlap Modes
--
-- See Also
--
-- PipelineColorBlendAdvancedStateCreateInfoEXT
newtype BlendOverlapEXT
BlendOverlapEXT :: Int32 -> BlendOverlapEXT
-- | BLEND_OVERLAP_UNCORRELATED_EXT specifies that there is no
-- correlation between the source and destination coverage.
pattern BLEND_OVERLAP_UNCORRELATED_EXT :: BlendOverlapEXT
-- | BLEND_OVERLAP_DISJOINT_EXT specifies that the source and
-- destination coverage are considered to have minimal overlap.
pattern BLEND_OVERLAP_DISJOINT_EXT :: BlendOverlapEXT
-- | BLEND_OVERLAP_CONJOINT_EXT specifies that the source and
-- destination coverage are considered to have maximal overlap.
pattern BLEND_OVERLAP_CONJOINT_EXT :: BlendOverlapEXT
type EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION = 2
pattern EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION :: forall a. Integral a => a
type EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME = "VK_EXT_blend_operation_advanced"
pattern EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_blend_operation_advanced.BlendOverlapEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_blend_operation_advanced.BlendOverlapEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_blend_operation_advanced.BlendOverlapEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_blend_operation_advanced.BlendOverlapEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_blend_operation_advanced.PipelineColorBlendAdvancedStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_blend_operation_advanced.BlendOverlapEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_blend_operation_advanced.BlendOverlapEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_blend_operation_advanced.PhysicalDeviceBlendOperationAdvancedFeaturesEXT
module Vulkan.Extensions.VK_AMD_texture_gather_bias_lod
-- | VkTextureLODGatherFormatPropertiesAMD - Structure informing whether or
-- not texture gather bias/LOD functionality is supported for a given
-- image format and a given physical device.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data TextureLODGatherFormatPropertiesAMD
TextureLODGatherFormatPropertiesAMD :: Bool -> TextureLODGatherFormatPropertiesAMD
-- | supportsTextureGatherLODBiasAMD tells if the image format can
-- be used with texture gather bias/LOD functions, as introduced by the
-- VK_AMD_texture_gather_bias_lod extension. This field is set
-- by the implementation. User-specified value is ignored.
[$sel:supportsTextureGatherLODBiasAMD:TextureLODGatherFormatPropertiesAMD] :: TextureLODGatherFormatPropertiesAMD -> Bool
type AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION = 1
pattern AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION :: forall a. Integral a => a
type AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME = "VK_AMD_texture_gather_bias_lod"
pattern AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_texture_gather_bias_lod.TextureLODGatherFormatPropertiesAMD
module Vulkan.Extensions.VK_AMD_shader_core_properties2
-- | VkPhysicalDeviceShaderCoreProperties2AMD - Structure describing shader
-- core properties that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceShaderCoreProperties2AMD
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceShaderCoreProperties2AMD structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ShaderCorePropertiesFlagsAMD, StructureType
data PhysicalDeviceShaderCoreProperties2AMD
PhysicalDeviceShaderCoreProperties2AMD :: ShaderCorePropertiesFlagsAMD -> Word32 -> PhysicalDeviceShaderCoreProperties2AMD
-- | shaderCoreFeatures is a bitmask of
-- ShaderCorePropertiesFlagBitsAMD indicating the set of features
-- supported by the shader core.
[$sel:shaderCoreFeatures:PhysicalDeviceShaderCoreProperties2AMD] :: PhysicalDeviceShaderCoreProperties2AMD -> ShaderCorePropertiesFlagsAMD
-- | activeComputeUnitCount is an unsigned integer value
-- indicating the number of compute units that have been enabled.
[$sel:activeComputeUnitCount:PhysicalDeviceShaderCoreProperties2AMD] :: PhysicalDeviceShaderCoreProperties2AMD -> Word32
-- | VkShaderCorePropertiesFlagBitsAMD - Bitmask specifying shader core
-- properties
--
-- See Also
--
-- PhysicalDeviceShaderCoreProperties2AMD,
-- ShaderCorePropertiesFlagsAMD
newtype ShaderCorePropertiesFlagBitsAMD
ShaderCorePropertiesFlagBitsAMD :: Flags -> ShaderCorePropertiesFlagBitsAMD
type ShaderCorePropertiesFlagsAMD = ShaderCorePropertiesFlagBitsAMD
type AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION = 1
pattern AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME = "VK_AMD_shader_core_properties2"
pattern AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance Data.Bits.Bits Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
instance GHC.Classes.Ord Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_shader_core_properties2.PhysicalDeviceShaderCoreProperties2AMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
instance GHC.Read.Read Vulkan.Extensions.VK_AMD_shader_core_properties2.ShaderCorePropertiesFlagBitsAMD
module Vulkan.Extensions.VK_AMD_pipeline_compiler_control
-- | VkPipelineCompilerControlCreateInfoAMD - Structure used to pass
-- compilation control flags to a pipeline
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineCompilerControlFlagsAMD, StructureType
data PipelineCompilerControlCreateInfoAMD
PipelineCompilerControlCreateInfoAMD :: PipelineCompilerControlFlagsAMD -> PipelineCompilerControlCreateInfoAMD
-- | compilerControlFlags is a bitmask of
-- PipelineCompilerControlFlagBitsAMD affecting how the pipeline
-- will be compiled.
--
-- compilerControlFlags must be 0
[$sel:compilerControlFlags:PipelineCompilerControlCreateInfoAMD] :: PipelineCompilerControlCreateInfoAMD -> PipelineCompilerControlFlagsAMD
-- | VkPipelineCompilerControlFlagBitsAMD - Enum specifying available
-- compilation control flags
--
-- See Also
--
-- PipelineCompilerControlFlagsAMD
newtype PipelineCompilerControlFlagBitsAMD
PipelineCompilerControlFlagBitsAMD :: Flags -> PipelineCompilerControlFlagBitsAMD
type PipelineCompilerControlFlagsAMD = PipelineCompilerControlFlagBitsAMD
type AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION = 1
pattern AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION :: forall a. Integral a => a
type AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME = "VK_AMD_pipeline_compiler_control"
pattern AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance Data.Bits.Bits Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
instance GHC.Classes.Ord Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlCreateInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
instance GHC.Read.Read Vulkan.Extensions.VK_AMD_pipeline_compiler_control.PipelineCompilerControlFlagBitsAMD
module Vulkan.Extensions.VK_AMD_device_coherent_memory
-- | VkPhysicalDeviceCoherentMemoryFeaturesAMD - Structure describing
-- whether device coherent memory can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceCoherentMemoryFeaturesAMD
-- structure describe the following features:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceCoherentMemoryFeaturesAMD
PhysicalDeviceCoherentMemoryFeaturesAMD :: Bool -> PhysicalDeviceCoherentMemoryFeaturesAMD
-- | deviceCoherentMemory indicates that the implementation
-- supports device coherent memory.
[$sel:deviceCoherentMemory:PhysicalDeviceCoherentMemoryFeaturesAMD] :: PhysicalDeviceCoherentMemoryFeaturesAMD -> Bool
type AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION = 1
pattern AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION :: forall a. Integral a => a
type AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME = "VK_AMD_device_coherent_memory"
pattern AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_device_coherent_memory.PhysicalDeviceCoherentMemoryFeaturesAMD
module Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model
-- | VkPhysicalDeviceVulkanMemoryModelFeatures - Structure describing
-- features supported by the memory model
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceVulkanMemoryModelFeatures
PhysicalDeviceVulkanMemoryModelFeatures :: Bool -> Bool -> Bool -> PhysicalDeviceVulkanMemoryModelFeatures
-- | vulkanMemoryModel indicates whether the Vulkan Memory Model
-- is supported, as defined in Vulkan Memory Model. This also
-- indicates whether shader modules can declare the
-- VulkanMemoryModel capability.
[$sel:vulkanMemoryModel:PhysicalDeviceVulkanMemoryModelFeatures] :: PhysicalDeviceVulkanMemoryModelFeatures -> Bool
-- | vulkanMemoryModelDeviceScope indicates whether the Vulkan
-- Memory Model can use Device scope synchronization. This also
-- indicates whether shader modules can declare the
-- VulkanMemoryModelDeviceScope capability.
[$sel:vulkanMemoryModelDeviceScope:PhysicalDeviceVulkanMemoryModelFeatures] :: PhysicalDeviceVulkanMemoryModelFeatures -> Bool
-- | vulkanMemoryModelAvailabilityVisibilityChains indicates
-- whether the Vulkan Memory Model can use availability and visibility
-- chains with more than one element.
[$sel:vulkanMemoryModelAvailabilityVisibilityChains:PhysicalDeviceVulkanMemoryModelFeatures] :: PhysicalDeviceVulkanMemoryModelFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_vulkan_memory_model.PhysicalDeviceVulkanMemoryModelFeatures
module Vulkan.Extensions.VK_KHR_vulkan_memory_model
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR :: StructureType
type PhysicalDeviceVulkanMemoryModelFeaturesKHR = PhysicalDeviceVulkanMemoryModelFeatures
type KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION = 3
pattern KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION :: forall a. Integral a => a
type KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME = "VK_KHR_vulkan_memory_model"
pattern KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout
-- | VkPhysicalDeviceUniformBufferStandardLayoutFeatures - Structure
-- indicating support for std430-like packing in uniform buffers
--
-- Members
--
-- The members of the
-- PhysicalDeviceUniformBufferStandardLayoutFeatures structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceUniformBufferStandardLayoutFeatures
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceUniformBufferStandardLayoutFeatures can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable this feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceUniformBufferStandardLayoutFeatures
PhysicalDeviceUniformBufferStandardLayoutFeatures :: Bool -> PhysicalDeviceUniformBufferStandardLayoutFeatures
-- | uniformBufferStandardLayout indicates that the implementation
-- supports the same layouts for uniform buffers as for storage and other
-- kinds of buffers. See Standard Buffer Layout.
[$sel:uniformBufferStandardLayout:PhysicalDeviceUniformBufferStandardLayoutFeatures] :: PhysicalDeviceUniformBufferStandardLayoutFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_uniform_buffer_standard_layout.PhysicalDeviceUniformBufferStandardLayoutFeatures
module Vulkan.Extensions.VK_KHR_uniform_buffer_standard_layout
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR :: StructureType
type PhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = PhysicalDeviceUniformBufferStandardLayoutFeatures
type KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION = 1
pattern KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION :: forall a. Integral a => a
type KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME = "VK_KHR_uniform_buffer_standard_layout"
pattern KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types
-- | VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures - Structure
-- describing the extended types subgroups support feature for an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceShaderSubgroupExtendedTypesFeatures
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderSubgroupExtendedTypesFeatures
PhysicalDeviceShaderSubgroupExtendedTypesFeatures :: Bool -> PhysicalDeviceShaderSubgroupExtendedTypesFeatures
-- | shaderSubgroupExtendedTypes is a boolean that specifies
-- whether subgroup operations can use 8-bit integer, 16-bit integer,
-- 64-bit integer, 16-bit floating-point, and vectors of these types in
-- group operations with subgroup scopeif the
-- implementation supports the types.
[$sel:shaderSubgroupExtendedTypes:PhysicalDeviceShaderSubgroupExtendedTypesFeatures] :: PhysicalDeviceShaderSubgroupExtendedTypesFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_shader_subgroup_extended_types.PhysicalDeviceShaderSubgroupExtendedTypesFeatures
module Vulkan.Extensions.VK_KHR_shader_subgroup_extended_types
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR :: StructureType
type PhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = PhysicalDeviceShaderSubgroupExtendedTypesFeatures
type KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION = 1
pattern KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME = "VK_KHR_shader_subgroup_extended_types"
pattern KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls
-- | VkPhysicalDeviceFloatControlsProperties - Structure describing
-- properties supported by VK_KHR_shader_float_controls
--
-- Members
--
-- The members of the PhysicalDeviceFloatControlsProperties
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceFloatControlsProperties structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, ShaderFloatControlsIndependence,
-- StructureType
data PhysicalDeviceFloatControlsProperties
PhysicalDeviceFloatControlsProperties :: ShaderFloatControlsIndependence -> ShaderFloatControlsIndependence -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceFloatControlsProperties
-- | denormBehaviorIndependence is a
-- ShaderFloatControlsIndependence value indicating whether, and
-- how, denorm behavior can be set independently for different bit
-- widths.
[$sel:denormBehaviorIndependence:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> ShaderFloatControlsIndependence
-- | roundingModeIndependence is a
-- ShaderFloatControlsIndependence value indicating whether, and
-- how, rounding modes can be set independently for different bit widths.
[$sel:roundingModeIndependence:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> ShaderFloatControlsIndependence
-- | shaderSignedZeroInfNanPreserveFloat16 is a boolean value
-- indicating whether sign of a zero, Nans and <math> can be
-- preserved in 16-bit floating-point computations. It also indicates
-- whether the SignedZeroInfNanPreserve execution mode
-- can be used for 16-bit floating-point types.
[$sel:shaderSignedZeroInfNanPreserveFloat16:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderSignedZeroInfNanPreserveFloat32 is a boolean value
-- indicating whether sign of a zero, Nans and <math> can be
-- preserved in 32-bit floating-point computations. It also indicates
-- whether the SignedZeroInfNanPreserve execution mode
-- can be used for 32-bit floating-point types.
[$sel:shaderSignedZeroInfNanPreserveFloat32:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderSignedZeroInfNanPreserveFloat64 is a boolean value
-- indicating whether sign of a zero, Nans and <math> can be
-- preserved in 64-bit floating-point computations. It also indicates
-- whether the SignedZeroInfNanPreserve execution mode
-- can be used for 64-bit floating-point types.
[$sel:shaderSignedZeroInfNanPreserveFloat64:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderDenormPreserveFloat16 is a boolean value indicating
-- whether denormals can be preserved in 16-bit floating-point
-- computations. It also indicates whether the DenormPreserve
-- execution mode can be used for 16-bit floating-point types.
[$sel:shaderDenormPreserveFloat16:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderDenormPreserveFloat32 is a boolean value indicating
-- whether denormals can be preserved in 32-bit floating-point
-- computations. It also indicates whether the DenormPreserve
-- execution mode can be used for 32-bit floating-point types.
[$sel:shaderDenormPreserveFloat32:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderDenormPreserveFloat64 is a boolean value indicating
-- whether denormals can be preserved in 64-bit floating-point
-- computations. It also indicates whether the DenormPreserve
-- execution mode can be used for 64-bit floating-point types.
[$sel:shaderDenormPreserveFloat64:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderDenormFlushToZeroFloat16 is a boolean value indicating
-- whether denormals can be flushed to zero in 16-bit
-- floating-point computations. It also indicates whether the
-- DenormFlushToZero execution mode can be used for
-- 16-bit floating-point types.
[$sel:shaderDenormFlushToZeroFloat16:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderDenormFlushToZeroFloat32 is a boolean value indicating
-- whether denormals can be flushed to zero in 32-bit
-- floating-point computations. It also indicates whether the
-- DenormFlushToZero execution mode can be used for
-- 32-bit floating-point types.
[$sel:shaderDenormFlushToZeroFloat32:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderDenormFlushToZeroFloat64 is a boolean value indicating
-- whether denormals can be flushed to zero in 64-bit
-- floating-point computations. It also indicates whether the
-- DenormFlushToZero execution mode can be used for
-- 64-bit floating-point types.
[$sel:shaderDenormFlushToZeroFloat64:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderRoundingModeRTEFloat16 is a boolean value indicating
-- whether an implementation supports the round-to-nearest-even rounding
-- mode for 16-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTE execution mode
-- can be used for 16-bit floating-point types.
[$sel:shaderRoundingModeRTEFloat16:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderRoundingModeRTEFloat32 is a boolean value indicating
-- whether an implementation supports the round-to-nearest-even rounding
-- mode for 32-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTE execution mode
-- can be used for 32-bit floating-point types.
[$sel:shaderRoundingModeRTEFloat32:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderRoundingModeRTEFloat64 is a boolean value indicating
-- whether an implementation supports the round-to-nearest-even rounding
-- mode for 64-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTE execution mode
-- can be used for 64-bit floating-point types.
[$sel:shaderRoundingModeRTEFloat64:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderRoundingModeRTZFloat16 is a boolean value indicating
-- whether an implementation supports the round-towards-zero rounding
-- mode for 16-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTZ execution mode
-- can be used for 16-bit floating-point types.
[$sel:shaderRoundingModeRTZFloat16:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderRoundingModeRTZFloat32 is a boolean value indicating
-- whether an implementation supports the round-towards-zero rounding
-- mode for 32-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTZ execution mode
-- can be used for 32-bit floating-point types.
[$sel:shaderRoundingModeRTZFloat32:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | shaderRoundingModeRTZFloat64 is a boolean value indicating
-- whether an implementation supports the round-towards-zero rounding
-- mode for 64-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTZ execution mode
-- can be used for 64-bit floating-point types.
[$sel:shaderRoundingModeRTZFloat64:PhysicalDeviceFloatControlsProperties] :: PhysicalDeviceFloatControlsProperties -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkShaderFloatControlsIndependence - Enum specifying whether, and how,
-- shader float controls can be set separately
--
-- See Also
--
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceVulkan12Properties
newtype ShaderFloatControlsIndependence
ShaderFloatControlsIndependence :: Int32 -> ShaderFloatControlsIndependence
-- | SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY specifies that
-- shader float controls for 32-bit floating point can be set
-- independently; other bit widths must be set identically to each
-- other.
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY :: ShaderFloatControlsIndependence
-- | SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL specifies that shader
-- float controls for all bit widths can be set independently.
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL :: ShaderFloatControlsIndependence
-- | SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE specifies that shader
-- float controls for all bit widths must be set identically.
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE :: ShaderFloatControlsIndependence
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_shader_float_controls.PhysicalDeviceFloatControlsProperties
module Vulkan.Extensions.VK_KHR_shader_float_controls
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR :: StructureType
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR :: ShaderFloatControlsIndependence
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR :: ShaderFloatControlsIndependence
pattern SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR :: ShaderFloatControlsIndependence
type ShaderFloatControlsIndependenceKHR = ShaderFloatControlsIndependence
type PhysicalDeviceFloatControlsPropertiesKHR = PhysicalDeviceFloatControlsProperties
type KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION = 4
pattern KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME = "VK_KHR_shader_float_controls"
pattern KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8
-- | VkPhysicalDeviceShaderFloat16Int8Features - Structure describing
-- features supported by VK_KHR_shader_float16_int8
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderFloat16Int8Features
PhysicalDeviceShaderFloat16Int8Features :: Bool -> Bool -> PhysicalDeviceShaderFloat16Int8Features
-- | shaderFloat16 indicates whether 16-bit floats (halfs) are
-- supported in shader code. This also indicates whether shader modules
-- can declare the Float16 capability. However, this only
-- enables a subset of the storage classes that SPIR-V allows for the
-- Float16 SPIR-V capability: Declaring and using 16-bit floats
-- in the Private, Workgroup, and Function
-- storage classes is enabled, while declaring them in the interface
-- storage classes (e.g., UniformConstant, Uniform,
-- StorageBuffer, Input, Output, and
-- PushConstant) is not enabled.
[$sel:shaderFloat16:PhysicalDeviceShaderFloat16Int8Features] :: PhysicalDeviceShaderFloat16Int8Features -> Bool
-- | shaderInt8 indicates whether 8-bit integers (signed and
-- unsigned) are supported in shader code. This also indicates whether
-- shader modules can declare the Int8 capability.
-- However, this only enables a subset of the storage classes that SPIR-V
-- allows for the Int8 SPIR-V capability: Declaring and using
-- 8-bit integers in the Private, Workgroup, and
-- Function storage classes is enabled, while declaring them in
-- the interface storage classes (e.g., UniformConstant,
-- Uniform, StorageBuffer, Input,
-- Output, and PushConstant) is not enabled.
[$sel:shaderInt8:PhysicalDeviceShaderFloat16Int8Features] :: PhysicalDeviceShaderFloat16Int8Features -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_shader_float16_int8.PhysicalDeviceShaderFloat16Int8Features
module Vulkan.Extensions.VK_KHR_shader_float16_int8
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR :: StructureType
type PhysicalDeviceShaderFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features
type PhysicalDeviceFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features
type KHR_SHADER_FLOAT16_INT8_SPEC_VERSION = 1
pattern KHR_SHADER_FLOAT16_INT8_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME = "VK_KHR_shader_float16_int8"
pattern KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64
-- | VkPhysicalDeviceShaderAtomicInt64Features - Structure describing
-- features supported by VK_KHR_shader_atomic_int64
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderAtomicInt64Features
PhysicalDeviceShaderAtomicInt64Features :: Bool -> Bool -> PhysicalDeviceShaderAtomicInt64Features
-- | shaderBufferInt64Atomics indicates whether shaders can
-- support 64-bit unsigned and signed integer atomic operations on
-- buffers.
[$sel:shaderBufferInt64Atomics:PhysicalDeviceShaderAtomicInt64Features] :: PhysicalDeviceShaderAtomicInt64Features -> Bool
-- | shaderSharedInt64Atomics indicates whether shaders can
-- support 64-bit unsigned and signed integer atomic operations on shared
-- memory.
[$sel:shaderSharedInt64Atomics:PhysicalDeviceShaderAtomicInt64Features] :: PhysicalDeviceShaderAtomicInt64Features -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_shader_atomic_int64.PhysicalDeviceShaderAtomicInt64Features
module Vulkan.Extensions.VK_KHR_shader_atomic_int64
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR :: StructureType
type PhysicalDeviceShaderAtomicInt64FeaturesKHR = PhysicalDeviceShaderAtomicInt64Features
type KHR_SHADER_ATOMIC_INT64_SPEC_VERSION = 1
pattern KHR_SHADER_ATOMIC_INT64_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME = "VK_KHR_shader_atomic_int64"
pattern KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage
-- | VkPhysicalDevice8BitStorageFeatures - Structure describing features
-- supported by VK_KHR_8bit_storage
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevice8BitStorageFeatures
PhysicalDevice8BitStorageFeatures :: Bool -> Bool -> Bool -> PhysicalDevice8BitStorageFeatures
-- | storageBuffer8BitAccess indicates whether objects in the
-- StorageBuffer or PhysicalStorageBuffer storage class
-- with the Block decoration can have 8-bit integer
-- members. If this feature is not enabled, 8-bit integer members
-- must not be used in such objects. This also indicates whether
-- shader modules can declare the StorageBuffer8BitAccess
-- capability.
[$sel:storageBuffer8BitAccess:PhysicalDevice8BitStorageFeatures] :: PhysicalDevice8BitStorageFeatures -> Bool
-- | uniformAndStorageBuffer8BitAccess indicates whether objects
-- in the Uniform storage class with the Block
-- decoration and in the StorageBuffer or
-- PhysicalStorageBuffer storage class with the same decoration
-- can have 8-bit integer members. If this feature is not enabled,
-- 8-bit integer members must not be used in such objects. This
-- also indicates whether shader modules can declare the
-- UniformAndStorageBuffer8BitAccess capability.
[$sel:uniformAndStorageBuffer8BitAccess:PhysicalDevice8BitStorageFeatures] :: PhysicalDevice8BitStorageFeatures -> Bool
-- | storagePushConstant8 indicates whether objects in the
-- PushConstant storage class can have 8-bit integer
-- members. If this feature is not enabled, 8-bit integer members
-- must not be used in such objects. This also indicates whether
-- shader modules can declare the StoragePushConstant8
-- capability.
[$sel:storagePushConstant8:PhysicalDevice8BitStorageFeatures] :: PhysicalDevice8BitStorageFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_8bit_storage.PhysicalDevice8BitStorageFeatures
module Vulkan.Extensions.VK_KHR_8bit_storage
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR :: StructureType
type PhysicalDevice8BitStorageFeaturesKHR = PhysicalDevice8BitStorageFeatures
type KHR_8BIT_STORAGE_SPEC_VERSION = 1
pattern KHR_8BIT_STORAGE_SPEC_VERSION :: forall a. Integral a => a
type KHR_8BIT_STORAGE_EXTENSION_NAME = "VK_KHR_8bit_storage"
pattern KHR_8BIT_STORAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout
-- | VkPhysicalDeviceScalarBlockLayoutFeatures - Structure indicating
-- support for scalar block layouts
--
-- Members
--
-- The members of the PhysicalDeviceScalarBlockLayoutFeatures
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceScalarBlockLayoutFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceScalarBlockLayoutFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable this feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceScalarBlockLayoutFeatures
PhysicalDeviceScalarBlockLayoutFeatures :: Bool -> PhysicalDeviceScalarBlockLayoutFeatures
-- | scalarBlockLayout indicates that the implementation supports
-- the layout of resource blocks in shaders using scalar
-- alignment.
[$sel:scalarBlockLayout:PhysicalDeviceScalarBlockLayoutFeatures] :: PhysicalDeviceScalarBlockLayoutFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_scalar_block_layout.PhysicalDeviceScalarBlockLayoutFeatures
module Vulkan.Extensions.VK_EXT_scalar_block_layout
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT :: StructureType
type PhysicalDeviceScalarBlockLayoutFeaturesEXT = PhysicalDeviceScalarBlockLayoutFeatures
type EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION = 1
pattern EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION :: forall a. Integral a => a
type EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME = "VK_EXT_scalar_block_layout"
pattern EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Enums.SemaphoreWaitFlagBits
-- | VkSemaphoreWaitFlagBits - Bitmask specifying additional parameters of
-- a semaphore wait operation
--
-- See Also
--
-- SemaphoreWaitFlags
newtype SemaphoreWaitFlagBits
SemaphoreWaitFlagBits :: Flags -> SemaphoreWaitFlagBits
-- | SEMAPHORE_WAIT_ANY_BIT specifies that the semaphore wait
-- condition is that at least one of the semaphores in
-- SemaphoreWaitInfo::pSemaphores has reached the value
-- specified by the corresponding element of
-- SemaphoreWaitInfo::pValues. If
-- SEMAPHORE_WAIT_ANY_BIT is not set, the semaphore wait condition
-- is that all of the semaphores in
-- SemaphoreWaitInfo::pSemaphores have reached the value
-- specified by the corresponding element of
-- SemaphoreWaitInfo::pValues.
pattern SEMAPHORE_WAIT_ANY_BIT :: SemaphoreWaitFlagBits
type SemaphoreWaitFlags = SemaphoreWaitFlagBits
instance Data.Bits.Bits Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
instance Foreign.Storable.Storable Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
instance GHC.Classes.Ord Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
instance GHC.Show.Show Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
instance GHC.Read.Read Vulkan.Core12.Enums.SemaphoreWaitFlagBits.SemaphoreWaitFlagBits
module Vulkan.Core12.Enums.ResolveModeFlagBits
-- | VkResolveModeFlagBits - Bitmask indicating supported depth and stencil
-- resolve modes
--
-- See Also
--
-- ResolveModeFlags, SubpassDescriptionDepthStencilResolve
newtype ResolveModeFlagBits
ResolveModeFlagBits :: Flags -> ResolveModeFlagBits
-- | RESOLVE_MODE_NONE indicates that no resolve operation is done.
pattern RESOLVE_MODE_NONE :: ResolveModeFlagBits
-- | RESOLVE_MODE_SAMPLE_ZERO_BIT indicates that result of the
-- resolve operation is equal to the value of sample 0.
pattern RESOLVE_MODE_SAMPLE_ZERO_BIT :: ResolveModeFlagBits
-- | RESOLVE_MODE_AVERAGE_BIT indicates that result of the resolve
-- operation is the average of the sample values.
pattern RESOLVE_MODE_AVERAGE_BIT :: ResolveModeFlagBits
-- | RESOLVE_MODE_MIN_BIT indicates that result of the resolve
-- operation is the minimum of the sample values.
pattern RESOLVE_MODE_MIN_BIT :: ResolveModeFlagBits
-- | RESOLVE_MODE_MAX_BIT indicates that result of the resolve
-- operation is the maximum of the sample values.
pattern RESOLVE_MODE_MAX_BIT :: ResolveModeFlagBits
type ResolveModeFlags = ResolveModeFlagBits
instance Data.Bits.Bits Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
instance Foreign.Storable.Storable Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
instance GHC.Classes.Ord Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
instance GHC.Show.Show Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
instance GHC.Read.Read Vulkan.Core12.Enums.ResolveModeFlagBits.ResolveModeFlagBits
module Vulkan.Core12.Enums.DescriptorBindingFlagBits
-- | VkDescriptorBindingFlagBits - Bitmask specifying descriptor set layout
-- binding properties
--
-- Description
--
-- Note
--
-- Note that while DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT and
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT both involve
-- updates to descriptor sets after they are bound,
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT is a weaker
-- requirement since it is only about descriptors that are not used,
-- whereas DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT requires the
-- implementation to observe updates to descriptors that are used.
--
-- See Also
--
-- DescriptorBindingFlags
newtype DescriptorBindingFlagBits
DescriptorBindingFlagBits :: Flags -> DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT indicates that if
-- descriptors in this binding are updated between when the descriptor
-- set is bound in a command buffer and when that command buffer is
-- submitted to a queue, then the submission will use the most recently
-- set descriptors for this binding and the updates do not invalidate the
-- command buffer. Descriptor bindings created with this flag are also
-- partially exempt from the external synchronization requirement in
-- updateDescriptorSetWithTemplateKHR and
-- updateDescriptorSets. Multiple descriptors with this flag set
-- can be updated concurrently in different threads, though the
-- same descriptor must not be updated concurrently by two
-- threads. Descriptors with this flag set can be updated
-- concurrently with the set being bound to a command buffer in another
-- thread, but not concurrently with the set being reset or freed.
pattern DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT :: DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT indicates
-- that descriptors in this binding can be updated after a command
-- buffer has bound this descriptor set, or while a command buffer that
-- uses this descriptor set is pending execution, as long as the
-- descriptors that are updated are not used by those command buffers. If
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is also set, then
-- descriptors can be updated as long as they are not dynamically
-- used by any shader invocations. If
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is not set, then
-- descriptors can be updated as long as they are not statically
-- used by any shader invocations.
pattern DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT :: DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT indicates that
-- descriptors in this binding that are not dynamically used need
-- not contain valid descriptors at the time the descriptors are
-- consumed. A descriptor is dynamically used if any shader invocation
-- executes an instruction that performs any memory access using the
-- descriptor.
pattern DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT :: DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT indicates that
-- this descriptor binding has a variable size that will be specified
-- when a descriptor set is allocated using this layout. The value of
-- descriptorCount is treated as an upper bound on the size of
-- the binding. This must only be used for the last binding in the
-- descriptor set layout (i.e. the binding with the largest value of
-- binding). For the purposes of counting against limits such as
-- maxDescriptorSet* and maxPerStageDescriptor*, the
-- full value of descriptorCount is counted , except for
-- descriptor bindings with a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT where
-- descriptorCount specifies the upper bound on the byte size of
-- the binding, thus it counts against the
-- maxInlineUniformBlockSize limit instead. .
pattern DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT :: DescriptorBindingFlagBits
type DescriptorBindingFlags = DescriptorBindingFlagBits
instance Data.Bits.Bits Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
instance Vulkan.Zero.Zero Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
instance Foreign.Storable.Storable Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
instance GHC.Classes.Ord Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
instance GHC.Show.Show Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
instance GHC.Read.Read Vulkan.Core12.Enums.DescriptorBindingFlagBits.DescriptorBindingFlagBits
module Vulkan.Core12.Enums
module Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES :: StructureType
-- | VkPhysicalDeviceVariablePointersFeatures - Structure describing
-- variable pointers features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceVariablePointersFeatures
-- structure describe the following features:
--
-- Description
--
--
-- - variablePointersStorageBuffer specifies whether the
-- implementation supports the SPIR-V
-- VariablePointersStorageBuffer capability. When this feature
-- is not enabled, shader modules must not declare the
-- SPV_KHR_variable_pointers extension or the
-- VariablePointersStorageBuffer capability.
--
--
--
-- - variablePointers specifies whether the implementation
-- supports the SPIR-V VariablePointers capability. When this
-- feature is not enabled, shader modules must not declare the
-- VariablePointers capability.
--
--
-- If the PhysicalDeviceVariablePointersFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceVariablePointersFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable the features.
--
-- Valid Usage
--
--
-- - If variablePointers is enabled then
-- variablePointersStorageBuffer must also be
-- enabled
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceVariablePointersFeatures
PhysicalDeviceVariablePointersFeatures :: Bool -> Bool -> PhysicalDeviceVariablePointersFeatures
[$sel:variablePointersStorageBuffer:PhysicalDeviceVariablePointersFeatures] :: PhysicalDeviceVariablePointersFeatures -> Bool
[$sel:variablePointers:PhysicalDeviceVariablePointersFeatures] :: PhysicalDeviceVariablePointersFeatures -> Bool
type PhysicalDeviceVariablePointerFeatures = PhysicalDeviceVariablePointersFeatures
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_variable_pointers.PhysicalDeviceVariablePointersFeatures
module Vulkan.Extensions.VK_KHR_variable_pointers
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR :: StructureType
type PhysicalDeviceVariablePointersFeaturesKHR = PhysicalDeviceVariablePointersFeatures
type PhysicalDeviceVariablePointerFeaturesKHR = PhysicalDeviceVariablePointersFeatures
type KHR_VARIABLE_POINTERS_SPEC_VERSION = 1
pattern KHR_VARIABLE_POINTERS_SPEC_VERSION :: forall a. Integral a => a
type KHR_VARIABLE_POINTERS_EXTENSION_NAME = "VK_KHR_variable_pointers"
pattern KHR_VARIABLE_POINTERS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES :: StructureType
-- | VkPhysicalDeviceShaderDrawParametersFeatures - Structure describing
-- shader draw parameter features that can be supported by an
-- implementation
--
-- Description
--
-- If the PhysicalDeviceShaderDrawParametersFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with a value indicating
-- whether the feature is supported.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShaderDrawParametersFeatures
PhysicalDeviceShaderDrawParametersFeatures :: Bool -> PhysicalDeviceShaderDrawParametersFeatures
-- | shaderDrawParameters specifies whether shader draw parameters
-- are supported.
[$sel:shaderDrawParameters:PhysicalDeviceShaderDrawParametersFeatures] :: PhysicalDeviceShaderDrawParametersFeatures -> Bool
type PhysicalDeviceShaderDrawParameterFeatures = PhysicalDeviceShaderDrawParametersFeatures
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_shader_draw_parameters.PhysicalDeviceShaderDrawParametersFeatures
module Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage
-- | VkPhysicalDevice16BitStorageFeatures - Structure describing features
-- supported by VK_KHR_16bit_storage
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevice16BitStorageFeatures
PhysicalDevice16BitStorageFeatures :: Bool -> Bool -> Bool -> Bool -> PhysicalDevice16BitStorageFeatures
-- | storageBuffer16BitAccess specifies whether objects in the
-- StorageBuffer or PhysicalStorageBuffer storage class
-- with the Block decoration can have 16-bit integer and
-- 16-bit floating-point members. If this feature is not enabled, 16-bit
-- integer or 16-bit floating-point members must not be used in
-- such objects. This also specifies whether shader modules can
-- declare the StorageBuffer16BitAccess capability.
[$sel:storageBuffer16BitAccess:PhysicalDevice16BitStorageFeatures] :: PhysicalDevice16BitStorageFeatures -> Bool
-- | uniformAndStorageBuffer16BitAccess specifies whether objects
-- in the Uniform storage class with the Block
-- decoration and in the StorageBuffer or
-- PhysicalStorageBuffer storage class with the same decoration
-- can have 16-bit integer and 16-bit floating-point members. If
-- this feature is not enabled, 16-bit integer or 16-bit floating-point
-- members must not be used in such objects. This also specifies
-- whether shader modules can declare the
-- UniformAndStorageBuffer16BitAccess capability.
[$sel:uniformAndStorageBuffer16BitAccess:PhysicalDevice16BitStorageFeatures] :: PhysicalDevice16BitStorageFeatures -> Bool
-- | storagePushConstant16 specifies whether objects in the
-- PushConstant storage class can have 16-bit integer and
-- 16-bit floating-point members. If this feature is not enabled, 16-bit
-- integer or floating-point members must not be used in such
-- objects. This also specifies whether shader modules can declare
-- the StoragePushConstant16 capability.
[$sel:storagePushConstant16:PhysicalDevice16BitStorageFeatures] :: PhysicalDevice16BitStorageFeatures -> Bool
-- | storageInputOutput16 specifies whether objects in the
-- Input and Output storage classes can have
-- 16-bit integer and 16-bit floating-point members. If this feature is
-- not enabled, 16-bit integer or 16-bit floating-point members
-- must not be used in such objects. This also specifies whether
-- shader modules can declare the StorageInputOutput16
-- capability.
[$sel:storageInputOutput16:PhysicalDevice16BitStorageFeatures] :: PhysicalDevice16BitStorageFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_16bit_storage.PhysicalDevice16BitStorageFeatures
module Vulkan.Extensions.VK_KHR_16bit_storage
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR :: StructureType
type PhysicalDevice16BitStorageFeaturesKHR = PhysicalDevice16BitStorageFeatures
type KHR_16BIT_STORAGE_SPEC_VERSION = 1
pattern KHR_16BIT_STORAGE_SPEC_VERSION :: forall a. Integral a => a
type KHR_16BIT_STORAGE_EXTENSION_NAME = "VK_KHR_16bit_storage"
pattern KHR_16BIT_STORAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Enums.SubgroupFeatureFlagBits
-- | VkSubgroupFeatureFlagBits - Enum describing what group operations are
-- supported with subgroup scope
--
-- See Also
--
-- SubgroupFeatureFlags
newtype SubgroupFeatureFlagBits
SubgroupFeatureFlagBits :: Flags -> SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniform
-- capability.
pattern SUBGROUP_FEATURE_BASIC_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformVote
-- capability.
pattern SUBGROUP_FEATURE_VOTE_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will
-- accept SPIR-V shader modules containing the
-- GroupNonUniformArithmetic capability.
pattern SUBGROUP_FEATURE_ARITHMETIC_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformBallot
-- capability.
pattern SUBGROUP_FEATURE_BALLOT_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformShuffle
-- capability.
pattern SUBGROUP_FEATURE_SHUFFLE_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will
-- accept SPIR-V shader modules containing the
-- GroupNonUniformShuffleRelative capability.
pattern SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformClustered
-- capability.
pattern SUBGROUP_FEATURE_CLUSTERED_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformQuad
-- capability.
pattern SUBGROUP_FEATURE_QUAD_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will
-- accept SPIR-V shader modules containing the
-- GroupNonUniformPartitionedNV capability.
pattern SUBGROUP_FEATURE_PARTITIONED_BIT_NV :: SubgroupFeatureFlagBits
type SubgroupFeatureFlags = SubgroupFeatureFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.SubgroupFeatureFlagBits.SubgroupFeatureFlagBits
module Vulkan.Core11.Enums.SemaphoreImportFlagBits
-- | VkSemaphoreImportFlagBits - Bitmask specifying additional parameters
-- of semaphore payload import
--
-- Description
--
-- These bits have the following meanings:
--
-- See Also
--
-- SemaphoreImportFlags
newtype SemaphoreImportFlagBits
SemaphoreImportFlagBits :: Flags -> SemaphoreImportFlagBits
-- | SEMAPHORE_IMPORT_TEMPORARY_BIT specifies that the semaphore
-- payload will be imported only temporarily, as described in
-- Importing Semaphore Payloads, regardless of the permanence of
-- handleType.
pattern SEMAPHORE_IMPORT_TEMPORARY_BIT :: SemaphoreImportFlagBits
type SemaphoreImportFlags = SemaphoreImportFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.SemaphoreImportFlagBits.SemaphoreImportFlagBits
module Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits
-- | VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory
-- features
--
-- Description
--
-- Note
--
-- The peer memory features of a memory heap also apply to any accesses
-- that may be performed during image layout transitions.
--
-- PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for
-- all host local heaps and for at least one device local heap.
--
-- If a device does not support a peer memory feature, it is still valid
-- to use a resource that includes both local and peer memory bindings
-- with the corresponding access type as long as only the local bindings
-- are actually accessed. For example, an application doing split-frame
-- rendering would use framebuffer attachments that include both local
-- and peer memory bindings, but would scissor the rendering to only
-- update local memory.
--
-- See Also
--
-- PeerMemoryFeatureFlags
newtype PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits :: Flags -> PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory
-- can be accessed as the source of a cmdCopyBuffer,
-- cmdCopyImage, cmdCopyBufferToImage, or
-- cmdCopyImageToBuffer command.
pattern PEER_MEMORY_FEATURE_COPY_SRC_BIT :: PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory
-- can be accessed as the destination of a cmdCopyBuffer,
-- cmdCopyImage, cmdCopyBufferToImage, or
-- cmdCopyImageToBuffer command.
pattern PEER_MEMORY_FEATURE_COPY_DST_BIT :: PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory
-- can be read as any memory access type.
pattern PEER_MEMORY_FEATURE_GENERIC_SRC_BIT :: PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory
-- can be written as any memory access type. Shader atomics are
-- considered to be writes.
pattern PEER_MEMORY_FEATURE_GENERIC_DST_BIT :: PeerMemoryFeatureFlagBits
type PeerMemoryFeatureFlags = PeerMemoryFeatureFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits.PeerMemoryFeatureFlagBits
module Vulkan.Core11.Enums.MemoryAllocateFlagBits
-- | VkMemoryAllocateFlagBits - Bitmask specifying flags for a device
-- memory allocation
--
-- See Also
--
-- MemoryAllocateFlags
newtype MemoryAllocateFlagBits
MemoryAllocateFlagBits :: Flags -> MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_MASK_BIT specifies that memory will be
-- allocated for the devices in
-- MemoryAllocateFlagsInfo::deviceMask.
pattern MEMORY_ALLOCATE_DEVICE_MASK_BIT :: MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies
-- that the memory’s address can be saved and reused on a
-- subsequent run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT specifies that the memory
-- can be attached to a buffer object created with the
-- BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT bit set in
-- usage, and that the memory handle can be used to
-- retrieve an opaque address via
-- getDeviceMemoryOpaqueCaptureAddress.
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT :: MemoryAllocateFlagBits
type MemoryAllocateFlags = MemoryAllocateFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.MemoryAllocateFlagBits.MemoryAllocateFlagBits
module Vulkan.Core11.Enums.FenceImportFlagBits
-- | VkFenceImportFlagBits - Bitmask specifying additional parameters of
-- fence payload import
--
-- See Also
--
-- FenceImportFlags
newtype FenceImportFlagBits
FenceImportFlagBits :: Flags -> FenceImportFlagBits
-- | FENCE_IMPORT_TEMPORARY_BIT specifies that the fence payload
-- will be imported only temporarily, as described in Importing Fence
-- Payloads, regardless of the permanence of handleType.
pattern FENCE_IMPORT_TEMPORARY_BIT :: FenceImportFlagBits
type FenceImportFlags = FenceImportFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.FenceImportFlagBits.FenceImportFlagBits
module Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits
-- | VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external
-- semaphore handle types
--
-- Description
--
-- Note
--
-- Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT
-- generated by the implementation may represent either Linux Sync Files
-- or Android Fences at the implementation’s discretion. Applications
-- should only use operations defined for both types of file
-- descriptors, unless they know via means external to Vulkan the type of
-- the file descriptor, or are prepared to deal with the system-defined
-- operation failures resulting from using the wrong type.
--
-- Some external semaphore handle types can only be shared within the
-- same underlying physical device and/or the same driver version, as
-- defined in the following table:
--
-- TODO: table
--
-- External semaphore handle types compatibility
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlags,
-- ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- PhysicalDeviceExternalSemaphoreInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR
newtype ExternalSemaphoreHandleTypeFlagBits
ExternalSemaphoreHandleTypeFlagBits :: Flags -> ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX
-- file descriptor handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It must be compatible with
-- the POSIX system calls dup, dup2, close,
-- and the non-standard system call dup3. Additionally, it
-- must be transportable over a socket using an
-- SCM_RIGHTS control message. It owns a reference to the
-- underlying synchronization primitive represented by its Vulkan
-- semaphore object.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT
-- handle that has only limited valid usage outside of Vulkan and other
-- compatible APIs. It must be compatible with the functions
-- DuplicateHandle, CloseHandle,
-- CompareObjectHandles, GetHandleInformation, and
-- SetHandleInformation. It owns a reference to the underlying
-- synchronization primitive represented by its Vulkan semaphore object.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a
-- global share handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It is not compatible with any native
-- APIs. It does not own a reference to the underlying synchronization
-- primitive represented its Vulkan semaphore object, and will therefore
-- become invalid when all Vulkan semaphore objects associated with it
-- are destroyed.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT
-- handle returned by ID3D12Device::CreateSharedHandle
-- referring to a Direct3D 12 fence. It owns a reference to the
-- underlying synchronization primitive associated with the Direct3D
-- fence.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX
-- file descriptor handle to a Linux Sync File or Android Fence object.
-- It can be used with any native API accepting a valid sync file or
-- fence as input. It owns a reference to the underlying synchronization
-- primitive associated with the file descriptor. Implementations which
-- support importing this handle type must accept any type of sync
-- or fence FD supported by the native system they are running on.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT :: ExternalSemaphoreHandleTypeFlagBits
type ExternalSemaphoreHandleTypeFlags = ExternalSemaphoreHandleTypeFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits.ExternalSemaphoreHandleTypeFlagBits
module Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore
-- | VkExportSemaphoreCreateInfo - Structure specifying handle types that
-- can be exported from a semaphore
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlags, StructureType
data ExportSemaphoreCreateInfo
ExportSemaphoreCreateInfo :: ExternalSemaphoreHandleTypeFlags -> ExportSemaphoreCreateInfo
-- | handleTypes is a bitmask of
-- ExternalSemaphoreHandleTypeFlagBits specifying one or more
-- semaphore handle types the application can export from the
-- resulting semaphore. The application can request multiple
-- handle types for the same semaphore.
[$sel:handleTypes:ExportSemaphoreCreateInfo] :: ExportSemaphoreCreateInfo -> ExternalSemaphoreHandleTypeFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkSemaphoreImportFlagBits - Bitmask specifying additional parameters
-- of semaphore payload import
--
-- Description
--
-- These bits have the following meanings:
--
-- See Also
--
-- SemaphoreImportFlags
newtype SemaphoreImportFlagBits
SemaphoreImportFlagBits :: Flags -> SemaphoreImportFlagBits
-- | SEMAPHORE_IMPORT_TEMPORARY_BIT specifies that the semaphore
-- payload will be imported only temporarily, as described in
-- Importing Semaphore Payloads, regardless of the permanence of
-- handleType.
pattern SEMAPHORE_IMPORT_TEMPORARY_BIT :: SemaphoreImportFlagBits
type SemaphoreImportFlags = SemaphoreImportFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore.ExportSemaphoreCreateInfo
module Vulkan.Extensions.VK_KHR_external_semaphore
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR :: StructureType
pattern SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR :: SemaphoreImportFlagBits
type SemaphoreImportFlagsKHR = SemaphoreImportFlags
type SemaphoreImportFlagBitsKHR = SemaphoreImportFlagBits
type ExportSemaphoreCreateInfoKHR = ExportSemaphoreCreateInfo
type KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION = 1
pattern KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME = "VK_KHR_external_semaphore"
pattern KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits
-- | VkExternalSemaphoreFeatureFlagBits - Bitfield describing features of
-- an external semaphore handle type
--
-- See Also
--
-- ExternalSemaphoreFeatureFlags
newtype ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits :: Flags -> ExternalSemaphoreFeatureFlagBits
-- | EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT specifies that
-- handles of this type can be exported from Vulkan semaphore
-- objects.
pattern EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT :: ExternalSemaphoreFeatureFlagBits
-- | EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT specifies that
-- handles of this type can be imported as Vulkan semaphore
-- objects.
pattern EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT :: ExternalSemaphoreFeatureFlagBits
type ExternalSemaphoreFeatureFlags = ExternalSemaphoreFeatureFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits.ExternalSemaphoreFeatureFlagBits
module Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits
-- | VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory
-- handle types
--
-- Description
--
-- Some external memory handle types can only be shared within the same
-- underlying physical device and/or the same driver version, as defined
-- in the following table:
--
-- TODO: table
--
-- External memory handle types compatibility
--
-- Note
--
-- The above table does not restrict the drivers and devices with which
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT
-- may be shared, as these handle types inherently mean memory
-- that does not come from the same device, as they import memory from
-- the host or a foreign device, respectively.
--
-- Note
--
-- Even though the above table does not restrict the drivers and devices
-- with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT
-- may be shared, query mechanisms exist in the Vulkan API that
-- prevent the import of incompatible dma-bufs (such as
-- getMemoryFdPropertiesKHR) and that prevent incompatible usage
-- of dma-bufs (such as PhysicalDeviceExternalBufferInfo and
-- PhysicalDeviceExternalImageFormatInfo).
--
-- See Also
--
-- ExternalMemoryHandleTypeFlags, ImportMemoryFdInfoKHR,
-- ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR, MemoryGetFdInfoKHR,
-- MemoryGetWin32HandleInfoKHR,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- getMemoryFdPropertiesKHR,
-- getMemoryHostPointerPropertiesEXT,
-- getMemoryWin32HandlePropertiesKHR
newtype ExternalMemoryHandleTypeFlagBits
ExternalMemoryHandleTypeFlagBits :: Flags -> ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX
-- file descriptor handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It must be compatible with
-- the POSIX system calls dup, dup2, close,
-- and the non-standard system call dup3. Additionally, it
-- must be transportable over a socket using an
-- SCM_RIGHTS control message. It owns a reference to the
-- underlying memory resource represented by its Vulkan memory object.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT
-- handle that has only limited valid usage outside of Vulkan and other
-- compatible APIs. It must be compatible with the functions
-- DuplicateHandle, CloseHandle,
-- CompareObjectHandles, GetHandleInformation, and
-- SetHandleInformation. It owns a reference to the underlying
-- memory resource represented by its Vulkan memory object.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a
-- global share handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It is not compatible with any native
-- APIs. It does not own a reference to the underlying memory resource
-- represented its Vulkan memory object, and will therefore become
-- invalid when all Vulkan memory objects associated with it are
-- destroyed.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT
-- handle returned by
-- IDXGIResource1::CreateSharedHandle referring to a
-- Direct3D 10 or 11 texture resource. It owns a reference to the memory
-- used by the Direct3D resource.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a
-- global share handle returned by
-- IDXGIResource::GetSharedHandle referring to a
-- Direct3D 10 or 11 texture resource. It does not own a reference to the
-- underlying Direct3D resource, and will therefore become invalid when
-- all Vulkan memory objects and Direct3D resources associated with it
-- are destroyed.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT
-- handle returned by ID3D12Device::CreateSharedHandle
-- referring to a Direct3D 12 heap resource. It owns a reference to the
-- resources used by the Direct3D heap.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT
-- handle returned by ID3D12Device::CreateSharedHandle
-- referring to a Direct3D 12 committed resource. It owns a reference to
-- the memory used by the Direct3D resource.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT
-- specifies a host pointer to host mapped foreign memory. It does
-- not own a reference to the underlying memory resource, and will
-- therefore become invalid if the foreign memory is unmapped or
-- otherwise becomes no longer available.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a
-- host pointer returned by a host memory allocation command. It does not
-- own a reference to the underlying memory resource, and will therefore
-- become invalid if the host memory is freed.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- specifies an AHardwareBuffer object defined by the Android NDK.
-- See Android Hardware Buffers for more details of this handle
-- type.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file
-- descriptor for a Linux dma_buf. It owns a reference to the underlying
-- memory resource represented by its Vulkan memory object.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT :: ExternalMemoryHandleTypeFlagBits
type ExternalMemoryHandleTypeFlags = ExternalMemoryHandleTypeFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits.ExternalMemoryHandleTypeFlagBits
module Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits
-- | VkExternalMemoryFeatureFlagBits - Bitmask specifying features of an
-- external memory handle type
--
-- Description
--
-- Because their semantics in external APIs roughly align with that of an
-- image or buffer with a dedicated allocation in Vulkan, implementations
-- are required to report
-- EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for the following
-- external handle types:
--
-- Implementations must not report
-- EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for buffers with
-- external handle type
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID.
-- Implementations must not report
-- EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for images or
-- buffers with external handle type
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, or
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT.
--
-- See Also
--
-- ExternalMemoryFeatureFlags
newtype ExternalMemoryFeatureFlagBits
ExternalMemoryFeatureFlagBits :: Flags -> ExternalMemoryFeatureFlagBits
-- | EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT specifies that
-- images or buffers created with the specified parameters and handle
-- type must use the mechanisms defined by
-- MemoryDedicatedRequirements and
-- MemoryDedicatedAllocateInfo to create (or import) a dedicated
-- allocation for the image or buffer.
pattern EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT :: ExternalMemoryFeatureFlagBits
-- | EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT specifies that handles
-- of this type can be exported from Vulkan memory objects.
pattern EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT :: ExternalMemoryFeatureFlagBits
-- | EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT specifies that handles
-- of this type can be imported as Vulkan memory objects.
pattern EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT :: ExternalMemoryFeatureFlagBits
type ExternalMemoryFeatureFlags = ExternalMemoryFeatureFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits.ExternalMemoryFeatureFlagBits
module Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits
-- | VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence
-- handle types
--
-- Description
--
-- Some external fence handle types can only be shared within the same
-- underlying physical device and/or the same driver version, as defined
-- in the following table:
--
-- TODO: table
--
-- External fence handle types compatibility
--
-- See Also
--
-- ExternalFenceHandleTypeFlags, FenceGetFdInfoKHR,
-- FenceGetWin32HandleInfoKHR, ImportFenceFdInfoKHR,
-- ImportFenceWin32HandleInfoKHR,
-- PhysicalDeviceExternalFenceInfo
newtype ExternalFenceHandleTypeFlagBits
ExternalFenceHandleTypeFlagBits :: Flags -> ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file
-- descriptor handle that has only limited valid usage outside of Vulkan
-- and other compatible APIs. It must be compatible with the POSIX
-- system calls dup, dup2, close, and the
-- non-standard system call dup3. Additionally, it must
-- be transportable over a socket using an SCM_RIGHTS control
-- message. It owns a reference to the underlying synchronization
-- primitive represented by its Vulkan fence object.
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT
-- handle that has only limited valid usage outside of Vulkan and other
-- compatible APIs. It must be compatible with the functions
-- DuplicateHandle, CloseHandle,
-- CompareObjectHandles, GetHandleInformation, and
-- SetHandleInformation. It owns a reference to the underlying
-- synchronization primitive represented by its Vulkan fence object.
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a
-- global share handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It is not compatible with any native
-- APIs. It does not own a reference to the underlying synchronization
-- primitive represented by its Vulkan fence object, and will therefore
-- become invalid when all Vulkan fence objects associated with it are
-- destroyed.
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file
-- descriptor handle to a Linux Sync File or Android Fence. It can be
-- used with any native API accepting a valid sync file or fence as
-- input. It owns a reference to the underlying synchronization primitive
-- associated with the file descriptor. Implementations which support
-- importing this handle type must accept any type of sync or
-- fence FD supported by the native system they are running on.
pattern EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT :: ExternalFenceHandleTypeFlagBits
type ExternalFenceHandleTypeFlags = ExternalFenceHandleTypeFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.ExternalFenceHandleTypeFlagBits.ExternalFenceHandleTypeFlagBits
module Vulkan.Core11.Promoted_From_VK_KHR_external_fence
-- | VkExportFenceCreateInfo - Structure specifying handle types that can
-- be exported from a fence
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalFenceHandleTypeFlags, StructureType
data ExportFenceCreateInfo
ExportFenceCreateInfo :: ExternalFenceHandleTypeFlags -> ExportFenceCreateInfo
-- | handleTypes is a bitmask of
-- ExternalFenceHandleTypeFlagBits specifying one or more fence
-- handle types the application can export from the resulting
-- fence. The application can request multiple handle types for
-- the same fence.
[$sel:handleTypes:ExportFenceCreateInfo] :: ExportFenceCreateInfo -> ExternalFenceHandleTypeFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkFenceImportFlagBits - Bitmask specifying additional parameters of
-- fence payload import
--
-- See Also
--
-- FenceImportFlags
newtype FenceImportFlagBits
FenceImportFlagBits :: Flags -> FenceImportFlagBits
-- | FENCE_IMPORT_TEMPORARY_BIT specifies that the fence payload
-- will be imported only temporarily, as described in Importing Fence
-- Payloads, regardless of the permanence of handleType.
pattern FENCE_IMPORT_TEMPORARY_BIT :: FenceImportFlagBits
type FenceImportFlags = FenceImportFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_fence.ExportFenceCreateInfo
module Vulkan.Extensions.VK_KHR_external_fence
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR :: StructureType
pattern FENCE_IMPORT_TEMPORARY_BIT_KHR :: FenceImportFlagBits
type FenceImportFlagsKHR = FenceImportFlags
type FenceImportFlagBitsKHR = FenceImportFlagBits
type ExportFenceCreateInfoKHR = ExportFenceCreateInfo
type KHR_EXTERNAL_FENCE_SPEC_VERSION = 1
pattern KHR_EXTERNAL_FENCE_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_FENCE_EXTENSION_NAME = "VK_KHR_external_fence"
pattern KHR_EXTERNAL_FENCE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits
-- | VkExternalFenceFeatureFlagBits - Bitfield describing features of an
-- external fence handle type
--
-- See Also
--
-- ExternalFenceFeatureFlags
newtype ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits :: Flags -> ExternalFenceFeatureFlagBits
-- | EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT specifies handles of this
-- type can be exported from Vulkan fence objects.
pattern EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: ExternalFenceFeatureFlagBits
-- | EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT specifies handles of this
-- type can be imported to Vulkan fence objects.
pattern EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: ExternalFenceFeatureFlagBits
type ExternalFenceFeatureFlags = ExternalFenceFeatureFlagBits
instance Data.Bits.Bits Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
instance Foreign.Storable.Storable Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
instance GHC.Classes.Ord Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
instance GHC.Show.Show Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
instance GHC.Read.Read Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits.ExternalFenceFeatureFlagBits
module Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags
-- | VkDescriptorUpdateTemplateCreateFlags - Reserved for future use
--
-- Description
--
-- DescriptorUpdateTemplateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- DescriptorUpdateTemplateCreateInfo
newtype DescriptorUpdateTemplateCreateFlags
DescriptorUpdateTemplateCreateFlags :: Flags -> DescriptorUpdateTemplateCreateFlags
instance Data.Bits.Bits Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
instance GHC.Classes.Ord Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
instance GHC.Classes.Eq Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
instance GHC.Show.Show Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
instance GHC.Read.Read Vulkan.Core11.Enums.DescriptorUpdateTemplateCreateFlags.DescriptorUpdateTemplateCreateFlags
module Vulkan.Core11.Enums.CommandPoolTrimFlags
-- | VkCommandPoolTrimFlags - Reserved for future use
--
-- Description
--
-- CommandPoolTrimFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- trimCommandPool, trimCommandPoolKHR
newtype CommandPoolTrimFlags
CommandPoolTrimFlags :: Flags -> CommandPoolTrimFlags
instance Data.Bits.Bits Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
instance Vulkan.Zero.Zero Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
instance Foreign.Storable.Storable Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
instance GHC.Classes.Ord Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
instance GHC.Classes.Eq Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
instance GHC.Show.Show Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
instance GHC.Read.Read Vulkan.Core11.Enums.CommandPoolTrimFlags.CommandPoolTrimFlags
module Vulkan.Core11.Enums
module Vulkan.Core10.Enums.SubpassDescriptionFlagBits
-- | VkSubpassDescriptionFlagBits - Bitmask specifying usage of a subpass
--
-- Description
--
-- Note
--
-- Shader resolve operations allow for custom resolve operations, but
-- overdrawing pixels may have a performance and/or power cost.
-- Furthermore, since the contents of any depth stencil attachment or
-- color attachment is undefined at the begining of a shader resolve
-- subpass, any depth testing, stencil testing, or blending which sources
-- these undefined values are also undefined.
--
-- See Also
--
-- SubpassDescriptionFlags
newtype SubpassDescriptionFlagBits
SubpassDescriptionFlagBits :: Flags -> SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM specifies that the
-- subpass performs shader resolve operations.
pattern SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM :: SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM specifies that the
-- framebuffer region is the fragment region, that is, the minimum region
-- dependencies are by pixel rather than by sample, such that any
-- fragment shader invocation can access any sample associated
-- with that fragment shader invocation.
pattern SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM :: SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX specifies
-- that shaders compiled for this subpass use per-view positions which
-- only differ in value in the x component. Per-view viewport mask
-- can also be used.
pattern SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX :: SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX specifies that
-- shaders compiled for this subpass write the attributes for all views
-- in a single invocation of each vertex processing stage. All pipelines
-- compiled against a subpass that includes this bit must write
-- per-view attributes to the *PerViewNV[] shader outputs, in
-- addition to the non-per-view (e.g. Position) outputs.
pattern SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX :: SubpassDescriptionFlagBits
type SubpassDescriptionFlags = SubpassDescriptionFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.SubpassDescriptionFlagBits.SubpassDescriptionFlagBits
module Vulkan.Core10.Enums.StencilFaceFlagBits
-- | VkStencilFaceFlagBits - Bitmask specifying sets of stencil state for
-- which to update the compare mask
--
-- See Also
--
-- StencilFaceFlags
newtype StencilFaceFlagBits
StencilFaceFlagBits :: Flags -> StencilFaceFlagBits
-- | STENCIL_FACE_FRONT_BIT specifies that only the front set of
-- stencil state is updated.
pattern STENCIL_FACE_FRONT_BIT :: StencilFaceFlagBits
-- | STENCIL_FACE_BACK_BIT specifies that only the back set of
-- stencil state is updated.
pattern STENCIL_FACE_BACK_BIT :: StencilFaceFlagBits
-- | STENCIL_FACE_FRONT_AND_BACK is the combination of
-- STENCIL_FACE_FRONT_BIT and STENCIL_FACE_BACK_BIT, and
-- specifies that both sets of stencil state are updated.
pattern STENCIL_FACE_FRONT_AND_BACK :: StencilFaceFlagBits
type StencilFaceFlags = StencilFaceFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.StencilFaceFlagBits.StencilFaceFlagBits
module Vulkan.Core10.Enums.SparseMemoryBindFlagBits
-- | VkSparseMemoryBindFlagBits - Bitmask specifying usage of a sparse
-- memory binding operation
--
-- See Also
--
-- SparseMemoryBindFlags
newtype SparseMemoryBindFlagBits
SparseMemoryBindFlagBits :: Flags -> SparseMemoryBindFlagBits
-- | SPARSE_MEMORY_BIND_METADATA_BIT specifies that the memory being
-- bound is only for the metadata aspect.
pattern SPARSE_MEMORY_BIND_METADATA_BIT :: SparseMemoryBindFlagBits
type SparseMemoryBindFlags = SparseMemoryBindFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.SparseMemoryBindFlagBits.SparseMemoryBindFlagBits
module Vulkan.Core10.Enums.SparseImageFormatFlagBits
-- | VkSparseImageFormatFlagBits - Bitmask specifying additional
-- information about a sparse image resource
--
-- See Also
--
-- SparseImageFormatFlags
newtype SparseImageFormatFlagBits
SparseImageFormatFlagBits :: Flags -> SparseImageFormatFlagBits
-- | SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT specifies that the image
-- uses a single mip tail region for all array layers.
pattern SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT :: SparseImageFormatFlagBits
-- | SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT specifies that the
-- first mip level whose dimensions are not integer multiples of the
-- corresponding dimensions of the sparse image block begins the mip tail
-- region.
pattern SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT :: SparseImageFormatFlagBits
-- | SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT specifies that
-- the image uses non-standard sparse image block dimensions, and the
-- imageGranularity values do not match the standard sparse
-- image block dimensions for the given format.
pattern SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT :: SparseImageFormatFlagBits
type SparseImageFormatFlags = SparseImageFormatFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.SparseImageFormatFlagBits.SparseImageFormatFlagBits
module Vulkan.Core10.Enums.ShaderStageFlagBits
-- | VkShaderStageFlagBits - Bitmask specifying a pipeline stage
--
-- Description
--
-- Note
--
-- SHADER_STAGE_ALL_GRAPHICS only includes the original five
-- graphics stages included in Vulkan 1.0, and not any stages added by
-- extensions. Thus, it may not have the desired effect in all cases.
--
-- See Also
--
-- PipelineShaderStageCreateInfo, ShaderStageFlags,
-- getShaderInfoAMD
newtype ShaderStageFlagBits
ShaderStageFlagBits :: Flags -> ShaderStageFlagBits
-- | SHADER_STAGE_VERTEX_BIT specifies the vertex stage.
pattern SHADER_STAGE_VERTEX_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_TESSELLATION_CONTROL_BIT specifies the
-- tessellation control stage.
pattern SHADER_STAGE_TESSELLATION_CONTROL_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_TESSELLATION_EVALUATION_BIT specifies the
-- tessellation evaluation stage.
pattern SHADER_STAGE_TESSELLATION_EVALUATION_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_GEOMETRY_BIT specifies the geometry stage.
pattern SHADER_STAGE_GEOMETRY_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_FRAGMENT_BIT specifies the fragment stage.
pattern SHADER_STAGE_FRAGMENT_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_COMPUTE_BIT specifies the compute stage.
pattern SHADER_STAGE_COMPUTE_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_ALL_GRAPHICS is a combination of bits used as
-- shorthand to specify all graphics stages defined above (excluding the
-- compute stage).
pattern SHADER_STAGE_ALL_GRAPHICS :: ShaderStageFlagBits
-- | SHADER_STAGE_ALL is a combination of bits used as shorthand to
-- specify all shader stages supported by the device, including all
-- additional stages which are introduced by extensions.
pattern SHADER_STAGE_ALL :: ShaderStageFlagBits
-- | SHADER_STAGE_MESH_BIT_NV specifies the mesh stage.
pattern SHADER_STAGE_MESH_BIT_NV :: ShaderStageFlagBits
-- | SHADER_STAGE_TASK_BIT_NV specifies the task stage.
pattern SHADER_STAGE_TASK_BIT_NV :: ShaderStageFlagBits
-- | SHADER_STAGE_CALLABLE_BIT_KHR specifies the callable stage.
pattern SHADER_STAGE_CALLABLE_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_INTERSECTION_BIT_KHR specifies the intersection
-- stage.
pattern SHADER_STAGE_INTERSECTION_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_MISS_BIT_KHR specifies the miss stage.
pattern SHADER_STAGE_MISS_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_CLOSEST_HIT_BIT_KHR specifies the closest hit
-- stage.
pattern SHADER_STAGE_CLOSEST_HIT_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_ANY_HIT_BIT_KHR specifies the any-hit stage.
pattern SHADER_STAGE_ANY_HIT_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_RAYGEN_BIT_KHR specifies the ray generation stage.
pattern SHADER_STAGE_RAYGEN_BIT_KHR :: ShaderStageFlagBits
type ShaderStageFlags = ShaderStageFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ShaderStageFlagBits.ShaderStageFlagBits
module Vulkan.Extensions.VK_EXT_subgroup_size_control
-- | VkPhysicalDeviceSubgroupSizeControlFeaturesEXT - Structure describing
-- the subgroup size control features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceSubgroupSizeControlFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceSubgroupSizeControlFeaturesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Note
--
-- The PhysicalDeviceSubgroupSizeControlFeaturesEXT structure was
-- added in version 2 of the VK_EXT_subgroup_size_control
-- extension. Version 1 implementations of this extension will not fill
-- out the features structure but applications may assume that both
-- subgroupSizeControl and computeFullSubgroups are
-- supported if the extension is supported. (See also the Feature
-- Requirements section.) Applications are advised to add a
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT structure to the
-- pNext chain of DeviceCreateInfo to enable the features
-- regardless of the version of the extension supported by the
-- implementation. If the implementation only supports version 1, it will
-- safely ignore the PhysicalDeviceSubgroupSizeControlFeaturesEXT
-- structure.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceSubgroupSizeControlFeaturesEXT
PhysicalDeviceSubgroupSizeControlFeaturesEXT :: Bool -> Bool -> PhysicalDeviceSubgroupSizeControlFeaturesEXT
-- | subgroupSizeControl indicates whether the implementation
-- supports controlling shader subgroup sizes via the
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- flag and the
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT structure.
[$sel:subgroupSizeControl:PhysicalDeviceSubgroupSizeControlFeaturesEXT] :: PhysicalDeviceSubgroupSizeControlFeaturesEXT -> Bool
-- | computeFullSubgroups indicates whether the implementation
-- supports requiring full subgroups in compute shaders via the
-- PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- flag.
[$sel:computeFullSubgroups:PhysicalDeviceSubgroupSizeControlFeaturesEXT] :: PhysicalDeviceSubgroupSizeControlFeaturesEXT -> Bool
-- | VkPhysicalDeviceSubgroupSizeControlPropertiesEXT - Structure
-- describing the control subgroup size properties of an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT structure
-- describe the following properties:
--
-- Description
--
-- If the PhysicalDeviceSubgroupSizeControlPropertiesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- If
-- PhysicalDeviceSubgroupProperties::supportedOperations
-- includes
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#features-subgroup-quad,
-- minSubgroupSize must be greater than or equal to 4.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ShaderStageFlags, StructureType
data PhysicalDeviceSubgroupSizeControlPropertiesEXT
PhysicalDeviceSubgroupSizeControlPropertiesEXT :: Word32 -> Word32 -> Word32 -> ShaderStageFlags -> PhysicalDeviceSubgroupSizeControlPropertiesEXT
-- | minSubgroupSize is the minimum subgroup size supported by
-- this device. minSubgroupSize is at least one if any of the
-- physical device’s queues support QUEUE_GRAPHICS_BIT or
-- QUEUE_COMPUTE_BIT. minSubgroupSize is a power-of-two.
-- minSubgroupSize is less than or equal to
-- maxSubgroupSize. minSubgroupSize is less than or
-- equal to subgroupSize.
[$sel:minSubgroupSize:PhysicalDeviceSubgroupSizeControlPropertiesEXT] :: PhysicalDeviceSubgroupSizeControlPropertiesEXT -> Word32
-- | maxSubgroupSize is the maximum subgroup size supported by
-- this device. maxSubgroupSize is at least one if any of the
-- physical device’s queues support QUEUE_GRAPHICS_BIT or
-- QUEUE_COMPUTE_BIT. maxSubgroupSize is a power-of-two.
-- maxSubgroupSize is greater than or equal to
-- minSubgroupSize. maxSubgroupSize is greater than or
-- equal to subgroupSize.
[$sel:maxSubgroupSize:PhysicalDeviceSubgroupSizeControlPropertiesEXT] :: PhysicalDeviceSubgroupSizeControlPropertiesEXT -> Word32
-- | maxComputeWorkgroupSubgroups is the maximum number of
-- subgroups supported by the implementation within a workgroup.
[$sel:maxComputeWorkgroupSubgroups:PhysicalDeviceSubgroupSizeControlPropertiesEXT] :: PhysicalDeviceSubgroupSizeControlPropertiesEXT -> Word32
-- | requiredSubgroupSizeStages is a bitfield of what shader
-- stages support having a required subgroup size specified.
[$sel:requiredSubgroupSizeStages:PhysicalDeviceSubgroupSizeControlPropertiesEXT] :: PhysicalDeviceSubgroupSizeControlPropertiesEXT -> ShaderStageFlags
-- | VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT - Structure
-- specifying the required subgroup size of a newly created pipeline
-- shader stage
--
-- Valid Usage
--
-- Description
--
-- If a PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
-- structure is included in the pNext chain of
-- PipelineShaderStageCreateInfo, it specifies that the pipeline
-- shader stage being compiled has a required subgroup size.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT :: Word32 -> PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
-- | requiredSubgroupSize must be a power-of-two integer
--
-- requiredSubgroupSize must be greater or equal to
-- minSubgroupSize
--
-- requiredSubgroupSize must be less than or equal to
-- maxSubgroupSize
[$sel:requiredSubgroupSize:PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT] :: PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT -> Word32
type EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION = 2
pattern EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION :: forall a. Integral a => a
type EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME = "VK_EXT_subgroup_size_control"
pattern EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_subgroup_size_control.PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_subgroup_size_control.PhysicalDeviceSubgroupSizeControlFeaturesEXT
module Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup
-- | VkPhysicalDeviceSubgroupProperties - Structure describing subgroup
-- support for an implementation
--
-- Members
--
-- The members of the PhysicalDeviceSubgroupProperties structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceSubgroupProperties structure is included
-- in the pNext chain of PhysicalDeviceProperties2, it is
-- filled with the implementation-dependent limits.
--
-- 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.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, ShaderStageFlags, StructureType,
-- SubgroupFeatureFlags
data PhysicalDeviceSubgroupProperties
PhysicalDeviceSubgroupProperties :: Word32 -> ShaderStageFlags -> SubgroupFeatureFlags -> Bool -> PhysicalDeviceSubgroupProperties
-- | subgroupSize is the default number of invocations in each
-- subgroup. subgroupSize is at least 1 if any of the physical
-- device’s queues support QUEUE_GRAPHICS_BIT or
-- QUEUE_COMPUTE_BIT. subgroupSize is a power-of-two.
[$sel:subgroupSize:PhysicalDeviceSubgroupProperties] :: PhysicalDeviceSubgroupProperties -> Word32
-- | supportedStages is a bitfield of ShaderStageFlagBits
-- describing the shader stages that group operations with
-- subgroup scope are supported in. supportedStages will
-- have the SHADER_STAGE_COMPUTE_BIT bit set if any of the
-- physical device’s queues support QUEUE_COMPUTE_BIT.
[$sel:supportedStages:PhysicalDeviceSubgroupProperties] :: PhysicalDeviceSubgroupProperties -> ShaderStageFlags
-- | supportedOperations is a bitmask of
-- SubgroupFeatureFlagBits specifying the sets of group
-- operations with subgroup scope supported on this device.
-- supportedOperations will have the
-- SUBGROUP_FEATURE_BASIC_BIT bit set if any of the physical
-- device’s queues support QUEUE_GRAPHICS_BIT or
-- QUEUE_COMPUTE_BIT.
[$sel:supportedOperations:PhysicalDeviceSubgroupProperties] :: PhysicalDeviceSubgroupProperties -> SubgroupFeatureFlags
-- | quadOperationsInAllStages is a boolean specifying whether
-- quad group operations are available in all stages, or are
-- restricted to fragment and compute stages.
[$sel:quadOperationsInAllStages:PhysicalDeviceSubgroupProperties] :: PhysicalDeviceSubgroupProperties -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkSubgroupFeatureFlagBits - Enum describing what group operations are
-- supported with subgroup scope
--
-- See Also
--
-- SubgroupFeatureFlags
newtype SubgroupFeatureFlagBits
SubgroupFeatureFlagBits :: Flags -> SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniform
-- capability.
pattern SUBGROUP_FEATURE_BASIC_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformVote
-- capability.
pattern SUBGROUP_FEATURE_VOTE_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will
-- accept SPIR-V shader modules containing the
-- GroupNonUniformArithmetic capability.
pattern SUBGROUP_FEATURE_ARITHMETIC_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformBallot
-- capability.
pattern SUBGROUP_FEATURE_BALLOT_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformShuffle
-- capability.
pattern SUBGROUP_FEATURE_SHUFFLE_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will
-- accept SPIR-V shader modules containing the
-- GroupNonUniformShuffleRelative capability.
pattern SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformClustered
-- capability.
pattern SUBGROUP_FEATURE_CLUSTERED_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept
-- SPIR-V shader modules containing the GroupNonUniformQuad
-- capability.
pattern SUBGROUP_FEATURE_QUAD_BIT :: SubgroupFeatureFlagBits
-- | SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will
-- accept SPIR-V shader modules containing the
-- GroupNonUniformPartitionedNV capability.
pattern SUBGROUP_FEATURE_PARTITIONED_BIT_NV :: SubgroupFeatureFlagBits
type SubgroupFeatureFlags = SubgroupFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
instance GHC.Generics.Generic Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
instance GHC.Show.Show Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
instance Foreign.Storable.Storable Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Originally_Based_On_VK_KHR_subgroup.PhysicalDeviceSubgroupProperties
module Vulkan.Core10.Enums.ShaderModuleCreateFlagBits
newtype ShaderModuleCreateFlagBits
ShaderModuleCreateFlagBits :: Flags -> ShaderModuleCreateFlagBits
type ShaderModuleCreateFlags = ShaderModuleCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ShaderModuleCreateFlagBits.ShaderModuleCreateFlagBits
module Vulkan.Core10.Enums.SemaphoreCreateFlags
-- | VkSemaphoreCreateFlags - Reserved for future use
--
-- Description
--
-- SemaphoreCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- SemaphoreCreateInfo
newtype SemaphoreCreateFlags
SemaphoreCreateFlags :: Flags -> SemaphoreCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.SemaphoreCreateFlags.SemaphoreCreateFlags
module Vulkan.Core10.Enums.SamplerCreateFlagBits
-- | VkSamplerCreateFlagBits - Bitmask specifying additional parameters of
-- sampler
--
-- Description
--
-- Note
--
-- The approximations used when
-- SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT is
-- specified are implementation defined. Some implementations may
-- interpolate between fragment density levels in a subsampled image. In
-- that case, this bit may be used to decide whether the
-- interpolation factors are calculated per fragment or at a coarser
-- granularity.
--
-- See Also
--
-- SamplerCreateFlags
newtype SamplerCreateFlagBits
SamplerCreateFlagBits :: Flags -> SamplerCreateFlagBits
-- | SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT
-- specifies that the implementation may use approximations when
-- reconstructing a full color value for texture access from a subsampled
-- image.
pattern SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT :: SamplerCreateFlagBits
-- | SAMPLER_CREATE_SUBSAMPLED_BIT_EXT specifies that the sampler
-- will read from an image created with flags containing
-- IMAGE_CREATE_SUBSAMPLED_BIT_EXT.
pattern SAMPLER_CREATE_SUBSAMPLED_BIT_EXT :: SamplerCreateFlagBits
type SamplerCreateFlags = SamplerCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.SamplerCreateFlagBits.SamplerCreateFlagBits
module Vulkan.Core10.Enums.SampleCountFlagBits
-- | VkSampleCountFlagBits - Bitmask specifying sample counts supported for
-- an image used for storage operations
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2,
-- FramebufferMixedSamplesCombinationNV, ImageCreateInfo,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PipelineMultisampleStateCreateInfo, SampleCountFlags,
-- SampleLocationsInfoEXT,
-- getPhysicalDeviceMultisamplePropertiesEXT,
-- getPhysicalDeviceSparseImageFormatProperties
newtype SampleCountFlagBits
SampleCountFlagBits :: Flags -> SampleCountFlagBits
-- | SAMPLE_COUNT_1_BIT specifies an image with one sample per
-- pixel.
pattern SAMPLE_COUNT_1_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_2_BIT specifies an image with 2 samples per pixel.
pattern SAMPLE_COUNT_2_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_4_BIT specifies an image with 4 samples per pixel.
pattern SAMPLE_COUNT_4_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_8_BIT specifies an image with 8 samples per pixel.
pattern SAMPLE_COUNT_8_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_16_BIT specifies an image with 16 samples per
-- pixel.
pattern SAMPLE_COUNT_16_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_32_BIT specifies an image with 32 samples per
-- pixel.
pattern SAMPLE_COUNT_32_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_64_BIT specifies an image with 64 samples per
-- pixel.
pattern SAMPLE_COUNT_64_BIT :: SampleCountFlagBits
type SampleCountFlags = SampleCountFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.SampleCountFlagBits.SampleCountFlagBits
module Vulkan.Core10.Enums.RenderPassCreateFlagBits
-- | VkRenderPassCreateFlagBits - Bitmask specifying additional properties
-- of a renderpass
--
-- See Also
--
-- RenderPassCreateFlags
newtype RenderPassCreateFlagBits
RenderPassCreateFlagBits :: Flags -> RenderPassCreateFlagBits
-- | RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM specifies that the
-- created renderpass is compatible with render pass transform.
pattern RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM :: RenderPassCreateFlagBits
type RenderPassCreateFlags = RenderPassCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.RenderPassCreateFlagBits.RenderPassCreateFlagBits
module Vulkan.Core10.Enums.QueueFlagBits
-- | VkQueueFlagBits - Bitmask specifying capabilities of queues in a queue
-- family
--
-- Description
--
--
-- - QUEUE_GRAPHICS_BIT specifies that queues in this queue
-- family support graphics operations.
--
--
--
-- - QUEUE_COMPUTE_BIT specifies that queues in this queue
-- family support compute operations.
-- - QUEUE_TRANSFER_BIT specifies that queues in this queue
-- family support transfer operations.
-- - QUEUE_SPARSE_BINDING_BIT specifies that queues in this
-- queue family support sparse memory management operations (see
-- Sparse Resources). If any of the sparse resource features are
-- enabled, then at least one queue family must support this
-- bit.
-- - if QUEUE_PROTECTED_BIT is set, then the queues in this
-- queue family support the DEVICE_QUEUE_CREATE_PROTECTED_BIT bit.
-- (see Protected Memory). If the protected memory physical device
-- feature is supported, then at least one queue family of at least one
-- physical device exposed by the implementation must support this
-- bit.
--
--
-- If an implementation exposes any queue family that supports graphics
-- operations, at least one queue family of at least one physical device
-- exposed by the implementation must support both graphics and
-- compute operations.
--
-- Furthermore, if the protected memory physical device feature is
-- supported, then at least one queue family of at least one physical
-- device exposed by the implementation must support graphics
-- operations, compute operations, and protected memory operations.
--
-- Note
--
-- All commands that are allowed on a queue that supports transfer
-- operations are also allowed on a queue that supports either graphics
-- or compute operations. Thus, if the capabilities of a queue family
-- include QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT, then
-- reporting the QUEUE_TRANSFER_BIT capability separately for that
-- queue family is optional.
--
-- For further details see Queues.
--
-- See Also
--
-- QueueFlags
newtype QueueFlagBits
QueueFlagBits :: Flags -> QueueFlagBits
pattern QUEUE_GRAPHICS_BIT :: QueueFlagBits
pattern QUEUE_COMPUTE_BIT :: QueueFlagBits
pattern QUEUE_TRANSFER_BIT :: QueueFlagBits
pattern QUEUE_SPARSE_BINDING_BIT :: QueueFlagBits
pattern QUEUE_PROTECTED_BIT :: QueueFlagBits
type QueueFlags = QueueFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.QueueFlagBits.QueueFlagBits
module Vulkan.Core10.Enums.QueryType
-- | VkQueryType - Specify the type of queries managed by a query pool
--
-- See Also
--
-- QueryPoolCreateInfo,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- writeAccelerationStructuresPropertiesKHR
newtype QueryType
QueryType :: Int32 -> QueryType
-- | QUERY_TYPE_OCCLUSION specifies an occlusion query.
pattern QUERY_TYPE_OCCLUSION :: QueryType
-- | QUERY_TYPE_PIPELINE_STATISTICS specifies a pipeline
-- statistics query.
pattern QUERY_TYPE_PIPELINE_STATISTICS :: QueryType
-- | QUERY_TYPE_TIMESTAMP specifies a timestamp query.
pattern QUERY_TYPE_TIMESTAMP :: QueryType
-- | QUERY_TYPE_PERFORMANCE_QUERY_INTEL specifies a Intel
-- performance query.
pattern QUERY_TYPE_PERFORMANCE_QUERY_INTEL :: QueryType
-- | QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR
-- specifies a ray tracing serialization acceleration structure size
-- query
pattern QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR :: QueryType
-- | QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR specifies
-- a ray tracing acceleration structure size query.
pattern QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR :: QueryType
-- | QUERY_TYPE_PERFORMANCE_QUERY_KHR specifies a performance
-- query.
pattern QUERY_TYPE_PERFORMANCE_QUERY_KHR :: QueryType
-- | QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT specifies a
-- transform feedback query.
pattern QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT :: QueryType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.QueryType.QueryType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.QueryType.QueryType
instance GHC.Classes.Ord Vulkan.Core10.Enums.QueryType.QueryType
instance GHC.Classes.Eq Vulkan.Core10.Enums.QueryType.QueryType
instance GHC.Show.Show Vulkan.Core10.Enums.QueryType.QueryType
instance GHC.Read.Read Vulkan.Core10.Enums.QueryType.QueryType
module Vulkan.Core10.Enums.QueryResultFlagBits
-- | VkQueryResultFlagBits - Bitmask specifying how and when query results
-- are returned
--
-- See Also
--
-- QueryResultFlags
newtype QueryResultFlagBits
QueryResultFlagBits :: Flags -> QueryResultFlagBits
-- | QUERY_RESULT_64_BIT specifies the results will be written as an
-- array of 64-bit unsigned integer values. If this bit is not set, the
-- results will be written as an array of 32-bit unsigned integer values.
pattern QUERY_RESULT_64_BIT :: QueryResultFlagBits
-- | QUERY_RESULT_WAIT_BIT specifies that Vulkan will wait for each
-- query’s status to become available before retrieving its results.
pattern QUERY_RESULT_WAIT_BIT :: QueryResultFlagBits
-- | QUERY_RESULT_WITH_AVAILABILITY_BIT specifies that the
-- availability status accompanies the results.
pattern QUERY_RESULT_WITH_AVAILABILITY_BIT :: QueryResultFlagBits
-- | QUERY_RESULT_PARTIAL_BIT specifies that returning partial
-- results is acceptable.
pattern QUERY_RESULT_PARTIAL_BIT :: QueryResultFlagBits
type QueryResultFlags = QueryResultFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.QueryResultFlagBits.QueryResultFlagBits
module Vulkan.Core10.Enums.QueryPoolCreateFlags
-- | VkQueryPoolCreateFlags - Reserved for future use
--
-- Description
--
-- QueryPoolCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- QueryPoolCreateInfo
newtype QueryPoolCreateFlags
QueryPoolCreateFlags :: Flags -> QueryPoolCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.QueryPoolCreateFlags.QueryPoolCreateFlags
module Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits
-- | VkQueryPipelineStatisticFlagBits - Bitmask specifying queried pipeline
-- statistics
--
-- Description
--
-- These values are intended to measure relative statistics on one
-- implementation. Various device architectures will count these values
-- differently. Any or all counters may be affected by the issues
-- described in Query Operation.
--
-- Note
--
-- For example, tile-based rendering devices may need to replay
-- the scene multiple times, affecting some of the counts.
--
-- If a pipeline has rasterizerDiscardEnable enabled,
-- implementations may discard primitives after the final vertex
-- processing stage. As a result, if rasterizerDiscardEnable is
-- enabled, the clipping input and output primitives counters may
-- not be incremented.
--
-- When a pipeline statistics query finishes, the result for that query
-- is marked as available. The application can copy the result to
-- a buffer (via cmdCopyQueryPoolResults), or request it be put
-- into host memory (via getQueryPoolResults).
--
-- See Also
--
-- QueryPipelineStatisticFlags
newtype QueryPipelineStatisticFlagBits
QueryPipelineStatisticFlagBits :: Flags -> QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT specifies
-- that queries managed by the pool will count the number of vertices
-- processed by the input assembly stage. Vertices corresponding
-- to incomplete primitives may contribute to the count.
pattern QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT
-- specifies that queries managed by the pool will count the number of
-- primitives processed by the input assembly stage. If primitive
-- restart is enabled, restarting the primitive topology has no effect on
-- the count. Incomplete primitives may be counted.
pattern QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- vertex shader invocations. This counter’s value is incremented each
-- time a vertex shader is invoked.
pattern QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- geometry shader invocations. This counter’s value is incremented each
-- time a geometry shader is invoked. In the case of instanced
-- geometry shaders, the geometry shader invocations count is
-- incremented for each separate instanced invocation.
pattern QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT
-- specifies that queries managed by the pool will count the number of
-- primitives generated by geometry shader invocations. The counter’s
-- value is incremented each time the geometry shader emits a primitive.
-- Restarting primitive topology using the SPIR-V instructions
-- OpEndPrimitive or OpEndStreamPrimitive has no effect
-- on the geometry shader output primitives count.
pattern QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT specifies
-- that queries managed by the pool will count the number of primitives
-- processed by the Primitive Clipping stage of the pipeline. The
-- counter’s value is incremented each time a primitive reaches the
-- primitive clipping stage.
pattern QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT specifies that
-- queries managed by the pool will count the number of primitives output
-- by the Primitive Clipping stage of the pipeline. The counter’s
-- value is incremented each time a primitive passes the primitive
-- clipping stage. The actual number of primitives output by the
-- primitive clipping stage for a particular input primitive is
-- implementation-dependent but must satisfy the following
-- conditions:
--
--
-- - If at least one vertex of the input primitive lies inside the
-- clipping volume, the counter is incremented by one or more.
-- - Otherwise, the counter is incremented by zero or more.
--
pattern QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- fragment shader invocations. The counter’s value is incremented each
-- time the fragment shader is invoked.
pattern QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- |
-- QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT
-- specifies that queries managed by the pool will count the number of
-- patches processed by the tessellation control shader. The counter’s
-- value is incremented once for each patch for which a tessellation
-- control shader is invoked.
pattern QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT :: QueryPipelineStatisticFlagBits
-- |
-- QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- invocations of the tessellation evaluation shader. The counter’s value
-- is incremented each time the tessellation evaluation shader is
-- invoked.
pattern QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- compute shader invocations. The counter’s value is incremented every
-- time the compute shader is invoked. Implementations may skip
-- the execution of certain compute shader invocations or execute
-- additional compute shader invocations for implementation-dependent
-- reasons as long as the results of rendering otherwise remain
-- unchanged.
pattern QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
type QueryPipelineStatisticFlags = QueryPipelineStatisticFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.QueryPipelineStatisticFlagBits.QueryPipelineStatisticFlagBits
module Vulkan.Core10.Enums.QueryControlFlagBits
-- | VkQueryControlFlagBits - Bitmask specifying constraints on a query
--
-- See Also
--
-- QueryControlFlags
newtype QueryControlFlagBits
QueryControlFlagBits :: Flags -> QueryControlFlagBits
-- | QUERY_CONTROL_PRECISE_BIT specifies the precision of
-- occlusion queries.
pattern QUERY_CONTROL_PRECISE_BIT :: QueryControlFlagBits
type QueryControlFlags = QueryControlFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.QueryControlFlagBits.QueryControlFlagBits
module Vulkan.Core10.Enums.PrimitiveTopology
-- | VkPrimitiveTopology - Supported primitive topologies
--
-- Description
--
-- Each primitive topology, and its construction from a list of vertices,
-- is described in detail below with a supporting diagram, according to
-- the following key:
--
-- TODO: table
--
-- The diagrams are supported with mathematical definitions where the
-- vertices (v) and primitives (p) are numbered starting from 0; v0 is
-- the first vertex in the provided data and p0 is the first primitive in
-- the set of primitives defined by the vertices and topology.
--
-- See Also
--
-- PipelineInputAssemblyStateCreateInfo
newtype PrimitiveTopology
PrimitiveTopology :: Int32 -> PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_POINT_LIST specifies a series of separate
-- point primitives.
pattern PRIMITIVE_TOPOLOGY_POINT_LIST :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_LIST specifies a series of separate
-- line primitives.
pattern PRIMITIVE_TOPOLOGY_LINE_LIST :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_STRIP specifies a series of
-- connected line primitives with consecutive lines sharing a
-- vertex.
pattern PRIMITIVE_TOPOLOGY_LINE_STRIP :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_LIST specifies a series of
-- separate triangle primitives.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP specifies a series of
-- connected triangle primitives with consecutive triangles
-- sharing an edge.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_FAN specifies a series of
-- connected triangle primitives with all triangles sharing a
-- common vertex.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_FAN :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY specifies a series
-- of separate line primitives with adjacency.
pattern PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY specifies a series
-- of connected line primitives with adjacency, with consecutive
-- primitives sharing three vertices.
pattern PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY specifies a
-- series of separate triangle primitives with adjacency.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY specifies
-- connected triangle primitives with adjacency, with consecutive
-- triangles sharing an edge.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_PATCH_LIST specifies separate patch
-- primitives.
pattern PRIMITIVE_TOPOLOGY_PATCH_LIST :: PrimitiveTopology
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PrimitiveTopology.PrimitiveTopology
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PrimitiveTopology.PrimitiveTopology
instance GHC.Classes.Ord Vulkan.Core10.Enums.PrimitiveTopology.PrimitiveTopology
instance GHC.Classes.Eq Vulkan.Core10.Enums.PrimitiveTopology.PrimitiveTopology
instance GHC.Show.Show Vulkan.Core10.Enums.PrimitiveTopology.PrimitiveTopology
instance GHC.Read.Read Vulkan.Core10.Enums.PrimitiveTopology.PrimitiveTopology
module Vulkan.Core10.Enums.PolygonMode
-- | VkPolygonMode - Control polygon rasterization mode
--
-- Description
--
-- These modes affect only the final rasterization of polygons: in
-- particular, a polygon’s vertices are shaded and the polygon is clipped
-- and possibly culled before these modes are applied.
--
-- See Also
--
-- PipelineRasterizationStateCreateInfo
newtype PolygonMode
PolygonMode :: Int32 -> PolygonMode
-- | POLYGON_MODE_FILL specifies that polygons are rendered using
-- the polygon rasterization rules in this section.
pattern POLYGON_MODE_FILL :: PolygonMode
-- | POLYGON_MODE_LINE specifies that polygon edges are drawn as
-- line segments.
pattern POLYGON_MODE_LINE :: PolygonMode
-- | POLYGON_MODE_POINT specifies that polygon vertices are drawn as
-- points.
pattern POLYGON_MODE_POINT :: PolygonMode
-- | POLYGON_MODE_FILL_RECTANGLE_NV specifies that polygons are
-- rendered using polygon rasterization rules, modified to consider a
-- sample within the primitive if the sample location is inside the
-- axis-aligned bounding box of the triangle after projection. Note that
-- the barycentric weights used in attribute interpolation can
-- extend outside the range [0,1] when these primitives are shaded.
-- Special treatment is given to a sample position on the boundary edge
-- of the bounding box. In such a case, if two rectangles lie on either
-- side of a common edge (with identical endpoints) on which a sample
-- position lies, then exactly one of the triangles must produce a
-- fragment that covers that sample during rasterization.
--
-- Polygons rendered in POLYGON_MODE_FILL_RECTANGLE_NV mode
-- may be clipped by the frustum or by user clip planes. If
-- clipping is applied, the triangle is culled rather than clipped.
--
-- Area calculation and facingness are determined for
-- POLYGON_MODE_FILL_RECTANGLE_NV mode using the triangle’s
-- vertices.
pattern POLYGON_MODE_FILL_RECTANGLE_NV :: PolygonMode
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PolygonMode.PolygonMode
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PolygonMode.PolygonMode
instance GHC.Classes.Ord Vulkan.Core10.Enums.PolygonMode.PolygonMode
instance GHC.Classes.Eq Vulkan.Core10.Enums.PolygonMode.PolygonMode
instance GHC.Show.Show Vulkan.Core10.Enums.PolygonMode.PolygonMode
instance GHC.Read.Read Vulkan.Core10.Enums.PolygonMode.PolygonMode
module Vulkan.Core10.Enums.PipelineViewportStateCreateFlags
-- | VkPipelineViewportStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineViewportStateCreateFlags is a bitmask type for setting
-- a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineViewportStateCreateInfo
newtype PipelineViewportStateCreateFlags
PipelineViewportStateCreateFlags :: Flags -> PipelineViewportStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineViewportStateCreateFlags.PipelineViewportStateCreateFlags
module Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags
-- | VkPipelineVertexInputStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineVertexInputStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineVertexInputStateCreateInfo
newtype PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags :: Flags -> PipelineVertexInputStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags.PipelineVertexInputStateCreateFlags
module Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags
-- | VkPipelineTessellationStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineTessellationStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineTessellationStateCreateInfo
newtype PipelineTessellationStateCreateFlags
PipelineTessellationStateCreateFlags :: Flags -> PipelineTessellationStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags.PipelineTessellationStateCreateFlags
module Vulkan.Core10.Enums.PipelineStageFlagBits
-- | VkPipelineStageFlagBits - Bitmask specifying pipeline stages
--
-- See Also
--
-- CheckpointDataNV, PipelineStageFlags,
-- cmdWriteBufferMarkerAMD, cmdWriteTimestamp
newtype PipelineStageFlagBits
PipelineStageFlagBits :: Flags -> PipelineStageFlagBits
-- | PIPELINE_STAGE_TOP_OF_PIPE_BIT is equivalent to
-- PIPELINE_STAGE_ALL_COMMANDS_BIT with AccessFlags set to
-- 0 when specified in the second synchronization scope, but
-- specifies no stages in the first scope.
pattern PIPELINE_STAGE_TOP_OF_PIPE_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_DRAW_INDIRECT_BIT specifies the stage of the
-- pipeline where Draw/DispatchIndirect data structures are consumed.
-- This stage also includes reading commands written by
-- cmdExecuteGeneratedCommandsNV.
pattern PIPELINE_STAGE_DRAW_INDIRECT_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_VERTEX_INPUT_BIT specifies the stage of the
-- pipeline where vertex and index buffers are consumed.
pattern PIPELINE_STAGE_VERTEX_INPUT_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_VERTEX_SHADER_BIT specifies the vertex shader
-- stage.
pattern PIPELINE_STAGE_VERTEX_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT specifies the
-- tessellation control shader stage.
pattern PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT specifies the
-- tessellation evaluation shader stage.
pattern PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_GEOMETRY_SHADER_BIT specifies the geometry
-- shader stage.
pattern PIPELINE_STAGE_GEOMETRY_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_FRAGMENT_SHADER_BIT specifies the fragment
-- shader stage.
pattern PIPELINE_STAGE_FRAGMENT_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT specifies the stage of
-- the pipeline where early fragment tests (depth and stencil tests
-- before fragment shading) are performed. This stage also includes
-- subpass load operations for framebuffer attachments with a
-- depth/stencil format.
pattern PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT specifies the stage of
-- the pipeline where late fragment tests (depth and stencil tests after
-- fragment shading) are performed. This stage also includes subpass
-- store operations for framebuffer attachments with a depth/stencil
-- format.
pattern PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT specifies the stage
-- of the pipeline after blending where the final color values are output
-- from the pipeline. This stage also includes subpass load and store
-- operations and multisample resolve operations for framebuffer
-- attachments with a color or depth/stencil format.
pattern PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_COMPUTE_SHADER_BIT specifies the execution of a
-- compute shader.
pattern PIPELINE_STAGE_COMPUTE_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TRANSFER_BIT specifies the following commands:
--
--
pattern PIPELINE_STAGE_TRANSFER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT is equivalent to
-- PIPELINE_STAGE_ALL_COMMANDS_BIT with AccessFlags set to
-- 0 when specified in the first synchronization scope, but
-- specifies no stages in the second scope.
pattern PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_HOST_BIT specifies a pseudo-stage indicating
-- execution on the host of reads/writes of device memory. This stage is
-- not invoked by any commands recorded in a command buffer.
pattern PIPELINE_STAGE_HOST_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_ALL_GRAPHICS_BIT specifies the execution of all
-- graphics pipeline stages, and is equivalent to the logical OR of:
--
--
pattern PIPELINE_STAGE_ALL_GRAPHICS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_ALL_COMMANDS_BIT specifies all commands
-- supported on the queue it is used with.
pattern PIPELINE_STAGE_ALL_COMMANDS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV specifies the stage of
-- the pipeline where device-side preprocessing for generated commands
-- via cmdPreprocessGeneratedCommandsNV is handled.
pattern PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT specifies the
-- stage of the pipeline where the fragment density map is read to
-- generate the fragment areas.
pattern PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_MESH_SHADER_BIT_NV specifies the mesh shader
-- stage.
pattern PIPELINE_STAGE_MESH_SHADER_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TASK_SHADER_BIT_NV specifies the task shader
-- stage.
pattern PIPELINE_STAGE_TASK_SHADER_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV specifies the stage of
-- the pipeline where the shading rate image is read to determine
-- the shading rate for portions of a rasterized primitive.
pattern PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR specifies
-- the execution of acceleration structure commands.
pattern PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR :: PipelineStageFlagBits
-- | PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR specifies the
-- execution of the ray tracing shader stages.
pattern PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR :: PipelineStageFlagBits
-- | PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT specifies the
-- stage of the pipeline where the predicate of conditional rendering is
-- consumed.
pattern PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT specifies the stage
-- of the pipeline where vertex attribute output values are written to
-- the transform feedback buffers.
pattern PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT :: PipelineStageFlagBits
type PipelineStageFlags = PipelineStageFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineStageFlagBits.PipelineStageFlagBits
module Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits
-- | VkPipelineShaderStageCreateFlagBits - Bitmask controlling how a
-- pipeline shader stage is created
--
-- Description
--
-- Note
--
-- If
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- and PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- are specified and minSubgroupSize does not equal
-- maxSubgroupSize and no required subgroup size is
-- specified, then the only way to guarantee that the 'X' dimension of
-- the local workgroup size is a multiple of SubgroupSize is to
-- make it a multiple of maxSubgroupSize. Under these
-- conditions, you are guaranteed full subgroups but not any particular
-- subgroup size.
--
-- See Also
--
-- PipelineShaderStageCreateFlags
newtype PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits :: Flags -> PipelineShaderStageCreateFlagBits
-- | PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- specifies that the subgroup sizes must be launched with all
-- invocations active in the compute stage.
pattern PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT :: PipelineShaderStageCreateFlagBits
-- |
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- specifies that the SubgroupSize may vary in the shader
-- stage.
pattern PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT :: PipelineShaderStageCreateFlagBits
type PipelineShaderStageCreateFlags = PipelineShaderStageCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits.PipelineShaderStageCreateFlagBits
module Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags
-- | VkPipelineRasterizationStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineRasterizationStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineRasterizationStateCreateInfo
newtype PipelineRasterizationStateCreateFlags
PipelineRasterizationStateCreateFlags :: Flags -> PipelineRasterizationStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags.PipelineRasterizationStateCreateFlags
module Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags
-- | VkPipelineMultisampleStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineMultisampleStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineMultisampleStateCreateInfo
newtype PipelineMultisampleStateCreateFlags
PipelineMultisampleStateCreateFlags :: Flags -> PipelineMultisampleStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags.PipelineMultisampleStateCreateFlags
module Vulkan.Core10.Enums.PipelineLayoutCreateFlags
-- | VkPipelineLayoutCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineLayoutCreateFlags is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- PipelineLayoutCreateInfo
newtype PipelineLayoutCreateFlags
PipelineLayoutCreateFlags :: Flags -> PipelineLayoutCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineLayoutCreateFlags.PipelineLayoutCreateFlags
module Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags
-- | VkPipelineInputAssemblyStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineInputAssemblyStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineInputAssemblyStateCreateInfo
newtype PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags :: Flags -> PipelineInputAssemblyStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags.PipelineInputAssemblyStateCreateFlags
module Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags
-- | VkPipelineDynamicStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineDynamicStateCreateFlags is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineDynamicStateCreateInfo
newtype PipelineDynamicStateCreateFlags
PipelineDynamicStateCreateFlags :: Flags -> PipelineDynamicStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags.PipelineDynamicStateCreateFlags
module Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags
-- | VkPipelineDepthStencilStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineDepthStencilStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineDepthStencilStateCreateInfo
newtype PipelineDepthStencilStateCreateFlags
PipelineDepthStencilStateCreateFlags :: Flags -> PipelineDepthStencilStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlags.PipelineDepthStencilStateCreateFlags
module Vulkan.Core10.Enums.PipelineCreateFlagBits
-- | VkPipelineCreateFlagBits - Bitmask controlling how a pipeline is
-- created
--
-- Description
--
--
--
--
--
-- It is valid to set both PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT
-- and PIPELINE_CREATE_DERIVATIVE_BIT. This allows a pipeline to
-- be both a parent and possibly a child in a pipeline hierarchy. See
-- Pipeline Derivatives for more information.
--
-- See Also
--
-- PipelineCreateFlags
newtype PipelineCreateFlagBits
PipelineCreateFlagBits :: Flags -> PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DERIVATIVE_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_LIBRARY_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DEFER_COMPILE_BIT_NV :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISPATCH_BASE_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: PipelineCreateFlagBits
type PipelineCreateFlags = PipelineCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineCreateFlagBits.PipelineCreateFlagBits
module Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags
-- | VkPipelineColorBlendStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineColorBlendStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineColorBlendStateCreateInfo
newtype PipelineColorBlendStateCreateFlags
PipelineColorBlendStateCreateFlags :: Flags -> PipelineColorBlendStateCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlags.PipelineColorBlendStateCreateFlags
module Vulkan.Core10.Enums.PipelineCacheHeaderVersion
-- | VkPipelineCacheHeaderVersion - Encode pipeline cache version
--
-- See Also
--
-- createPipelineCache, getPipelineCacheData
newtype PipelineCacheHeaderVersion
PipelineCacheHeaderVersion :: Int32 -> PipelineCacheHeaderVersion
-- | PIPELINE_CACHE_HEADER_VERSION_ONE specifies version one of the
-- pipeline cache.
pattern PIPELINE_CACHE_HEADER_VERSION_ONE :: PipelineCacheHeaderVersion
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineCacheHeaderVersion.PipelineCacheHeaderVersion
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineCacheHeaderVersion.PipelineCacheHeaderVersion
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineCacheHeaderVersion.PipelineCacheHeaderVersion
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineCacheHeaderVersion.PipelineCacheHeaderVersion
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineCacheHeaderVersion.PipelineCacheHeaderVersion
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineCacheHeaderVersion.PipelineCacheHeaderVersion
module Vulkan.Core10.Enums.PipelineCacheCreateFlagBits
-- | VkPipelineCacheCreateFlagBits - Bitmask specifying the behavior of the
-- pipeline cache
--
-- See Also
--
-- PipelineCacheCreateFlags
newtype PipelineCacheCreateFlagBits
PipelineCacheCreateFlagBits :: Flags -> PipelineCacheCreateFlagBits
-- | PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT specifies
-- that all commands that modify the created PipelineCache will be
-- externally synchronized. When set, the implementation
-- may skip any unnecessary processing needed to support
-- simultaneous modification from multiple threads where allowed.
pattern PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT :: PipelineCacheCreateFlagBits
type PipelineCacheCreateFlags = PipelineCacheCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineCacheCreateFlagBits.PipelineCacheCreateFlagBits
module Vulkan.Core10.Enums.PipelineBindPoint
-- | VkPipelineBindPoint - Specify the bind point of a pipeline object to a
-- command buffer
--
-- See Also
--
-- DescriptorUpdateTemplateCreateInfo,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- IndirectCommandsLayoutCreateInfoNV, SubpassDescription,
-- SubpassDescription2, cmdBindDescriptorSets,
-- cmdBindPipeline, cmdBindPipelineShaderGroupNV,
-- cmdPushDescriptorSetKHR
newtype PipelineBindPoint
PipelineBindPoint :: Int32 -> PipelineBindPoint
-- | PIPELINE_BIND_POINT_GRAPHICS specifies binding as a graphics
-- pipeline.
pattern PIPELINE_BIND_POINT_GRAPHICS :: PipelineBindPoint
-- | PIPELINE_BIND_POINT_COMPUTE specifies binding as a compute
-- pipeline.
pattern PIPELINE_BIND_POINT_COMPUTE :: PipelineBindPoint
-- | PIPELINE_BIND_POINT_RAY_TRACING_KHR specifies binding as a ray
-- tracing pipeline.
pattern PIPELINE_BIND_POINT_RAY_TRACING_KHR :: PipelineBindPoint
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PipelineBindPoint.PipelineBindPoint
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PipelineBindPoint.PipelineBindPoint
instance GHC.Classes.Ord Vulkan.Core10.Enums.PipelineBindPoint.PipelineBindPoint
instance GHC.Classes.Eq Vulkan.Core10.Enums.PipelineBindPoint.PipelineBindPoint
instance GHC.Show.Show Vulkan.Core10.Enums.PipelineBindPoint.PipelineBindPoint
instance GHC.Read.Read Vulkan.Core10.Enums.PipelineBindPoint.PipelineBindPoint
module Vulkan.Core10.Enums.PhysicalDeviceType
-- | VkPhysicalDeviceType - Supported physical device types
--
-- Description
--
-- The physical device type is advertised for informational purposes
-- only, and does not directly affect the operation of the system.
-- However, the device type may correlate with other advertised
-- properties or capabilities of the system, such as how many memory
-- heaps there are.
--
-- See Also
--
-- PhysicalDeviceProperties
newtype PhysicalDeviceType
PhysicalDeviceType :: Int32 -> PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_OTHER - the device does not match any
-- other available types.
pattern PHYSICAL_DEVICE_TYPE_OTHER :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU - the device is typically
-- one embedded in or tightly coupled with the host.
pattern PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_DISCRETE_GPU - the device is typically a
-- separate processor connected to the host via an interlink.
pattern PHYSICAL_DEVICE_TYPE_DISCRETE_GPU :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU - the device is typically a
-- virtual node in a virtualization environment.
pattern PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_CPU - the device is typically running on
-- the same processors as the host.
pattern PHYSICAL_DEVICE_TYPE_CPU :: PhysicalDeviceType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.PhysicalDeviceType.PhysicalDeviceType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.PhysicalDeviceType.PhysicalDeviceType
instance GHC.Classes.Ord Vulkan.Core10.Enums.PhysicalDeviceType.PhysicalDeviceType
instance GHC.Classes.Eq Vulkan.Core10.Enums.PhysicalDeviceType.PhysicalDeviceType
instance GHC.Show.Show Vulkan.Core10.Enums.PhysicalDeviceType.PhysicalDeviceType
instance GHC.Read.Read Vulkan.Core10.Enums.PhysicalDeviceType.PhysicalDeviceType
module Vulkan.Core10.Enums.ObjectType
-- | VkObjectType - Specify an enumeration to track object handle types
--
-- Description
--
-- '
--
-- TODO: table
--
-- VkObjectType and Vulkan Handle Relationship
--
-- See Also
--
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- getPrivateDataEXT, setPrivateDataEXT
newtype ObjectType
ObjectType :: Int32 -> ObjectType
pattern OBJECT_TYPE_UNKNOWN :: ObjectType
pattern OBJECT_TYPE_INSTANCE :: ObjectType
pattern OBJECT_TYPE_PHYSICAL_DEVICE :: ObjectType
pattern OBJECT_TYPE_DEVICE :: ObjectType
pattern OBJECT_TYPE_QUEUE :: ObjectType
pattern OBJECT_TYPE_SEMAPHORE :: ObjectType
pattern OBJECT_TYPE_COMMAND_BUFFER :: ObjectType
pattern OBJECT_TYPE_FENCE :: ObjectType
pattern OBJECT_TYPE_DEVICE_MEMORY :: ObjectType
pattern OBJECT_TYPE_BUFFER :: ObjectType
pattern OBJECT_TYPE_IMAGE :: ObjectType
pattern OBJECT_TYPE_EVENT :: ObjectType
pattern OBJECT_TYPE_QUERY_POOL :: ObjectType
pattern OBJECT_TYPE_BUFFER_VIEW :: ObjectType
pattern OBJECT_TYPE_IMAGE_VIEW :: ObjectType
pattern OBJECT_TYPE_SHADER_MODULE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_CACHE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_LAYOUT :: ObjectType
pattern OBJECT_TYPE_RENDER_PASS :: ObjectType
pattern OBJECT_TYPE_PIPELINE :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: ObjectType
pattern OBJECT_TYPE_SAMPLER :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_POOL :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET :: ObjectType
pattern OBJECT_TYPE_FRAMEBUFFER :: ObjectType
pattern OBJECT_TYPE_COMMAND_POOL :: ObjectType
pattern OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: ObjectType
pattern OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: ObjectType
pattern OBJECT_TYPE_DEFERRED_OPERATION_KHR :: ObjectType
pattern OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: ObjectType
pattern OBJECT_TYPE_VALIDATION_CACHE_EXT :: ObjectType
pattern OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: ObjectType
pattern OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: ObjectType
pattern OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: ObjectType
pattern OBJECT_TYPE_DISPLAY_MODE_KHR :: ObjectType
pattern OBJECT_TYPE_DISPLAY_KHR :: ObjectType
pattern OBJECT_TYPE_SWAPCHAIN_KHR :: ObjectType
pattern OBJECT_TYPE_SURFACE_KHR :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: ObjectType
pattern OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: ObjectType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ObjectType.ObjectType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ObjectType.ObjectType
instance GHC.Classes.Ord Vulkan.Core10.Enums.ObjectType.ObjectType
instance GHC.Classes.Eq Vulkan.Core10.Enums.ObjectType.ObjectType
instance GHC.Show.Show Vulkan.Core10.Enums.ObjectType.ObjectType
instance GHC.Read.Read Vulkan.Core10.Enums.ObjectType.ObjectType
module Vulkan.Core10.Enums.MemoryPropertyFlagBits
-- | VkMemoryPropertyFlagBits - Bitmask specifying properties for a memory
-- type
--
-- Description
--
-- For any memory allocated with both the
-- MEMORY_PROPERTY_HOST_COHERENT_BIT and the
-- MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD, host or device
-- accesses also perform automatic memory domain transfer operations,
-- such that writes are always automatically available and visible to
-- both host and device memory domains.
--
-- Note
--
-- Device coherence is a useful property for certain debugging use cases
-- (e.g. crash analysis, where performing separate coherence actions
-- could mean values are not reported correctly). However, device
-- coherent accesses may be slower than equivalent accesses without
-- device coherence, particularly if they are also device uncached. For
-- device uncached memory in particular, repeated accesses to the same or
-- neighbouring memory locations over a short time period (e.g. within a
-- frame) may be slower than it would be for the equivalent cached memory
-- type. As such, it is generally inadvisable to use device coherent or
-- device uncached memory except when really needed.
--
-- See Also
--
-- MemoryPropertyFlags
newtype MemoryPropertyFlagBits
MemoryPropertyFlagBits :: Flags -> MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_LOCAL_BIT bit specifies that memory
-- allocated with this type is the most efficient for device access. This
-- property will be set if and only if the memory type belongs to a heap
-- with the MEMORY_HEAP_DEVICE_LOCAL_BIT set.
pattern MEMORY_PROPERTY_DEVICE_LOCAL_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_VISIBLE_BIT bit specifies that memory
-- allocated with this type can be mapped for host access using
-- mapMemory.
pattern MEMORY_PROPERTY_HOST_VISIBLE_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_COHERENT_BIT bit specifies that the host
-- cache management commands flushMappedMemoryRanges and
-- invalidateMappedMemoryRanges are not needed to flush host
-- writes to the device or make device writes visible to the host,
-- respectively.
pattern MEMORY_PROPERTY_HOST_COHERENT_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_CACHED_BIT bit specifies that memory
-- allocated with this type is cached on the host. Host memory accesses
-- to uncached memory are slower than to cached memory, however uncached
-- memory is always host coherent.
pattern MEMORY_PROPERTY_HOST_CACHED_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT bit specifies that the
-- memory type only allows device access to the memory. Memory types
-- must not have both MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT
-- and MEMORY_PROPERTY_HOST_VISIBLE_BIT set. Additionally, the
-- object’s backing memory may be provided by the implementation
-- lazily as specified in Lazily Allocated Memory.
pattern MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD bit specifies that
-- memory allocated with this type is not cached on the device. Uncached
-- device memory is always device coherent.
pattern MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD bit specifies that
-- device accesses to allocations of this memory type are automatically
-- made available and visible.
pattern MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_PROTECTED_BIT bit specifies that the memory
-- type only allows device access to the memory, and allows protected
-- queue operations to access the memory. Memory types must not
-- have MEMORY_PROPERTY_PROTECTED_BIT set and any of
-- MEMORY_PROPERTY_HOST_VISIBLE_BIT set, or
-- MEMORY_PROPERTY_HOST_COHERENT_BIT set, or
-- MEMORY_PROPERTY_HOST_CACHED_BIT set.
pattern MEMORY_PROPERTY_PROTECTED_BIT :: MemoryPropertyFlagBits
type MemoryPropertyFlags = MemoryPropertyFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.MemoryPropertyFlagBits.MemoryPropertyFlagBits
module Vulkan.Core10.Enums.MemoryMapFlags
-- | VkMemoryMapFlags - Reserved for future use
--
-- Description
--
-- MemoryMapFlags is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- See Also
--
-- mapMemory
newtype MemoryMapFlags
MemoryMapFlags :: Flags -> MemoryMapFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
instance GHC.Show.Show Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
instance GHC.Read.Read Vulkan.Core10.Enums.MemoryMapFlags.MemoryMapFlags
module Vulkan.Core10.Enums.MemoryHeapFlagBits
-- | VkMemoryHeapFlagBits - Bitmask specifying attribute flags for a heap
--
-- See Also
--
-- MemoryHeapFlags
newtype MemoryHeapFlagBits
MemoryHeapFlagBits :: Flags -> MemoryHeapFlagBits
-- | MEMORY_HEAP_DEVICE_LOCAL_BIT specifies that the heap
-- corresponds to device local memory. Device local memory may
-- have different performance characteristics than host local memory, and
-- may support different memory property flags.
pattern MEMORY_HEAP_DEVICE_LOCAL_BIT :: MemoryHeapFlagBits
-- | MEMORY_HEAP_MULTI_INSTANCE_BIT specifies that in a logical
-- device representing more than one physical device, there is a
-- per-physical device instance of the heap memory. By default, an
-- allocation from such a heap will be replicated to each physical
-- device’s instance of the heap.
pattern MEMORY_HEAP_MULTI_INSTANCE_BIT :: MemoryHeapFlagBits
type MemoryHeapFlags = MemoryHeapFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.MemoryHeapFlagBits.MemoryHeapFlagBits
module Vulkan.Core10.Enums.LogicOp
-- | VkLogicOp - Framebuffer logical operations
--
-- Description
--
-- The logical operations supported by Vulkan are summarized in the
-- following table in which
--
--
-- - ¬ is bitwise invert,
-- - ∧ is bitwise and,
-- - ∨ is bitwise or,
-- - ⊕ is bitwise exclusive or,
-- - s is the fragment’s Rs0, Gs0, Bs0 or As0 component value for the
-- fragment output corresponding to the color attachment being updated,
-- and
-- - d is the color attachment’s R, G, B or A component value:
--
--
-- TODO: table
--
-- Logical Operations
--
-- The result of the logical operation is then written to the color
-- attachment as controlled by the component write mask, described in
-- Blend Operations.
--
-- See Also
--
-- PipelineColorBlendStateCreateInfo
newtype LogicOp
LogicOp :: Int32 -> LogicOp
pattern LOGIC_OP_CLEAR :: LogicOp
pattern LOGIC_OP_AND :: LogicOp
pattern LOGIC_OP_AND_REVERSE :: LogicOp
pattern LOGIC_OP_COPY :: LogicOp
pattern LOGIC_OP_AND_INVERTED :: LogicOp
pattern LOGIC_OP_NO_OP :: LogicOp
pattern LOGIC_OP_XOR :: LogicOp
pattern LOGIC_OP_OR :: LogicOp
pattern LOGIC_OP_NOR :: LogicOp
pattern LOGIC_OP_EQUIVALENT :: LogicOp
pattern LOGIC_OP_INVERT :: LogicOp
pattern LOGIC_OP_OR_REVERSE :: LogicOp
pattern LOGIC_OP_COPY_INVERTED :: LogicOp
pattern LOGIC_OP_OR_INVERTED :: LogicOp
pattern LOGIC_OP_NAND :: LogicOp
pattern LOGIC_OP_SET :: LogicOp
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.LogicOp.LogicOp
instance Foreign.Storable.Storable Vulkan.Core10.Enums.LogicOp.LogicOp
instance GHC.Classes.Ord Vulkan.Core10.Enums.LogicOp.LogicOp
instance GHC.Classes.Eq Vulkan.Core10.Enums.LogicOp.LogicOp
instance GHC.Show.Show Vulkan.Core10.Enums.LogicOp.LogicOp
instance GHC.Read.Read Vulkan.Core10.Enums.LogicOp.LogicOp
module Vulkan.Core10.Enums.InternalAllocationType
-- | VkInternalAllocationType - Allocation type
--
-- See Also
--
-- PFN_vkInternalAllocationNotification,
-- PFN_vkInternalFreeNotification
newtype InternalAllocationType
InternalAllocationType :: Int32 -> InternalAllocationType
-- | INTERNAL_ALLOCATION_TYPE_EXECUTABLE specifies that the
-- allocation is intended for execution by the host.
pattern INTERNAL_ALLOCATION_TYPE_EXECUTABLE :: InternalAllocationType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.InternalAllocationType.InternalAllocationType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.InternalAllocationType.InternalAllocationType
instance GHC.Classes.Ord Vulkan.Core10.Enums.InternalAllocationType.InternalAllocationType
instance GHC.Classes.Eq Vulkan.Core10.Enums.InternalAllocationType.InternalAllocationType
instance GHC.Show.Show Vulkan.Core10.Enums.InternalAllocationType.InternalAllocationType
instance GHC.Read.Read Vulkan.Core10.Enums.InternalAllocationType.InternalAllocationType
module Vulkan.Core10.FuncPointers
-- | PFN_vkInternalAllocationNotification - Application-defined memory
-- allocation notification function
--
-- Description
--
-- This is a purely informational callback.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkInternalAllocationNotification = FunPtr FN_vkInternalAllocationNotification
type FN_vkInternalAllocationNotification = ("pUserData" ::: Ptr ()) -> CSize -> InternalAllocationType -> SystemAllocationScope -> IO ()
-- | PFN_vkInternalFreeNotification - Application-defined memory free
-- notification function
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkInternalFreeNotification = FunPtr FN_vkInternalFreeNotification
type FN_vkInternalFreeNotification = ("pUserData" ::: Ptr ()) -> CSize -> InternalAllocationType -> SystemAllocationScope -> IO ()
-- | PFN_vkReallocationFunction - Application-defined memory reallocation
-- function
--
-- Description
--
-- pfnReallocation must return an allocation with enough
-- space for size bytes, and the contents of the original
-- allocation from bytes zero to min(original size, new size) - 1
-- must be preserved in the returned allocation. If size
-- is larger than the old size, the contents of the additional space are
-- undefined. If satisfying these requirements involves creating a new
-- allocation, then the old allocation should be freed.
--
-- If pOriginal is NULL, then pfnReallocation
-- must behave equivalently to a call to
-- PFN_vkAllocationFunction with the same parameter values
-- (without pOriginal).
--
-- If size is zero, then pfnReallocation must
-- behave equivalently to a call to PFN_vkFreeFunction with the
-- same pUserData parameter value, and pMemory equal to
-- pOriginal.
--
-- If pOriginal is non-NULL, the implementation
-- must ensure that alignment is equal to the
-- alignment used to originally allocate pOriginal.
--
-- If this function fails and pOriginal is non-NULL the
-- application must not free the old allocation.
--
-- pfnReallocation must follow the same rules for
-- return values as.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkReallocationFunction = FunPtr FN_vkReallocationFunction
type FN_vkReallocationFunction = ("pUserData" ::: Ptr ()) -> ("pOriginal" ::: Ptr ()) -> CSize -> ("alignment" ::: CSize) -> SystemAllocationScope -> IO (Ptr ())
-- | PFN_vkAllocationFunction - Application-defined memory allocation
-- function
--
-- Description
--
-- If pfnAllocation is unable to allocate the requested memory,
-- it must return NULL. If the allocation was successful,
-- it must return a valid pointer to memory allocation containing
-- at least size bytes, and with the pointer value being a
-- multiple of alignment.
--
-- Note
--
-- Correct Vulkan operation cannot be assumed if the application
-- does not follow these rules.
--
-- For example, pfnAllocation (or pfnReallocation)
-- could cause termination of running Vulkan instance(s) on a failed
-- allocation for debugging purposes, either directly or indirectly. In
-- these circumstances, it cannot be assumed that any part of any
-- affected Instance objects are going to operate correctly (even
-- destroyInstance), and the application must ensure it
-- cleans up properly via other means (e.g. process termination).
--
-- If pfnAllocation returns NULL, and if the
-- implementation is unable to continue correct processing of the current
-- command without the requested allocation, it must treat this as
-- a runtime error, and generate ERROR_OUT_OF_HOST_MEMORY at the
-- appropriate time for the command in which the condition was detected,
-- as described in Return Codes.
--
-- If the implementation is able to continue correct processing of the
-- current command without the requested allocation, then it may
-- do so, and must not generate ERROR_OUT_OF_HOST_MEMORY as
-- a result of this failed allocation.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkAllocationFunction = FunPtr FN_vkAllocationFunction
type FN_vkAllocationFunction = ("pUserData" ::: Ptr ()) -> CSize -> ("alignment" ::: CSize) -> SystemAllocationScope -> IO (Ptr ())
-- | PFN_vkFreeFunction - Application-defined memory free function
--
-- Description
--
-- pMemory may be NULL, which the callback
-- must handle safely. If pMemory is non-NULL,
-- it must be a pointer previously allocated by
-- pfnAllocation or pfnReallocation. The application
-- should free this memory.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkFreeFunction = FunPtr FN_vkFreeFunction
type FN_vkFreeFunction = ("pUserData" ::: Ptr ()) -> ("pMemory" ::: Ptr ()) -> IO ()
-- | PFN_vkVoidFunction - Dummy function pointer type returned by queries
--
-- See Also
--
-- getDeviceProcAddr, getInstanceProcAddr
type PFN_vkVoidFunction = FunPtr FN_vkVoidFunction
type FN_vkVoidFunction = () -> IO ()
module Vulkan.Core10.Enums.InstanceCreateFlags
-- | VkInstanceCreateFlags - Reserved for future use
--
-- Description
--
-- InstanceCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- InstanceCreateInfo
newtype InstanceCreateFlags
InstanceCreateFlags :: Flags -> InstanceCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.InstanceCreateFlags.InstanceCreateFlags
module Vulkan.Core10.Enums.IndexType
-- | VkIndexType - Type of index buffer indices
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- BindIndexBufferIndirectCommandNV, GeometryTrianglesNV,
-- IndirectCommandsLayoutTokenNV, cmdBindIndexBuffer
newtype IndexType
IndexType :: Int32 -> IndexType
-- | INDEX_TYPE_UINT16 specifies that indices are 16-bit unsigned
-- integer values.
pattern INDEX_TYPE_UINT16 :: IndexType
-- | INDEX_TYPE_UINT32 specifies that indices are 32-bit unsigned
-- integer values.
pattern INDEX_TYPE_UINT32 :: IndexType
-- | INDEX_TYPE_UINT8_EXT specifies that indices are 8-bit unsigned
-- integer values.
pattern INDEX_TYPE_UINT8_EXT :: IndexType
-- | INDEX_TYPE_NONE_KHR specifies that no indices are provided.
pattern INDEX_TYPE_NONE_KHR :: IndexType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.IndexType.IndexType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.IndexType.IndexType
instance GHC.Classes.Ord Vulkan.Core10.Enums.IndexType.IndexType
instance GHC.Classes.Eq Vulkan.Core10.Enums.IndexType.IndexType
instance GHC.Show.Show Vulkan.Core10.Enums.IndexType.IndexType
instance GHC.Read.Read Vulkan.Core10.Enums.IndexType.IndexType
module Vulkan.Core10.Enums.ImageViewType
-- | VkImageViewType - Image view types
--
-- Description
--
-- The exact image view type is partially implicit, based on the image’s
-- type and sample count, as well as the view creation parameters as
-- described in the image view compatibility table for
-- createImageView. This table also shows which SPIR-V
-- OpTypeImage Dim and Arrayed parameters
-- correspond to each image view type.
--
-- See Also
--
-- ImageViewCreateInfo,
-- PhysicalDeviceImageViewImageFormatInfoEXT
newtype ImageViewType
ImageViewType :: Int32 -> ImageViewType
pattern IMAGE_VIEW_TYPE_1D :: ImageViewType
pattern IMAGE_VIEW_TYPE_2D :: ImageViewType
pattern IMAGE_VIEW_TYPE_3D :: ImageViewType
pattern IMAGE_VIEW_TYPE_CUBE :: ImageViewType
pattern IMAGE_VIEW_TYPE_1D_ARRAY :: ImageViewType
pattern IMAGE_VIEW_TYPE_2D_ARRAY :: ImageViewType
pattern IMAGE_VIEW_TYPE_CUBE_ARRAY :: ImageViewType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageViewType.ImageViewType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageViewType.ImageViewType
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageViewType.ImageViewType
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageViewType.ImageViewType
instance GHC.Show.Show Vulkan.Core10.Enums.ImageViewType.ImageViewType
instance GHC.Read.Read Vulkan.Core10.Enums.ImageViewType.ImageViewType
module Vulkan.Core10.Enums.ImageViewCreateFlagBits
-- | VkImageViewCreateFlagBits - Bitmask specifying additional parameters
-- of an image view
--
-- See Also
--
-- ImageViewCreateFlags
newtype ImageViewCreateFlagBits
ImageViewCreateFlagBits :: Flags -> ImageViewCreateFlagBits
-- | IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT
-- prohibits the implementation from accessing the fragment density map
-- by the host during cmdBeginRenderPass as the contents are
-- expected to change after recording
pattern IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT :: ImageViewCreateFlagBits
type ImageViewCreateFlags = ImageViewCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ImageViewCreateFlagBits.ImageViewCreateFlagBits
module Vulkan.Core10.Enums.ImageUsageFlagBits
-- | VkImageUsageFlagBits - Bitmask specifying intended usage of an image
--
-- See Also
--
-- ImageUsageFlags
newtype ImageUsageFlagBits
ImageUsageFlagBits :: Flags -> ImageUsageFlagBits
-- | IMAGE_USAGE_TRANSFER_SRC_BIT specifies that the image
-- can be used as the source of a transfer command.
pattern IMAGE_USAGE_TRANSFER_SRC_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_TRANSFER_DST_BIT specifies that the image
-- can be used as the destination of a transfer command.
pattern IMAGE_USAGE_TRANSFER_DST_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_SAMPLED_BIT specifies that the image can be
-- used to create a ImageView suitable for occupying a
-- DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE or
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and be sampled by a
-- shader.
pattern IMAGE_USAGE_SAMPLED_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_STORAGE_BIT specifies that the image can be
-- used to create a ImageView suitable for occupying a
-- DescriptorSet slot of type
-- DESCRIPTOR_TYPE_STORAGE_IMAGE.
pattern IMAGE_USAGE_STORAGE_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_COLOR_ATTACHMENT_BIT specifies that the image
-- can be used to create a ImageView suitable for use as a
-- color or resolve attachment in a Framebuffer.
pattern IMAGE_USAGE_COLOR_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that the
-- image can be used to create a ImageView suitable for use
-- as a depth/stencil or depth/stencil resolve attachment in a
-- Framebuffer.
pattern IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT specifies that the memory
-- bound to this image will have been allocated with the
-- MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#memory
-- for more detail). This bit can be set for any image that
-- can be used to create a ImageView suitable for use as a
-- color, resolve, depth/stencil, or input attachment.
pattern IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_INPUT_ATTACHMENT_BIT specifies that the image
-- can be used to create a ImageView suitable for occupying
-- DescriptorSet slot of type
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT; be read from a shader as an
-- input attachment; and be used as an input attachment in a framebuffer.
pattern IMAGE_USAGE_INPUT_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that the
-- image can be used to create a ImageView suitable for use
-- as a fragment density map image.
pattern IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT :: ImageUsageFlagBits
-- | IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV specifies that the image
-- can be used to create a ImageView suitable for use as a
-- shading rate image.
pattern IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV :: ImageUsageFlagBits
type ImageUsageFlags = ImageUsageFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ImageUsageFlagBits.ImageUsageFlagBits
module Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage
-- | VkImageStencilUsageCreateInfo - Specify separate usage flags for the
-- stencil aspect of a depth-stencil image
--
-- Description
--
-- If the pNext chain of ImageCreateInfo includes a
-- ImageStencilUsageCreateInfo structure, then that structure
-- includes the usage flags specific to the stencil aspect of the image
-- for an image with a depth-stencil format.
--
-- This structure specifies image usages which only apply to the stencil
-- aspect of a depth/stencil format image. When this structure is
-- included in the pNext chain of ImageCreateInfo, the
-- stencil aspect of the image must only be used as specified by
-- stencilUsage. When this structure is not included in the
-- pNext chain of ImageCreateInfo, the stencil aspect of
-- an image must only be used as specified
-- ImageCreateInfo::usage. Use of other aspects of an
-- image are unaffected by this structure.
--
-- This structure can also be included in the pNext chain
-- of PhysicalDeviceImageFormatInfo2 to query additional
-- capabilities specific to image creation parameter combinations
-- including a separate set of usage flags for the stencil aspect of the
-- image using getPhysicalDeviceImageFormatProperties2. When this
-- structure is not included in the pNext chain of
-- PhysicalDeviceImageFormatInfo2 then the implicit value of
-- stencilUsage matches that of
-- PhysicalDeviceImageFormatInfo2::usage.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - stencilUsage must be a valid combination of
-- ImageUsageFlagBits values
-- - stencilUsage must not be 0
--
--
-- See Also
--
-- ImageUsageFlags, StructureType
data ImageStencilUsageCreateInfo
ImageStencilUsageCreateInfo :: ImageUsageFlags -> ImageStencilUsageCreateInfo
-- | stencilUsage is a bitmask of ImageUsageFlagBits
-- describing the intended usage of the stencil aspect of the image.
[$sel:stencilUsage:ImageStencilUsageCreateInfo] :: ImageStencilUsageCreateInfo -> ImageUsageFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_separate_stencil_usage.ImageStencilUsageCreateInfo
module Vulkan.Extensions.VK_EXT_separate_stencil_usage
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT :: StructureType
type ImageStencilUsageCreateInfoEXT = ImageStencilUsageCreateInfo
type EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION = 1
pattern EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION :: forall a. Integral a => a
type EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME = "VK_EXT_separate_stencil_usage"
pattern EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.ImageType
-- | VkImageType - Specifies the type of an image object
--
-- See Also
--
-- ImageCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype ImageType
ImageType :: Int32 -> ImageType
-- | IMAGE_TYPE_1D specifies a one-dimensional image.
pattern IMAGE_TYPE_1D :: ImageType
-- | IMAGE_TYPE_2D specifies a two-dimensional image.
pattern IMAGE_TYPE_2D :: ImageType
-- | IMAGE_TYPE_3D specifies a three-dimensional image.
pattern IMAGE_TYPE_3D :: ImageType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageType.ImageType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageType.ImageType
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageType.ImageType
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageType.ImageType
instance GHC.Show.Show Vulkan.Core10.Enums.ImageType.ImageType
instance GHC.Read.Read Vulkan.Core10.Enums.ImageType.ImageType
module Vulkan.Core10.Enums.ImageTiling
-- | VkImageTiling - Specifies the tiling arrangement of data in an image
--
-- See Also
--
-- ImageCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype ImageTiling
ImageTiling :: Int32 -> ImageTiling
-- | IMAGE_TILING_OPTIMAL specifies optimal tiling (texels are laid
-- out in an implementation-dependent arrangement, for more optimal
-- memory access).
pattern IMAGE_TILING_OPTIMAL :: ImageTiling
-- | IMAGE_TILING_LINEAR specifies linear tiling (texels are laid
-- out in memory in row-major order, possibly with some padding on each
-- row).
pattern IMAGE_TILING_LINEAR :: ImageTiling
-- | IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT indicates that the image’s
-- tiling is defined by a Linux DRM format modifier. The modifier
-- is specified at image creation with
-- ImageDrmFormatModifierListCreateInfoEXT or
-- ImageDrmFormatModifierExplicitCreateInfoEXT, and can be
-- queried with getImageDrmFormatModifierPropertiesEXT.
pattern IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT :: ImageTiling
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageTiling.ImageTiling
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageTiling.ImageTiling
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageTiling.ImageTiling
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageTiling.ImageTiling
instance GHC.Show.Show Vulkan.Core10.Enums.ImageTiling.ImageTiling
instance GHC.Read.Read Vulkan.Core10.Enums.ImageTiling.ImageTiling
module Vulkan.Core10.Enums.ImageLayout
-- | VkImageLayout - Layout of image and image subresources
--
-- Description
--
-- The type(s) of device access supported by each layout are:
--
-- The layout of each image subresource is not a state of the image
-- subresource itself, but is rather a property of how the data in memory
-- is organized, and thus for each mechanism of accessing an image in the
-- API the application must specify a parameter or structure
-- member that indicates which image layout the image subresource(s) are
-- considered to be in when the image will be accessed. For transfer
-- commands, this is a parameter to the command (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#clears
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies).
-- For use as a framebuffer attachment, this is a member in the
-- substructures of the RenderPassCreateInfo (see Render
-- Pass). For use in a descriptor set, this is a member in the
-- DescriptorImageInfo structure (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates).
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2,
-- AttachmentDescriptionStencilLayout, AttachmentReference,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- DescriptorImageInfo, ImageCreateInfo,
-- ImageMemoryBarrier, cmdBindShadingRateImageNV,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage
newtype ImageLayout
ImageLayout :: Int32 -> ImageLayout
-- | IMAGE_LAYOUT_UNDEFINED does not support device access. This
-- layout must only be used as the initialLayout member
-- of ImageCreateInfo or AttachmentDescription, or as the
-- oldLayout in an image transition. When transitioning out of
-- this layout, the contents of the memory are not guaranteed to be
-- preserved.
pattern IMAGE_LAYOUT_UNDEFINED :: ImageLayout
-- | IMAGE_LAYOUT_GENERAL supports all types of device access.
pattern IMAGE_LAYOUT_GENERAL :: ImageLayout
-- | IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL must only be used
-- as a color or resolve attachment in a Framebuffer. This layout
-- is valid only for image subresources of images created with the
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL specifies a
-- layout for both the depth and stencil aspects of a depth/stencil
-- format image allowing read and write access as a depth/stencil
-- attachment. It is equivalent to
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL specifies a layout
-- for both the depth and stencil aspects of a depth/stencil format image
-- allowing read only access as a depth/stencil attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL must only be used
-- as a read-only image in a shader (which can be read as a
-- sampled image, combined image/sampler and/or input attachment). This
-- layout is valid only for image subresources of images created with the
-- IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL must only be used as a
-- source image of a transfer command (see the definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_TRANSFER_SRC_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL must only be used as a
-- destination image of a transfer command. This layout is valid only for
-- image subresources of images created with the
-- IMAGE_USAGE_TRANSFER_DST_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_PREINITIALIZED does not support device access.
-- This layout must only be used as the initialLayout
-- member of ImageCreateInfo or AttachmentDescription, or
-- as the oldLayout in an image transition. When transitioning
-- out of this layout, the contents of the memory are preserved. This
-- layout is intended to be used as the initial layout for an image whose
-- contents are written by the host, and hence the data can be
-- written to memory immediately, without first executing a layout
-- transition. Currently, IMAGE_LAYOUT_PREINITIALIZED is only
-- useful with linear images because there is not a standard
-- layout defined for IMAGE_TILING_OPTIMAL images.
pattern IMAGE_LAYOUT_PREINITIALIZED :: ImageLayout
-- | IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT must only
-- be used as a fragment density map attachment in a RenderPass.
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT usage bit
-- enabled.
pattern IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT :: ImageLayout
-- | IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV must only be used
-- as a read-only shading-rate-image. This layout is valid only
-- for image subresources of images created with the
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV usage bit enabled.
pattern IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV :: ImageLayout
-- | IMAGE_LAYOUT_SHARED_PRESENT_KHR is valid only for shared
-- presentable images, and must be used for any usage the image
-- supports.
pattern IMAGE_LAYOUT_SHARED_PRESENT_KHR :: ImageLayout
-- | IMAGE_LAYOUT_PRESENT_SRC_KHR must only be used for
-- presenting a presentable image for display. A swapchain’s image
-- must be transitioned to this layout before calling
-- queuePresentKHR, and must be transitioned away from this
-- layout after calling acquireNextImageKHR.
pattern IMAGE_LAYOUT_PRESENT_SRC_KHR :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read-only
-- access as a stencil attachment or in shaders.
pattern IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read and
-- write access as a stencil attachment.
pattern IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL specifies a layout for the
-- depth aspect of a depth/stencil format image allowing read-only access
-- as a depth attachment or in shaders.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL specifies a layout for
-- the depth aspect of a depth/stencil format image allowing read and
-- write access as a depth attachment.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the depth aspect as a depth attachment, and read only
-- access to the stencil aspect as a stencil attachment or in shaders. It
-- is equivalent to IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the stencil aspect as a stencil attachment, and read
-- only access to the depth aspect as a depth attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageLayout.ImageLayout
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageLayout.ImageLayout
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageLayout.ImageLayout
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageLayout.ImageLayout
instance GHC.Show.Show Vulkan.Core10.Enums.ImageLayout.ImageLayout
instance GHC.Read.Read Vulkan.Core10.Enums.ImageLayout.ImageLayout
module Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts
-- | VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures - Structure
-- describing whether the implementation can do depth and stencil image
-- barriers separately
--
-- Members
--
-- The members of the
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceSeparateDepthStencilLayoutsFeatures
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures can
-- also be included in the pNext chain of
-- DeviceCreateInfo to enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceSeparateDepthStencilLayoutsFeatures
PhysicalDeviceSeparateDepthStencilLayoutsFeatures :: Bool -> PhysicalDeviceSeparateDepthStencilLayoutsFeatures
-- | separateDepthStencilLayouts indicates whether the
-- implementation supports a ImageMemoryBarrier for a
-- depth/stencil image with only one of IMAGE_ASPECT_DEPTH_BIT or
-- IMAGE_ASPECT_STENCIL_BIT set, and whether
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL can be used.
[$sel:separateDepthStencilLayouts:PhysicalDeviceSeparateDepthStencilLayoutsFeatures] :: PhysicalDeviceSeparateDepthStencilLayoutsFeatures -> Bool
-- | VkAttachmentReferenceStencilLayout - Structure specifying an
-- attachment description
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageLayout, StructureType
data AttachmentReferenceStencilLayout
AttachmentReferenceStencilLayout :: ImageLayout -> AttachmentReferenceStencilLayout
-- | stencilLayout is a ImageLayout value specifying the
-- layout the stencil aspect of the attachment uses during the subpass.
--
-- stencilLayout must not be
-- IMAGE_LAYOUT_UNDEFINED, IMAGE_LAYOUT_PREINITIALIZED,
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_PRESENT_SRC_KHR
--
-- stencilLayout must be a valid ImageLayout value
[$sel:stencilLayout:AttachmentReferenceStencilLayout] :: AttachmentReferenceStencilLayout -> ImageLayout
-- | VkAttachmentDescriptionStencilLayout - Structure specifying an
-- attachment description
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageLayout, StructureType
data AttachmentDescriptionStencilLayout
AttachmentDescriptionStencilLayout :: ImageLayout -> ImageLayout -> AttachmentDescriptionStencilLayout
-- | stencilInitialLayout is the layout the stencil aspect of the
-- attachment image subresource will be in when a render pass instance
-- begins.
--
-- stencilInitialLayout must not be
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
--
-- stencilInitialLayout must be a valid
-- ImageLayout value
[$sel:stencilInitialLayout:AttachmentDescriptionStencilLayout] :: AttachmentDescriptionStencilLayout -> ImageLayout
-- | stencilFinalLayout is the layout the stencil aspect of the
-- attachment image subresource will be transitioned to when a render
-- pass instance ends.
--
-- stencilFinalLayout must not be
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
--
-- stencilFinalLayout must not be
-- IMAGE_LAYOUT_UNDEFINED or IMAGE_LAYOUT_PREINITIALIZED
--
-- stencilFinalLayout must be a valid ImageLayout
-- value
[$sel:stencilFinalLayout:AttachmentDescriptionStencilLayout] :: AttachmentDescriptionStencilLayout -> ImageLayout
-- | VkImageLayout - Layout of image and image subresources
--
-- Description
--
-- The type(s) of device access supported by each layout are:
--
-- The layout of each image subresource is not a state of the image
-- subresource itself, but is rather a property of how the data in memory
-- is organized, and thus for each mechanism of accessing an image in the
-- API the application must specify a parameter or structure
-- member that indicates which image layout the image subresource(s) are
-- considered to be in when the image will be accessed. For transfer
-- commands, this is a parameter to the command (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#clears
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies).
-- For use as a framebuffer attachment, this is a member in the
-- substructures of the RenderPassCreateInfo (see Render
-- Pass). For use in a descriptor set, this is a member in the
-- DescriptorImageInfo structure (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates).
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2,
-- AttachmentDescriptionStencilLayout, AttachmentReference,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- DescriptorImageInfo, ImageCreateInfo,
-- ImageMemoryBarrier, cmdBindShadingRateImageNV,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage
newtype ImageLayout
ImageLayout :: Int32 -> ImageLayout
-- | IMAGE_LAYOUT_UNDEFINED does not support device access. This
-- layout must only be used as the initialLayout member
-- of ImageCreateInfo or AttachmentDescription, or as the
-- oldLayout in an image transition. When transitioning out of
-- this layout, the contents of the memory are not guaranteed to be
-- preserved.
pattern IMAGE_LAYOUT_UNDEFINED :: ImageLayout
-- | IMAGE_LAYOUT_GENERAL supports all types of device access.
pattern IMAGE_LAYOUT_GENERAL :: ImageLayout
-- | IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL must only be used
-- as a color or resolve attachment in a Framebuffer. This layout
-- is valid only for image subresources of images created with the
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL specifies a
-- layout for both the depth and stencil aspects of a depth/stencil
-- format image allowing read and write access as a depth/stencil
-- attachment. It is equivalent to
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL specifies a layout
-- for both the depth and stencil aspects of a depth/stencil format image
-- allowing read only access as a depth/stencil attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL must only be used
-- as a read-only image in a shader (which can be read as a
-- sampled image, combined image/sampler and/or input attachment). This
-- layout is valid only for image subresources of images created with the
-- IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL must only be used as a
-- source image of a transfer command (see the definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_TRANSFER_SRC_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL must only be used as a
-- destination image of a transfer command. This layout is valid only for
-- image subresources of images created with the
-- IMAGE_USAGE_TRANSFER_DST_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_PREINITIALIZED does not support device access.
-- This layout must only be used as the initialLayout
-- member of ImageCreateInfo or AttachmentDescription, or
-- as the oldLayout in an image transition. When transitioning
-- out of this layout, the contents of the memory are preserved. This
-- layout is intended to be used as the initial layout for an image whose
-- contents are written by the host, and hence the data can be
-- written to memory immediately, without first executing a layout
-- transition. Currently, IMAGE_LAYOUT_PREINITIALIZED is only
-- useful with linear images because there is not a standard
-- layout defined for IMAGE_TILING_OPTIMAL images.
pattern IMAGE_LAYOUT_PREINITIALIZED :: ImageLayout
-- | IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT must only
-- be used as a fragment density map attachment in a RenderPass.
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT usage bit
-- enabled.
pattern IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT :: ImageLayout
-- | IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV must only be used
-- as a read-only shading-rate-image. This layout is valid only
-- for image subresources of images created with the
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV usage bit enabled.
pattern IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV :: ImageLayout
-- | IMAGE_LAYOUT_SHARED_PRESENT_KHR is valid only for shared
-- presentable images, and must be used for any usage the image
-- supports.
pattern IMAGE_LAYOUT_SHARED_PRESENT_KHR :: ImageLayout
-- | IMAGE_LAYOUT_PRESENT_SRC_KHR must only be used for
-- presenting a presentable image for display. A swapchain’s image
-- must be transitioned to this layout before calling
-- queuePresentKHR, and must be transitioned away from this
-- layout after calling acquireNextImageKHR.
pattern IMAGE_LAYOUT_PRESENT_SRC_KHR :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read-only
-- access as a stencil attachment or in shaders.
pattern IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read and
-- write access as a stencil attachment.
pattern IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL specifies a layout for the
-- depth aspect of a depth/stencil format image allowing read-only access
-- as a depth attachment or in shaders.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL specifies a layout for
-- the depth aspect of a depth/stencil format image allowing read and
-- write access as a depth attachment.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the depth aspect as a depth attachment, and read only
-- access to the stencil aspect as a stencil attachment or in shaders. It
-- is equivalent to IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the stencil aspect as a stencil attachment, and read
-- only access to the depth aspect as a depth attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentDescriptionStencilLayout
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.AttachmentReferenceStencilLayout
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_separate_depth_stencil_layouts.PhysicalDeviceSeparateDepthStencilLayoutsFeatures
module Vulkan.Extensions.VK_KHR_separate_depth_stencil_layouts
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR :: StructureType
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR :: ImageLayout
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR :: ImageLayout
pattern IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR :: ImageLayout
pattern IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR :: ImageLayout
type PhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = PhysicalDeviceSeparateDepthStencilLayoutsFeatures
type AttachmentReferenceStencilLayoutKHR = AttachmentReferenceStencilLayout
type AttachmentDescriptionStencilLayoutKHR = AttachmentDescriptionStencilLayout
type KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION = 1
pattern KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION :: forall a. Integral a => a
type KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME = "VK_KHR_separate_depth_stencil_layouts"
pattern KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.ImageCreateFlagBits
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ImageCreateFlagBits.ImageCreateFlagBits
module Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2
-- | VkBindBufferMemoryDeviceGroupInfo - Structure specifying device within
-- a group to bind to
--
-- Members
--
-- If the pNext list of BindBufferMemoryInfo includes a
-- BindBufferMemoryDeviceGroupInfo structure, then that structure
-- determines how memory is bound to buffers across multiple devices in a
-- device group.
--
-- Description
--
-- The BindBufferMemoryDeviceGroupInfo structure is defined as:
--
--
-- - sType is the type of this structure.
-- - pNext is NULL or a pointer to a structure
-- extending this structure.
-- - deviceIndexCount is the number of elements in
-- pDeviceIndices.
-- - pDeviceIndices is a pointer to an array of device
-- indices.
--
--
-- If deviceIndexCount is greater than zero, then on device
-- index i the buffer is attached to the instance of memory on
-- the physical device with device index pDeviceIndices[i].
--
-- If deviceIndexCount is zero and memory comes from a
-- memory heap with the MEMORY_HEAP_MULTI_INSTANCE_BIT bit set,
-- then it is as if pDeviceIndices contains consecutive indices
-- from zero to the number of physical devices in the logical device,
-- minus one. In other words, by default each physical device attaches to
-- its own instance of memory.
--
-- If deviceIndexCount is zero and memory comes from a
-- memory heap without the MEMORY_HEAP_MULTI_INSTANCE_BIT bit set,
-- then it is as if pDeviceIndices contains an array of zeros.
-- In other words, by default each physical device attaches to instance
-- zero.
--
-- Valid Usage
--
--
-- - deviceIndexCount must either be zero or equal to
-- the number of physical devices in the logical device
--
--
--
-- - All elements of pDeviceIndices must be valid
-- device indices
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If deviceIndexCount is not 0,
-- pDeviceIndices must be a valid pointer to an array of
-- deviceIndexCount uint32_t values
--
--
-- See Also
--
-- StructureType
data BindBufferMemoryDeviceGroupInfo
BindBufferMemoryDeviceGroupInfo :: Vector Word32 -> BindBufferMemoryDeviceGroupInfo
[$sel:deviceIndices:BindBufferMemoryDeviceGroupInfo] :: BindBufferMemoryDeviceGroupInfo -> Vector Word32
-- | VkBindImageMemoryDeviceGroupInfo - Structure specifying device within
-- a group to bind to
--
-- Members
--
-- If the pNext list of BindImageMemoryInfo includes a
-- BindImageMemoryDeviceGroupInfo structure, then that structure
-- determines how memory is bound to images across multiple devices in a
-- device group.
--
-- Description
--
-- The BindImageMemoryDeviceGroupInfo structure is defined as:
--
--
-- - sType is the type of this structure.
-- - pNext is NULL or a pointer to a structure
-- extending this structure.
-- - deviceIndexCount is the number of elements in
-- pDeviceIndices.
-- - pDeviceIndices is a pointer to an array of device
-- indices.
-- - splitInstanceBindRegionCount is the number of elements in
-- pSplitInstanceBindRegions.
-- - pSplitInstanceBindRegions is a pointer to an array of
-- Rect2D structures describing which regions of the image are
-- attached to each instance of memory.
--
--
-- If deviceIndexCount is greater than zero, then on device
-- index i image is attached to the instance of the memory on
-- the physical device with device index pDeviceIndices[i].
--
-- Let N be the number of physical devices in the logical device. If
-- splitInstanceBindRegionCount is greater than zero, then
-- pSplitInstanceBindRegions is an array of N2 rectangles, where
-- the image region specified by the rectangle at element i*N+j in
-- resource instance i is bound to the memory instance j. The blocks of
-- the memory that are bound to each sparse image block region use an
-- offset in memory, relative to memoryOffset, computed as if
-- the whole image were being bound to a contiguous range of memory. In
-- other words, horizontally adjacent image blocks use consecutive blocks
-- of memory, vertically adjacent image blocks are separated by the
-- number of bytes per block multiplied by the width in blocks of
-- image, and the block at (0,0) corresponds to memory starting
-- at memoryOffset.
--
-- If splitInstanceBindRegionCount and deviceIndexCount
-- are zero and the memory comes from a memory heap with the
-- MEMORY_HEAP_MULTI_INSTANCE_BIT bit set, then it is as if
-- pDeviceIndices contains consecutive indices from zero to the
-- number of physical devices in the logical device, minus one. In other
-- words, by default each physical device attaches to its own instance of
-- the memory.
--
-- If splitInstanceBindRegionCount and deviceIndexCount
-- are zero and the memory comes from a memory heap without the
-- MEMORY_HEAP_MULTI_INSTANCE_BIT bit set, then it is as if
-- pDeviceIndices contains an array of zeros. In other words, by
-- default each physical device attaches to instance zero.
--
-- Valid Usage
--
--
-- - At least one of deviceIndexCount and
-- splitInstanceBindRegionCount must be zero
--
--
--
-- - deviceIndexCount must either be zero or equal to
-- the number of physical devices in the logical device
-- - All elements of pDeviceIndices must be valid
-- device indices
-- - splitInstanceBindRegionCount must either be zero
-- or equal to the number of physical devices in the logical device
-- squared
-- - Elements of pSplitInstanceBindRegions that correspond to
-- the same instance of an image must not overlap
-- - The offset.x member of any element of
-- pSplitInstanceBindRegions must be a multiple of the
-- sparse image block width
-- (SparseImageFormatProperties::imageGranularity.width)
-- of all non-metadata aspects of the image
-- - The offset.y member of any element of
-- pSplitInstanceBindRegions must be a multiple of the
-- sparse image block height
-- (SparseImageFormatProperties::imageGranularity.height)
-- of all non-metadata aspects of the image
-- - The extent.width member of any element of
-- pSplitInstanceBindRegions must either be a multiple of
-- the sparse image block width of all non-metadata aspects of the image,
-- or else extent.width + offset.x must equal
-- the width of the image subresource
-- - The extent.height member of any element of
-- pSplitInstanceBindRegions must either be a multiple of
-- the sparse image block height of all non-metadata aspects of the
-- image, or else extent.height + offset.y must
-- equal the width of the image subresource
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If deviceIndexCount is not 0,
-- pDeviceIndices must be a valid pointer to an array of
-- deviceIndexCount uint32_t values
-- - If splitInstanceBindRegionCount is not 0,
-- pSplitInstanceBindRegions must be a valid pointer to
-- an array of splitInstanceBindRegionCount Rect2D
-- structures
--
--
-- See Also
--
-- Rect2D, StructureType
data BindImageMemoryDeviceGroupInfo
BindImageMemoryDeviceGroupInfo :: Vector Word32 -> Vector Rect2D -> BindImageMemoryDeviceGroupInfo
[$sel:deviceIndices:BindImageMemoryDeviceGroupInfo] :: BindImageMemoryDeviceGroupInfo -> Vector Word32
[$sel:splitInstanceBindRegions:BindImageMemoryDeviceGroupInfo] :: BindImageMemoryDeviceGroupInfo -> Vector Rect2D
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindBufferMemoryDeviceGroupInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindBufferMemoryDeviceGroupInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindImageMemoryDeviceGroupInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindImageMemoryDeviceGroupInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindImageMemoryDeviceGroupInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindImageMemoryDeviceGroupInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindImageMemoryDeviceGroupInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindBufferMemoryDeviceGroupInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindBufferMemoryDeviceGroupInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_groupAndVK_KHR_bind_memory2.BindBufferMemoryDeviceGroupInfo
module Vulkan.Core10.Enums.ImageAspectFlagBits
-- | VkImageAspectFlagBits - Bitmask specifying which aspects of an image
-- are included in a view
--
-- See Also
--
-- BindImagePlaneMemoryInfo, ImageAspectFlags,
-- ImagePlaneMemoryRequirementsInfo
newtype ImageAspectFlagBits
ImageAspectFlagBits :: Flags -> ImageAspectFlagBits
-- | IMAGE_ASPECT_COLOR_BIT specifies the color aspect.
pattern IMAGE_ASPECT_COLOR_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_DEPTH_BIT specifies the depth aspect.
pattern IMAGE_ASPECT_DEPTH_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_STENCIL_BIT specifies the stencil aspect.
pattern IMAGE_ASPECT_STENCIL_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_METADATA_BIT specifies the metadata aspect, used
-- for sparse sparse resource operations.
pattern IMAGE_ASPECT_METADATA_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT specifies memory
-- plane 3.
pattern IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT specifies memory
-- plane 2.
pattern IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT specifies memory
-- plane 1.
pattern IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT specifies memory
-- plane 0.
pattern IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_2_BIT specifies plane 2 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_2_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_1_BIT specifies plane 1 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_1_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_0_BIT specifies plane 0 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_0_BIT :: ImageAspectFlagBits
type ImageAspectFlags = ImageAspectFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ImageAspectFlagBits.ImageAspectFlagBits
module Vulkan.Core11.Promoted_From_VK_KHR_maintenance2
-- | VkInputAttachmentAspectReference - Structure specifying a
-- subpass/input attachment pair and an aspect mask that can be
-- read.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageAspectFlags,
-- RenderPassInputAttachmentAspectCreateInfo
data InputAttachmentAspectReference
InputAttachmentAspectReference :: Word32 -> Word32 -> ImageAspectFlags -> InputAttachmentAspectReference
-- | subpass is an index into the pSubpasses array of the
-- parent RenderPassCreateInfo structure.
[$sel:subpass:InputAttachmentAspectReference] :: InputAttachmentAspectReference -> Word32
-- | inputAttachmentIndex is an index into the
-- pInputAttachments of the specified subpass.
[$sel:inputAttachmentIndex:InputAttachmentAspectReference] :: InputAttachmentAspectReference -> Word32
-- | aspectMask is a mask of which aspect(s) can be
-- accessed within the specified subpass.
--
-- aspectMask must not include
-- IMAGE_ASPECT_METADATA_BIT
--
-- aspectMask must not include
-- VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT for any index
-- i
--
-- aspectMask must be a valid combination of
-- ImageAspectFlagBits values
--
-- aspectMask must not be 0
[$sel:aspectMask:InputAttachmentAspectReference] :: InputAttachmentAspectReference -> ImageAspectFlags
-- | VkRenderPassInputAttachmentAspectCreateInfo - Structure specifying,
-- for a given subpass/input attachment pair, which aspect can be
-- read.
--
-- Description
--
-- An application can access any aspect of an input attachment
-- that does not have a specified aspect mask in the
-- pAspectReferences array. Otherwise, an application
-- must not access aspect(s) of an input attachment other than
-- those in its specified aspect mask.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- InputAttachmentAspectReference, StructureType
data RenderPassInputAttachmentAspectCreateInfo
RenderPassInputAttachmentAspectCreateInfo :: Vector InputAttachmentAspectReference -> RenderPassInputAttachmentAspectCreateInfo
-- | pAspectReferences is a pointer to an array of
-- aspectReferenceCount InputAttachmentAspectReference
-- structures containing a mask describing which aspect(s) can be
-- accessed for a given input attachment within a given subpass.
--
-- pAspectReferences must be a valid pointer to an array
-- of aspectReferenceCount valid
-- InputAttachmentAspectReference structures
[$sel:aspectReferences:RenderPassInputAttachmentAspectCreateInfo] :: RenderPassInputAttachmentAspectCreateInfo -> Vector InputAttachmentAspectReference
-- | VkPhysicalDevicePointClippingProperties - Structure describing the
-- point clipping behavior supported by an implementation
--
-- Members
--
-- The members of the PhysicalDevicePointClippingProperties
-- structure describe the following implementation-dependent limit:
--
-- Description
--
-- If the PhysicalDevicePointClippingProperties structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PointClippingBehavior, StructureType
data PhysicalDevicePointClippingProperties
PhysicalDevicePointClippingProperties :: PointClippingBehavior -> PhysicalDevicePointClippingProperties
-- | pointClippingBehavior is a PointClippingBehavior value
-- specifying the point clipping behavior supported by the
-- implementation.
[$sel:pointClippingBehavior:PhysicalDevicePointClippingProperties] :: PhysicalDevicePointClippingProperties -> PointClippingBehavior
-- | VkImageViewUsageCreateInfo - Specify the intended usage of an image
-- view
--
-- Description
--
-- When this structure is chained to ImageViewCreateInfo the
-- usage field overrides the implicit usage parameter
-- inherited from image creation time and its value is used instead for
-- the purposes of determining the valid usage conditions of
-- ImageViewCreateInfo.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageUsageFlags, StructureType
data ImageViewUsageCreateInfo
ImageViewUsageCreateInfo :: ImageUsageFlags -> ImageViewUsageCreateInfo
-- | usage is a bitmask describing the allowed usages of the image
-- view. See ImageUsageFlagBits for a description of the supported
-- bits.
--
-- usage must be a valid combination of
-- ImageUsageFlagBits values
--
-- usage must not be 0
[$sel:usage:ImageViewUsageCreateInfo] :: ImageViewUsageCreateInfo -> ImageUsageFlags
-- | VkPipelineTessellationDomainOriginStateCreateInfo - Structure
-- specifying the orientation of the tessellation domain
--
-- Description
--
-- If the PipelineTessellationDomainOriginStateCreateInfo
-- structure is included in the pNext chain of
-- PipelineTessellationStateCreateInfo, it controls the origin of
-- the tessellation domain. If this structure is not present, it is as if
-- domainOrigin were
-- TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, TessellationDomainOrigin
data PipelineTessellationDomainOriginStateCreateInfo
PipelineTessellationDomainOriginStateCreateInfo :: TessellationDomainOrigin -> PipelineTessellationDomainOriginStateCreateInfo
-- | domainOrigin is a TessellationDomainOrigin value
-- controlling the origin of the tessellation domain space.
--
-- domainOrigin must be a valid
-- TessellationDomainOrigin value
[$sel:domainOrigin:PipelineTessellationDomainOriginStateCreateInfo] :: PipelineTessellationDomainOriginStateCreateInfo -> TessellationDomainOrigin
-- | VkImageLayout - Layout of image and image subresources
--
-- Description
--
-- The type(s) of device access supported by each layout are:
--
-- The layout of each image subresource is not a state of the image
-- subresource itself, but is rather a property of how the data in memory
-- is organized, and thus for each mechanism of accessing an image in the
-- API the application must specify a parameter or structure
-- member that indicates which image layout the image subresource(s) are
-- considered to be in when the image will be accessed. For transfer
-- commands, this is a parameter to the command (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#clears
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies).
-- For use as a framebuffer attachment, this is a member in the
-- substructures of the RenderPassCreateInfo (see Render
-- Pass). For use in a descriptor set, this is a member in the
-- DescriptorImageInfo structure (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates).
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2,
-- AttachmentDescriptionStencilLayout, AttachmentReference,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- DescriptorImageInfo, ImageCreateInfo,
-- ImageMemoryBarrier, cmdBindShadingRateImageNV,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage
newtype ImageLayout
ImageLayout :: Int32 -> ImageLayout
-- | IMAGE_LAYOUT_UNDEFINED does not support device access. This
-- layout must only be used as the initialLayout member
-- of ImageCreateInfo or AttachmentDescription, or as the
-- oldLayout in an image transition. When transitioning out of
-- this layout, the contents of the memory are not guaranteed to be
-- preserved.
pattern IMAGE_LAYOUT_UNDEFINED :: ImageLayout
-- | IMAGE_LAYOUT_GENERAL supports all types of device access.
pattern IMAGE_LAYOUT_GENERAL :: ImageLayout
-- | IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL must only be used
-- as a color or resolve attachment in a Framebuffer. This layout
-- is valid only for image subresources of images created with the
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL specifies a
-- layout for both the depth and stencil aspects of a depth/stencil
-- format image allowing read and write access as a depth/stencil
-- attachment. It is equivalent to
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL specifies a layout
-- for both the depth and stencil aspects of a depth/stencil format image
-- allowing read only access as a depth/stencil attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL must only be used
-- as a read-only image in a shader (which can be read as a
-- sampled image, combined image/sampler and/or input attachment). This
-- layout is valid only for image subresources of images created with the
-- IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL must only be used as a
-- source image of a transfer command (see the definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_TRANSFER_SRC_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL must only be used as a
-- destination image of a transfer command. This layout is valid only for
-- image subresources of images created with the
-- IMAGE_USAGE_TRANSFER_DST_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_PREINITIALIZED does not support device access.
-- This layout must only be used as the initialLayout
-- member of ImageCreateInfo or AttachmentDescription, or
-- as the oldLayout in an image transition. When transitioning
-- out of this layout, the contents of the memory are preserved. This
-- layout is intended to be used as the initial layout for an image whose
-- contents are written by the host, and hence the data can be
-- written to memory immediately, without first executing a layout
-- transition. Currently, IMAGE_LAYOUT_PREINITIALIZED is only
-- useful with linear images because there is not a standard
-- layout defined for IMAGE_TILING_OPTIMAL images.
pattern IMAGE_LAYOUT_PREINITIALIZED :: ImageLayout
-- | IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT must only
-- be used as a fragment density map attachment in a RenderPass.
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT usage bit
-- enabled.
pattern IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT :: ImageLayout
-- | IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV must only be used
-- as a read-only shading-rate-image. This layout is valid only
-- for image subresources of images created with the
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV usage bit enabled.
pattern IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV :: ImageLayout
-- | IMAGE_LAYOUT_SHARED_PRESENT_KHR is valid only for shared
-- presentable images, and must be used for any usage the image
-- supports.
pattern IMAGE_LAYOUT_SHARED_PRESENT_KHR :: ImageLayout
-- | IMAGE_LAYOUT_PRESENT_SRC_KHR must only be used for
-- presenting a presentable image for display. A swapchain’s image
-- must be transitioned to this layout before calling
-- queuePresentKHR, and must be transitioned away from this
-- layout after calling acquireNextImageKHR.
pattern IMAGE_LAYOUT_PRESENT_SRC_KHR :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read-only
-- access as a stencil attachment or in shaders.
pattern IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read and
-- write access as a stencil attachment.
pattern IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL specifies a layout for the
-- depth aspect of a depth/stencil format image allowing read-only access
-- as a depth attachment or in shaders.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL specifies a layout for
-- the depth aspect of a depth/stencil format image allowing read and
-- write access as a depth attachment.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the depth aspect as a depth attachment, and read only
-- access to the stencil aspect as a stencil attachment or in shaders. It
-- is equivalent to IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the stencil aspect as a stencil attachment, and read
-- only access to the depth aspect as a depth attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
-- | VkPointClippingBehavior - Enum specifying the point clipping behavior
--
-- See Also
--
-- PhysicalDevicePointClippingProperties,
-- PhysicalDeviceVulkan11Properties
newtype PointClippingBehavior
PointClippingBehavior :: Int32 -> PointClippingBehavior
-- | POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES specifies that the
-- primitive is discarded if the vertex lies outside any clip plane,
-- including the planes bounding the view volume.
pattern POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES :: PointClippingBehavior
-- | POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY specifies that
-- the primitive is discarded only if the vertex lies outside any user
-- clip plane.
pattern POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY :: PointClippingBehavior
-- | VkTessellationDomainOrigin - Enum describing tessellation domain
-- origin
--
-- Description
--
-- This enum affects how the VertexOrderCw and
-- VertexOrderCcw tessellation execution modes are interpreted,
-- since the winding is defined relative to the orientation of the
-- domain.
--
-- See Also
--
-- PipelineTessellationDomainOriginStateCreateInfo
newtype TessellationDomainOrigin
TessellationDomainOrigin :: Int32 -> TessellationDomainOrigin
-- | TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT specifies that the origin
-- of the domain space is in the upper left corner, as shown in figure
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#img-tessellation-topology-ul.
pattern TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT :: TessellationDomainOrigin
-- | TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT specifies that the origin
-- of the domain space is in the lower left corner, as shown in figure
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#img-tessellation-topology-ll.
pattern TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT :: TessellationDomainOrigin
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.RenderPassInputAttachmentAspectCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.RenderPassInputAttachmentAspectCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PipelineTessellationDomainOriginStateCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.ImageViewUsageCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.PhysicalDevicePointClippingProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.RenderPassInputAttachmentAspectCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.RenderPassInputAttachmentAspectCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.RenderPassInputAttachmentAspectCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_maintenance2.InputAttachmentAspectReference
module Vulkan.Extensions.VK_KHR_maintenance2
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR :: ImageCreateFlagBits
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR :: ImageCreateFlagBits
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR :: StructureType
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR :: ImageLayout
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR :: ImageLayout
pattern POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR :: PointClippingBehavior
pattern POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR :: PointClippingBehavior
pattern TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR :: TessellationDomainOrigin
pattern TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR :: TessellationDomainOrigin
type PointClippingBehaviorKHR = PointClippingBehavior
type TessellationDomainOriginKHR = TessellationDomainOrigin
type InputAttachmentAspectReferenceKHR = InputAttachmentAspectReference
type RenderPassInputAttachmentAspectCreateInfoKHR = RenderPassInputAttachmentAspectCreateInfo
type PhysicalDevicePointClippingPropertiesKHR = PhysicalDevicePointClippingProperties
type ImageViewUsageCreateInfoKHR = ImageViewUsageCreateInfo
type PipelineTessellationDomainOriginStateCreateInfoKHR = PipelineTessellationDomainOriginStateCreateInfo
type KHR_MAINTENANCE2_SPEC_VERSION = 1
pattern KHR_MAINTENANCE2_SPEC_VERSION :: forall a. Integral a => a
type KHR_MAINTENANCE2_EXTENSION_NAME = "VK_KHR_maintenance2"
pattern KHR_MAINTENANCE2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.FrontFace
-- | VkFrontFace - Interpret polygon front-facing orientation
--
-- Description
--
-- Any triangle which is not front-facing is back-facing, including
-- zero-area triangles.
--
-- See Also
--
-- PipelineRasterizationStateCreateInfo
newtype FrontFace
FrontFace :: Int32 -> FrontFace
-- | FRONT_FACE_COUNTER_CLOCKWISE specifies that a triangle with
-- positive area is considered front-facing.
pattern FRONT_FACE_COUNTER_CLOCKWISE :: FrontFace
-- | FRONT_FACE_CLOCKWISE specifies that a triangle with negative
-- area is considered front-facing.
pattern FRONT_FACE_CLOCKWISE :: FrontFace
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.FrontFace.FrontFace
instance Foreign.Storable.Storable Vulkan.Core10.Enums.FrontFace.FrontFace
instance GHC.Classes.Ord Vulkan.Core10.Enums.FrontFace.FrontFace
instance GHC.Classes.Eq Vulkan.Core10.Enums.FrontFace.FrontFace
instance GHC.Show.Show Vulkan.Core10.Enums.FrontFace.FrontFace
instance GHC.Read.Read Vulkan.Core10.Enums.FrontFace.FrontFace
module Vulkan.Core10.Enums.FramebufferCreateFlagBits
-- | VkFramebufferCreateFlagBits - Bitmask specifying framebuffer
-- properties
--
-- See Also
--
-- FramebufferCreateFlags
newtype FramebufferCreateFlagBits
FramebufferCreateFlagBits :: Flags -> FramebufferCreateFlagBits
-- | FRAMEBUFFER_CREATE_IMAGELESS_BIT specifies that image views are
-- not specified, and only attachment compatibility information will be
-- provided via a FramebufferAttachmentImageInfo structure.
pattern FRAMEBUFFER_CREATE_IMAGELESS_BIT :: FramebufferCreateFlagBits
type FramebufferCreateFlags = FramebufferCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.FramebufferCreateFlagBits.FramebufferCreateFlagBits
module Vulkan.Core10.Enums.FormatFeatureFlagBits
-- | VkFormatFeatureFlagBits - Bitmask specifying features supported by a
-- buffer
--
-- Description
--
-- The following bits may be set in linearTilingFeatures,
-- optimalTilingFeatures, and
-- DrmFormatModifierPropertiesEXT::drmFormatModifierTilingFeatures,
-- specifying that the features are supported by images or
-- image views or sampler Y′CBCR conversion objects created
-- with the queried
-- getPhysicalDeviceFormatProperties::format:
--
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image
-- view can be sampled from.
-- - FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image
-- view can be used as a storage images.
-- - FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an
-- image view can be used as storage image that supports atomic
-- operations.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
-- - FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that
-- an image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
-- - FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image
-- can be used as srcImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_BLIT_DST_BIT specifies that an image
-- can be used as dstImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies
-- that if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image
-- view can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.If the format being queried is a
-- depth/stencil format, this bit only specifies that the depth aspect
-- (not the stencil aspect) of an image of this format supports linear
-- filtering, and that linear filtering of the depth aspect is supported
-- whether depth compare is enabled in the sampler or not. If this bit is
-- not present, linear filtering with depth compare disabled is
-- unsupported and linear filtering with depth compare enabled is
-- supported, but may compute the filtered value in an
-- implementation-dependent manner which differs from the normal rules of
-- linear filtering. The resulting value must be in the range
-- [0,1] and should be proportional to, or a weighted average of,
-- the number of comparison passes or failures.
-- - FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
-- - FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT specifies
-- that Image can be used with a sampler that has either of
-- magFilter or minFilter set to
-- FILTER_CUBIC_EXT, or be the source image for a blit with
-- filter set to FILTER_CUBIC_EXT. This bit must
-- only be exposed for formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT. If the format being queried
-- is a depth/stencil format, this only specifies that the depth aspect
-- is cubic filterable.
-- - FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that
-- an application can define a sampler Y′CBCR conversion
-- using this format as a source, and that an image of this format
-- can be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
-- - FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by
-- default.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
-- - FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar
-- image can have the IMAGE_CREATE_DISJOINT_BIT set during
-- image creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane
-- formats.
-- - FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that
-- an image view can be used as a fragment density map
-- attachment.
--
--
-- The following bits may be set in bufferFeatures,
-- specifying that the features are supported by buffers or
-- buffer views created with the queried
-- getPhysicalDeviceProperties::format:
--
--
--
-- See Also
--
-- FormatFeatureFlags
newtype FormatFeatureFlagBits
FormatFeatureFlagBits :: Flags -> FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image view
-- can be sampled from.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image view
-- can be used as a storage images.
pattern FORMAT_FEATURE_STORAGE_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an image
-- view can be used as storage image that supports atomic
-- operations.
pattern FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT specifies that
-- atomic operations are supported on
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER with this format.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_VERTEX_BUFFER_BIT specifies that the format
-- can be used as a vertex attribute format
-- (VertexInputAttributeDescription::format).
pattern FORMAT_FEATURE_VERTEX_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that an
-- image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
pattern FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image can
-- be used as srcImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_SRC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_DST_BIT specifies that an image can
-- be used as dstImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies that
-- if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image view
-- can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.
--
-- If the format being queried is a depth/stencil format, this bit only
-- specifies that the depth aspect (not the stencil aspect) of an image
-- of this format supports linear filtering, and that linear filtering of
-- the depth aspect is supported whether depth compare is enabled in the
-- sampler or not. If this bit is not present, linear filtering with
-- depth compare disabled is unsupported and linear filtering with depth
-- compare enabled is supported, but may compute the filtered
-- value in an implementation-dependent manner which differs from the
-- normal rules of linear filtering. The resulting value must be
-- in the range [0,1] and should be proportional to, or a weighted
-- average of, the number of comparison passes or failures.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that an
-- image view can be used as a fragment density map
-- attachment.
pattern FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
pattern FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar image
-- can have the IMAGE_CREATE_DISJOINT_BIT set during image
-- creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane formats.
pattern FORMAT_FEATURE_DISJOINT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by default.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
pattern FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
pattern FORMAT_FEATURE_TRANSFER_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
pattern FORMAT_FEATURE_TRANSFER_SRC_BIT :: FormatFeatureFlagBits
type FormatFeatureFlags = FormatFeatureFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.FormatFeatureFlagBits.FormatFeatureFlagBits
module Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax
-- | VkPhysicalDeviceSamplerFilterMinmaxProperties - Structure describing
-- sampler filter minmax limits that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceSamplerFilterMinmaxProperties
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceSamplerFilterMinmaxProperties structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- If filterMinmaxSingleComponentFormats is TRUE, the
-- following formats must support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT feature with
-- IMAGE_TILING_OPTIMAL, if they support
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
--
-- If the format is a depth/stencil format, this bit only specifies that
-- the depth aspect (not the stencil aspect) of an image of this format
-- supports min/max filtering, and that min/max filtering of the depth
-- aspect is supported when depth compare is disabled in the sampler.
--
-- If filterMinmaxImageComponentMapping is FALSE the
-- component mapping of the image view used with min/max filtering
-- must have been created with the r component set to
-- COMPONENT_SWIZZLE_IDENTITY. Only the r component of
-- the sampled image value is defined and the other component values are
-- undefined. If filterMinmaxImageComponentMapping is
-- TRUE this restriction does not apply and image component
-- mapping works as normal.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceSamplerFilterMinmaxProperties
PhysicalDeviceSamplerFilterMinmaxProperties :: Bool -> Bool -> PhysicalDeviceSamplerFilterMinmaxProperties
-- | filterMinmaxSingleComponentFormats is a boolean value
-- indicating whether a minimum set of required formats support min/max
-- filtering.
[$sel:filterMinmaxSingleComponentFormats:PhysicalDeviceSamplerFilterMinmaxProperties] :: PhysicalDeviceSamplerFilterMinmaxProperties -> Bool
-- | filterMinmaxImageComponentMapping is a boolean value
-- indicating whether the implementation supports non-identity component
-- mapping of the image when doing min/max filtering.
[$sel:filterMinmaxImageComponentMapping:PhysicalDeviceSamplerFilterMinmaxProperties] :: PhysicalDeviceSamplerFilterMinmaxProperties -> Bool
-- | VkSamplerReductionModeCreateInfo - Structure specifying sampler
-- reduction mode
--
-- Description
--
-- If the pNext chain of SamplerCreateInfo includes a
-- SamplerReductionModeCreateInfo structure, then that structure
-- includes a mode that controls how texture filtering combines texel
-- values.
--
-- If this structure is not present, reductionMode is considered
-- to be SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- SamplerReductionMode, StructureType
data SamplerReductionModeCreateInfo
SamplerReductionModeCreateInfo :: SamplerReductionMode -> SamplerReductionModeCreateInfo
-- | reductionMode is a SamplerReductionMode value
-- controlling how texture filtering combines texel values.
--
-- reductionMode must be a valid
-- SamplerReductionMode value
[$sel:reductionMode:SamplerReductionModeCreateInfo] :: SamplerReductionModeCreateInfo -> SamplerReductionMode
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkFormatFeatureFlagBits - Bitmask specifying features supported by a
-- buffer
--
-- Description
--
-- The following bits may be set in linearTilingFeatures,
-- optimalTilingFeatures, and
-- DrmFormatModifierPropertiesEXT::drmFormatModifierTilingFeatures,
-- specifying that the features are supported by images or
-- image views or sampler Y′CBCR conversion objects created
-- with the queried
-- getPhysicalDeviceFormatProperties::format:
--
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image
-- view can be sampled from.
-- - FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image
-- view can be used as a storage images.
-- - FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an
-- image view can be used as storage image that supports atomic
-- operations.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
-- - FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that
-- an image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
-- - FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image
-- can be used as srcImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_BLIT_DST_BIT specifies that an image
-- can be used as dstImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies
-- that if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image
-- view can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.If the format being queried is a
-- depth/stencil format, this bit only specifies that the depth aspect
-- (not the stencil aspect) of an image of this format supports linear
-- filtering, and that linear filtering of the depth aspect is supported
-- whether depth compare is enabled in the sampler or not. If this bit is
-- not present, linear filtering with depth compare disabled is
-- unsupported and linear filtering with depth compare enabled is
-- supported, but may compute the filtered value in an
-- implementation-dependent manner which differs from the normal rules of
-- linear filtering. The resulting value must be in the range
-- [0,1] and should be proportional to, or a weighted average of,
-- the number of comparison passes or failures.
-- - FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
-- - FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT specifies
-- that Image can be used with a sampler that has either of
-- magFilter or minFilter set to
-- FILTER_CUBIC_EXT, or be the source image for a blit with
-- filter set to FILTER_CUBIC_EXT. This bit must
-- only be exposed for formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT. If the format being queried
-- is a depth/stencil format, this only specifies that the depth aspect
-- is cubic filterable.
-- - FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that
-- an application can define a sampler Y′CBCR conversion
-- using this format as a source, and that an image of this format
-- can be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
-- - FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by
-- default.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
-- - FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar
-- image can have the IMAGE_CREATE_DISJOINT_BIT set during
-- image creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane
-- formats.
-- - FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that
-- an image view can be used as a fragment density map
-- attachment.
--
--
-- The following bits may be set in bufferFeatures,
-- specifying that the features are supported by buffers or
-- buffer views created with the queried
-- getPhysicalDeviceProperties::format:
--
--
--
-- See Also
--
-- FormatFeatureFlags
newtype FormatFeatureFlagBits
FormatFeatureFlagBits :: Flags -> FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image view
-- can be sampled from.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image view
-- can be used as a storage images.
pattern FORMAT_FEATURE_STORAGE_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an image
-- view can be used as storage image that supports atomic
-- operations.
pattern FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT specifies that
-- atomic operations are supported on
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER with this format.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_VERTEX_BUFFER_BIT specifies that the format
-- can be used as a vertex attribute format
-- (VertexInputAttributeDescription::format).
pattern FORMAT_FEATURE_VERTEX_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that an
-- image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
pattern FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image can
-- be used as srcImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_SRC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_DST_BIT specifies that an image can
-- be used as dstImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies that
-- if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image view
-- can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.
--
-- If the format being queried is a depth/stencil format, this bit only
-- specifies that the depth aspect (not the stencil aspect) of an image
-- of this format supports linear filtering, and that linear filtering of
-- the depth aspect is supported whether depth compare is enabled in the
-- sampler or not. If this bit is not present, linear filtering with
-- depth compare disabled is unsupported and linear filtering with depth
-- compare enabled is supported, but may compute the filtered
-- value in an implementation-dependent manner which differs from the
-- normal rules of linear filtering. The resulting value must be
-- in the range [0,1] and should be proportional to, or a weighted
-- average of, the number of comparison passes or failures.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that an
-- image view can be used as a fragment density map
-- attachment.
pattern FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
pattern FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar image
-- can have the IMAGE_CREATE_DISJOINT_BIT set during image
-- creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane formats.
pattern FORMAT_FEATURE_DISJOINT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by default.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
pattern FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
pattern FORMAT_FEATURE_TRANSFER_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
pattern FORMAT_FEATURE_TRANSFER_SRC_BIT :: FormatFeatureFlagBits
type FormatFeatureFlags = FormatFeatureFlagBits
-- | VkSamplerReductionMode - Specify reduction mode for texture filtering
--
-- See Also
--
-- SamplerReductionModeCreateInfo
newtype SamplerReductionMode
SamplerReductionMode :: Int32 -> SamplerReductionMode
-- | SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE specifies that texel
-- values are combined by computing a weighted average of values in the
-- footprint, using weights as specified in the image operations
-- chapter.
pattern SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE :: SamplerReductionMode
-- | SAMPLER_REDUCTION_MODE_MIN specifies that texel values are
-- combined by taking the component-wise minimum of values in the
-- footprint with non-zero weights.
pattern SAMPLER_REDUCTION_MODE_MIN :: SamplerReductionMode
-- | SAMPLER_REDUCTION_MODE_MAX specifies that texel values are
-- combined by taking the component-wise maximum of values in the
-- footprint with non-zero weights.
pattern SAMPLER_REDUCTION_MODE_MAX :: SamplerReductionMode
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.SamplerReductionModeCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_sampler_filter_minmax.PhysicalDeviceSamplerFilterMinmaxProperties
module Vulkan.Extensions.VK_EXT_sampler_filter_minmax
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT :: StructureType
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT :: FormatFeatureFlagBits
pattern SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT :: SamplerReductionMode
pattern SAMPLER_REDUCTION_MODE_MIN_EXT :: SamplerReductionMode
pattern SAMPLER_REDUCTION_MODE_MAX_EXT :: SamplerReductionMode
type SamplerReductionModeEXT = SamplerReductionMode
type PhysicalDeviceSamplerFilterMinmaxPropertiesEXT = PhysicalDeviceSamplerFilterMinmaxProperties
type SamplerReductionModeCreateInfoEXT = SamplerReductionModeCreateInfo
type EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION = 2
pattern EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION :: forall a. Integral a => a
type EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME = "VK_EXT_sampler_filter_minmax"
pattern EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.Format
-- | VkFormat - Available image formats
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AttachmentDescription, AttachmentDescription2,
-- BufferViewCreateInfo, FramebufferAttachmentImageInfo,
-- GeometryTrianglesNV, ImageCreateInfo,
-- ImageFormatListCreateInfo, ImageViewASTCDecodeModeEXT,
-- ImageViewCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerYcbcrConversionCreateInfo, SurfaceFormatKHR,
-- SwapchainCreateInfoKHR, VertexInputAttributeDescription,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype Format
Format :: Int32 -> Format
-- | FORMAT_UNDEFINED specifies that the format is not specified.
pattern FORMAT_UNDEFINED :: Format
-- | FORMAT_R4G4_UNORM_PACK8 specifies a two-component, 8-bit packed
-- unsigned normalized format that has a 4-bit R component in bits 4..7,
-- and a 4-bit G component in bits 0..3.
pattern FORMAT_R4G4_UNORM_PACK8 :: Format
-- | FORMAT_R4G4B4A4_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 4-bit R component in bits
-- 12..15, a 4-bit G component in bits 8..11, a 4-bit B component in bits
-- 4..7, and a 4-bit A component in bits 0..3.
pattern FORMAT_R4G4B4A4_UNORM_PACK16 :: Format
-- | FORMAT_B4G4R4A4_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 4-bit B component in bits
-- 12..15, a 4-bit G component in bits 8..11, a 4-bit R component in bits
-- 4..7, and a 4-bit A component in bits 0..3.
pattern FORMAT_B4G4R4A4_UNORM_PACK16 :: Format
-- | FORMAT_R5G6B5_UNORM_PACK16 specifies a three-component, 16-bit
-- packed unsigned normalized format that has a 5-bit R component in bits
-- 11..15, a 6-bit G component in bits 5..10, and a 5-bit B component in
-- bits 0..4.
pattern FORMAT_R5G6B5_UNORM_PACK16 :: Format
-- | FORMAT_B5G6R5_UNORM_PACK16 specifies a three-component, 16-bit
-- packed unsigned normalized format that has a 5-bit B component in bits
-- 11..15, a 6-bit G component in bits 5..10, and a 5-bit R component in
-- bits 0..4.
pattern FORMAT_B5G6R5_UNORM_PACK16 :: Format
-- | FORMAT_R5G5B5A1_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 5-bit R component in bits
-- 11..15, a 5-bit G component in bits 6..10, a 5-bit B component in bits
-- 1..5, and a 1-bit A component in bit 0.
pattern FORMAT_R5G5B5A1_UNORM_PACK16 :: Format
-- | FORMAT_B5G5R5A1_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 5-bit B component in bits
-- 11..15, a 5-bit G component in bits 6..10, a 5-bit R component in bits
-- 1..5, and a 1-bit A component in bit 0.
pattern FORMAT_B5G5R5A1_UNORM_PACK16 :: Format
-- | FORMAT_A1R5G5B5_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 1-bit A component in bit
-- 15, a 5-bit R component in bits 10..14, a 5-bit G component in bits
-- 5..9, and a 5-bit B component in bits 0..4.
pattern FORMAT_A1R5G5B5_UNORM_PACK16 :: Format
-- | FORMAT_R8_UNORM specifies a one-component, 8-bit unsigned
-- normalized format that has a single 8-bit R component.
pattern FORMAT_R8_UNORM :: Format
-- | FORMAT_R8_SNORM specifies a one-component, 8-bit signed
-- normalized format that has a single 8-bit R component.
pattern FORMAT_R8_SNORM :: Format
-- | FORMAT_R8_USCALED specifies a one-component, 8-bit unsigned
-- scaled integer format that has a single 8-bit R component.
pattern FORMAT_R8_USCALED :: Format
-- | FORMAT_R8_SSCALED specifies a one-component, 8-bit signed
-- scaled integer format that has a single 8-bit R component.
pattern FORMAT_R8_SSCALED :: Format
-- | FORMAT_R8_UINT specifies a one-component, 8-bit unsigned
-- integer format that has a single 8-bit R component.
pattern FORMAT_R8_UINT :: Format
-- | FORMAT_R8_SINT specifies a one-component, 8-bit signed integer
-- format that has a single 8-bit R component.
pattern FORMAT_R8_SINT :: Format
-- | FORMAT_R8_SRGB specifies a one-component, 8-bit unsigned
-- normalized format that has a single 8-bit R component stored with sRGB
-- nonlinear encoding.
pattern FORMAT_R8_SRGB :: Format
-- | FORMAT_R8G8_UNORM specifies a two-component, 16-bit unsigned
-- normalized format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_UNORM :: Format
-- | FORMAT_R8G8_SNORM specifies a two-component, 16-bit signed
-- normalized format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_SNORM :: Format
-- | FORMAT_R8G8_USCALED specifies a two-component, 16-bit unsigned
-- scaled integer format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_USCALED :: Format
-- | FORMAT_R8G8_SSCALED specifies a two-component, 16-bit signed
-- scaled integer format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_SSCALED :: Format
-- | FORMAT_R8G8_UINT specifies a two-component, 16-bit unsigned
-- integer format that has an 8-bit R component in byte 0, and an 8-bit G
-- component in byte 1.
pattern FORMAT_R8G8_UINT :: Format
-- | FORMAT_R8G8_SINT specifies a two-component, 16-bit signed
-- integer format that has an 8-bit R component in byte 0, and an 8-bit G
-- component in byte 1.
pattern FORMAT_R8G8_SINT :: Format
-- | FORMAT_R8G8_SRGB specifies a two-component, 16-bit unsigned
-- normalized format that has an 8-bit R component stored with sRGB
-- nonlinear encoding in byte 0, and an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1.
pattern FORMAT_R8G8_SRGB :: Format
-- | FORMAT_R8G8B8_UNORM specifies a three-component, 24-bit
-- unsigned normalized format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_UNORM :: Format
-- | FORMAT_R8G8B8_SNORM specifies a three-component, 24-bit signed
-- normalized format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SNORM :: Format
-- | FORMAT_R8G8B8_USCALED specifies a three-component, 24-bit
-- unsigned scaled format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_USCALED :: Format
-- | FORMAT_R8G8B8_SSCALED specifies a three-component, 24-bit
-- signed scaled format that has an 8-bit R component in byte 0, an 8-bit
-- G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SSCALED :: Format
-- | FORMAT_R8G8B8_UINT specifies a three-component, 24-bit unsigned
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_UINT :: Format
-- | FORMAT_R8G8B8_SINT specifies a three-component, 24-bit signed
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SINT :: Format
-- | FORMAT_R8G8B8_SRGB specifies a three-component, 24-bit unsigned
-- normalized format that has an 8-bit R component stored with sRGB
-- nonlinear encoding in byte 0, an 8-bit G component stored with sRGB
-- nonlinear encoding in byte 1, and an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 2.
pattern FORMAT_R8G8B8_SRGB :: Format
-- | FORMAT_B8G8R8_UNORM specifies a three-component, 24-bit
-- unsigned normalized format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_UNORM :: Format
-- | FORMAT_B8G8R8_SNORM specifies a three-component, 24-bit signed
-- normalized format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SNORM :: Format
-- | FORMAT_B8G8R8_USCALED specifies a three-component, 24-bit
-- unsigned scaled format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_USCALED :: Format
-- | FORMAT_B8G8R8_SSCALED specifies a three-component, 24-bit
-- signed scaled format that has an 8-bit B component in byte 0, an 8-bit
-- G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SSCALED :: Format
-- | FORMAT_B8G8R8_UINT specifies a three-component, 24-bit unsigned
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_UINT :: Format
-- | FORMAT_B8G8R8_SINT specifies a three-component, 24-bit signed
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SINT :: Format
-- | FORMAT_B8G8R8_SRGB specifies a three-component, 24-bit unsigned
-- normalized format that has an 8-bit B component stored with sRGB
-- nonlinear encoding in byte 0, an 8-bit G component stored with sRGB
-- nonlinear encoding in byte 1, and an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 2.
pattern FORMAT_B8G8R8_SRGB :: Format
-- | FORMAT_R8G8B8A8_UNORM specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_UNORM :: Format
-- | FORMAT_R8G8B8A8_SNORM specifies a four-component, 32-bit signed
-- normalized format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SNORM :: Format
-- | FORMAT_R8G8B8A8_USCALED specifies a four-component, 32-bit
-- unsigned scaled format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_USCALED :: Format
-- | FORMAT_R8G8B8A8_SSCALED specifies a four-component, 32-bit
-- signed scaled format that has an 8-bit R component in byte 0, an 8-bit
-- G component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SSCALED :: Format
-- | FORMAT_R8G8B8A8_UINT specifies a four-component, 32-bit
-- unsigned integer format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_UINT :: Format
-- | FORMAT_R8G8B8A8_SINT specifies a four-component, 32-bit signed
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SINT :: Format
-- | FORMAT_R8G8B8A8_SRGB specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 0, an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1, an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 2, and an 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_SRGB :: Format
-- | FORMAT_B8G8R8A8_UNORM specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_UNORM :: Format
-- | FORMAT_B8G8R8A8_SNORM specifies a four-component, 32-bit signed
-- normalized format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SNORM :: Format
-- | FORMAT_B8G8R8A8_USCALED specifies a four-component, 32-bit
-- unsigned scaled format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_USCALED :: Format
-- | FORMAT_B8G8R8A8_SSCALED specifies a four-component, 32-bit
-- signed scaled format that has an 8-bit B component in byte 0, an 8-bit
-- G component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SSCALED :: Format
-- | FORMAT_B8G8R8A8_UINT specifies a four-component, 32-bit
-- unsigned integer format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_UINT :: Format
-- | FORMAT_B8G8R8A8_SINT specifies a four-component, 32-bit signed
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SINT :: Format
-- | FORMAT_B8G8R8A8_SRGB specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 0, an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1, an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 2, and an 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_SRGB :: Format
-- | FORMAT_A8B8G8R8_UNORM_PACK32 specifies a four-component, 32-bit
-- packed unsigned normalized format that has an 8-bit A component in
-- bits 24..31, an 8-bit B component in bits 16..23, an 8-bit G component
-- in bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_UNORM_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SNORM_PACK32 specifies a four-component, 32-bit
-- packed signed normalized format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_SNORM_PACK32 :: Format
-- | FORMAT_A8B8G8R8_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has an 8-bit A
-- component in bits 24..31, an 8-bit B component in bits 16..23, an
-- 8-bit G component in bits 8..15, and an 8-bit R component in bits
-- 0..7.
pattern FORMAT_A8B8G8R8_USCALED_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has an 8-bit A
-- component in bits 24..31, an 8-bit B component in bits 16..23, an
-- 8-bit G component in bits 8..15, and an 8-bit R component in bits
-- 0..7.
pattern FORMAT_A8B8G8R8_SSCALED_PACK32 :: Format
-- | FORMAT_A8B8G8R8_UINT_PACK32 specifies a four-component, 32-bit
-- packed unsigned integer format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_UINT_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SINT_PACK32 specifies a four-component, 32-bit
-- packed signed integer format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_SINT_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SRGB_PACK32 specifies a four-component, 32-bit
-- packed unsigned normalized format that has an 8-bit A component in
-- bits 24..31, an 8-bit B component stored with sRGB nonlinear encoding
-- in bits 16..23, an 8-bit G component stored with sRGB nonlinear
-- encoding in bits 8..15, and an 8-bit R component stored with sRGB
-- nonlinear encoding in bits 0..7.
pattern FORMAT_A8B8G8R8_SRGB_PACK32 :: Format
-- | FORMAT_A2R10G10B10_UNORM_PACK32 specifies a four-component,
-- 32-bit packed unsigned normalized format that has a 2-bit A component
-- in bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G
-- component in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_UNORM_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SNORM_PACK32 specifies a four-component,
-- 32-bit packed signed normalized format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_SNORM_PACK32 :: Format
-- | FORMAT_A2R10G10B10_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit R component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit B component in bits
-- 0..9.
pattern FORMAT_A2R10G10B10_USCALED_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit R component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit B component in bits
-- 0..9.
pattern FORMAT_A2R10G10B10_SSCALED_PACK32 :: Format
-- | FORMAT_A2R10G10B10_UINT_PACK32 specifies a four-component,
-- 32-bit packed unsigned integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_UINT_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SINT_PACK32 specifies a four-component,
-- 32-bit packed signed integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_SINT_PACK32 :: Format
-- | FORMAT_A2B10G10R10_UNORM_PACK32 specifies a four-component,
-- 32-bit packed unsigned normalized format that has a 2-bit A component
-- in bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G
-- component in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_UNORM_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SNORM_PACK32 specifies a four-component,
-- 32-bit packed signed normalized format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_SNORM_PACK32 :: Format
-- | FORMAT_A2B10G10R10_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit B component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit R component in bits
-- 0..9.
pattern FORMAT_A2B10G10R10_USCALED_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit B component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit R component in bits
-- 0..9.
pattern FORMAT_A2B10G10R10_SSCALED_PACK32 :: Format
-- | FORMAT_A2B10G10R10_UINT_PACK32 specifies a four-component,
-- 32-bit packed unsigned integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_UINT_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SINT_PACK32 specifies a four-component,
-- 32-bit packed signed integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_SINT_PACK32 :: Format
-- | FORMAT_R16_UNORM specifies a one-component, 16-bit unsigned
-- normalized format that has a single 16-bit R component.
pattern FORMAT_R16_UNORM :: Format
-- | FORMAT_R16_SNORM specifies a one-component, 16-bit signed
-- normalized format that has a single 16-bit R component.
pattern FORMAT_R16_SNORM :: Format
-- | FORMAT_R16_USCALED specifies a one-component, 16-bit unsigned
-- scaled integer format that has a single 16-bit R component.
pattern FORMAT_R16_USCALED :: Format
-- | FORMAT_R16_SSCALED specifies a one-component, 16-bit signed
-- scaled integer format that has a single 16-bit R component.
pattern FORMAT_R16_SSCALED :: Format
-- | FORMAT_R16_UINT specifies a one-component, 16-bit unsigned
-- integer format that has a single 16-bit R component.
pattern FORMAT_R16_UINT :: Format
-- | FORMAT_R16_SINT specifies a one-component, 16-bit signed
-- integer format that has a single 16-bit R component.
pattern FORMAT_R16_SINT :: Format
-- | FORMAT_R16_SFLOAT specifies a one-component, 16-bit signed
-- floating-point format that has a single 16-bit R component.
pattern FORMAT_R16_SFLOAT :: Format
-- | FORMAT_R16G16_UNORM specifies a two-component, 32-bit unsigned
-- normalized format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_UNORM :: Format
-- | FORMAT_R16G16_SNORM specifies a two-component, 32-bit signed
-- normalized format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SNORM :: Format
-- | FORMAT_R16G16_USCALED specifies a two-component, 32-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, and a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_USCALED :: Format
-- | FORMAT_R16G16_SSCALED specifies a two-component, 32-bit signed
-- scaled integer format that has a 16-bit R component in bytes 0..1, and
-- a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SSCALED :: Format
-- | FORMAT_R16G16_UINT specifies a two-component, 32-bit unsigned
-- integer format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_UINT :: Format
-- | FORMAT_R16G16_SINT specifies a two-component, 32-bit signed
-- integer format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SINT :: Format
-- | FORMAT_R16G16_SFLOAT specifies a two-component, 32-bit signed
-- floating-point format that has a 16-bit R component in bytes 0..1, and
-- a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SFLOAT :: Format
-- | FORMAT_R16G16B16_UNORM specifies a three-component, 48-bit
-- unsigned normalized format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_UNORM :: Format
-- | FORMAT_R16G16B16_SNORM specifies a three-component, 48-bit
-- signed normalized format that has a 16-bit R component in bytes 0..1,
-- a 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_SNORM :: Format
-- | FORMAT_R16G16B16_USCALED specifies a three-component, 48-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_USCALED :: Format
-- | FORMAT_R16G16B16_SSCALED specifies a three-component, 48-bit
-- signed scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_SSCALED :: Format
-- | FORMAT_R16G16B16_UINT specifies a three-component, 48-bit
-- unsigned integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_UINT :: Format
-- | FORMAT_R16G16B16_SINT specifies a three-component, 48-bit
-- signed integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_SINT :: Format
-- | FORMAT_R16G16B16_SFLOAT specifies a three-component, 48-bit
-- signed floating-point format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_SFLOAT :: Format
-- | FORMAT_R16G16B16A16_UNORM specifies a four-component, 64-bit
-- unsigned normalized format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_UNORM :: Format
-- | FORMAT_R16G16B16A16_SNORM specifies a four-component, 64-bit
-- signed normalized format that has a 16-bit R component in bytes 0..1,
-- a 16-bit G component in bytes 2..3, a 16-bit B component in bytes
-- 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SNORM :: Format
-- | FORMAT_R16G16B16A16_USCALED specifies a four-component, 64-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_USCALED :: Format
-- | FORMAT_R16G16B16A16_SSCALED specifies a four-component, 64-bit
-- signed scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SSCALED :: Format
-- | FORMAT_R16G16B16A16_UINT specifies a four-component, 64-bit
-- unsigned integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, a 16-bit B component in bytes 4..5,
-- and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_UINT :: Format
-- | FORMAT_R16G16B16A16_SINT specifies a four-component, 64-bit
-- signed integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, a 16-bit B component in bytes 4..5,
-- and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SINT :: Format
-- | FORMAT_R16G16B16A16_SFLOAT specifies a four-component, 64-bit
-- signed floating-point format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SFLOAT :: Format
-- | FORMAT_R32_UINT specifies a one-component, 32-bit unsigned
-- integer format that has a single 32-bit R component.
pattern FORMAT_R32_UINT :: Format
-- | FORMAT_R32_SINT specifies a one-component, 32-bit signed
-- integer format that has a single 32-bit R component.
pattern FORMAT_R32_SINT :: Format
-- | FORMAT_R32_SFLOAT specifies a one-component, 32-bit signed
-- floating-point format that has a single 32-bit R component.
pattern FORMAT_R32_SFLOAT :: Format
-- | FORMAT_R32G32_UINT specifies a two-component, 64-bit unsigned
-- integer format that has a 32-bit R component in bytes 0..3, and a
-- 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_UINT :: Format
-- | FORMAT_R32G32_SINT specifies a two-component, 64-bit signed
-- integer format that has a 32-bit R component in bytes 0..3, and a
-- 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_SINT :: Format
-- | FORMAT_R32G32_SFLOAT specifies a two-component, 64-bit signed
-- floating-point format that has a 32-bit R component in bytes 0..3, and
-- a 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_SFLOAT :: Format
-- | FORMAT_R32G32B32_UINT specifies a three-component, 96-bit
-- unsigned integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, and a 32-bit B component in bytes
-- 8..11.
pattern FORMAT_R32G32B32_UINT :: Format
-- | FORMAT_R32G32B32_SINT specifies a three-component, 96-bit
-- signed integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, and a 32-bit B component in bytes
-- 8..11.
pattern FORMAT_R32G32B32_SINT :: Format
-- | FORMAT_R32G32B32_SFLOAT specifies a three-component, 96-bit
-- signed floating-point format that has a 32-bit R component in bytes
-- 0..3, a 32-bit G component in bytes 4..7, and a 32-bit B component in
-- bytes 8..11.
pattern FORMAT_R32G32B32_SFLOAT :: Format
-- | FORMAT_R32G32B32A32_UINT specifies a four-component, 128-bit
-- unsigned integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, a 32-bit B component in bytes 8..11,
-- and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_UINT :: Format
-- | FORMAT_R32G32B32A32_SINT specifies a four-component, 128-bit
-- signed integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, a 32-bit B component in bytes 8..11,
-- and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_SINT :: Format
-- | FORMAT_R32G32B32A32_SFLOAT specifies a four-component, 128-bit
-- signed floating-point format that has a 32-bit R component in bytes
-- 0..3, a 32-bit G component in bytes 4..7, a 32-bit B component in
-- bytes 8..11, and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_SFLOAT :: Format
-- | FORMAT_R64_UINT specifies a one-component, 64-bit unsigned
-- integer format that has a single 64-bit R component.
pattern FORMAT_R64_UINT :: Format
-- | FORMAT_R64_SINT specifies a one-component, 64-bit signed
-- integer format that has a single 64-bit R component.
pattern FORMAT_R64_SINT :: Format
-- | FORMAT_R64_SFLOAT specifies a one-component, 64-bit signed
-- floating-point format that has a single 64-bit R component.
pattern FORMAT_R64_SFLOAT :: Format
-- | FORMAT_R64G64_UINT specifies a two-component, 128-bit unsigned
-- integer format that has a 64-bit R component in bytes 0..7, and a
-- 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_UINT :: Format
-- | FORMAT_R64G64_SINT specifies a two-component, 128-bit signed
-- integer format that has a 64-bit R component in bytes 0..7, and a
-- 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_SINT :: Format
-- | FORMAT_R64G64_SFLOAT specifies a two-component, 128-bit signed
-- floating-point format that has a 64-bit R component in bytes 0..7, and
-- a 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_SFLOAT :: Format
-- | FORMAT_R64G64B64_UINT specifies a three-component, 192-bit
-- unsigned integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, and a 64-bit B component in bytes
-- 16..23.
pattern FORMAT_R64G64B64_UINT :: Format
-- | FORMAT_R64G64B64_SINT specifies a three-component, 192-bit
-- signed integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, and a 64-bit B component in bytes
-- 16..23.
pattern FORMAT_R64G64B64_SINT :: Format
-- | FORMAT_R64G64B64_SFLOAT specifies a three-component, 192-bit
-- signed floating-point format that has a 64-bit R component in bytes
-- 0..7, a 64-bit G component in bytes 8..15, and a 64-bit B component in
-- bytes 16..23.
pattern FORMAT_R64G64B64_SFLOAT :: Format
-- | FORMAT_R64G64B64A64_UINT specifies a four-component, 256-bit
-- unsigned integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, a 64-bit B component in bytes
-- 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_UINT :: Format
-- | FORMAT_R64G64B64A64_SINT specifies a four-component, 256-bit
-- signed integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, a 64-bit B component in bytes
-- 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_SINT :: Format
-- | FORMAT_R64G64B64A64_SFLOAT specifies a four-component, 256-bit
-- signed floating-point format that has a 64-bit R component in bytes
-- 0..7, a 64-bit G component in bytes 8..15, a 64-bit B component in
-- bytes 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_SFLOAT :: Format
-- | FORMAT_B10G11R11_UFLOAT_PACK32 specifies a three-component,
-- 32-bit packed unsigned floating-point format that has a 10-bit B
-- component in bits 22..31, an 11-bit G component in bits 11..21, an
-- 11-bit R component in bits 0..10. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fundamentals-fp10
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fundamentals-fp11.
pattern FORMAT_B10G11R11_UFLOAT_PACK32 :: Format
-- | FORMAT_E5B9G9R9_UFLOAT_PACK32 specifies a three-component,
-- 32-bit packed unsigned floating-point format that has a 5-bit shared
-- exponent in bits 27..31, a 9-bit B component mantissa in bits 18..26,
-- a 9-bit G component mantissa in bits 9..17, and a 9-bit R component
-- mantissa in bits 0..8.
pattern FORMAT_E5B9G9R9_UFLOAT_PACK32 :: Format
-- | FORMAT_D16_UNORM specifies a one-component, 16-bit unsigned
-- normalized format that has a single 16-bit depth component.
pattern FORMAT_D16_UNORM :: Format
-- | FORMAT_X8_D24_UNORM_PACK32 specifies a two-component, 32-bit
-- format that has 24 unsigned normalized bits in the depth component
-- and, optionally:, 8 bits that are unused.
pattern FORMAT_X8_D24_UNORM_PACK32 :: Format
-- | FORMAT_D32_SFLOAT specifies a one-component, 32-bit signed
-- floating-point format that has 32-bits in the depth component.
pattern FORMAT_D32_SFLOAT :: Format
-- | FORMAT_S8_UINT specifies a one-component, 8-bit unsigned
-- integer format that has 8-bits in the stencil component.
pattern FORMAT_S8_UINT :: Format
-- | FORMAT_D16_UNORM_S8_UINT specifies a two-component, 24-bit
-- format that has 16 unsigned normalized bits in the depth component and
-- 8 unsigned integer bits in the stencil component.
pattern FORMAT_D16_UNORM_S8_UINT :: Format
-- | FORMAT_D24_UNORM_S8_UINT specifies a two-component, 32-bit
-- packed format that has 8 unsigned integer bits in the stencil
-- component, and 24 unsigned normalized bits in the depth component.
pattern FORMAT_D24_UNORM_S8_UINT :: Format
-- | FORMAT_D32_SFLOAT_S8_UINT specifies a two-component format that
-- has 32 signed float bits in the depth component and 8 unsigned integer
-- bits in the stencil component. There are optionally: 24-bits that are
-- unused.
pattern FORMAT_D32_SFLOAT_S8_UINT :: Format
-- | FORMAT_BC1_RGB_UNORM_BLOCK specifies a three-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data. This
-- format has no alpha and is considered opaque.
pattern FORMAT_BC1_RGB_UNORM_BLOCK :: Format
-- | FORMAT_BC1_RGB_SRGB_BLOCK specifies a three-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding. This format has no alpha and is considered
-- opaque.
pattern FORMAT_BC1_RGB_SRGB_BLOCK :: Format
-- | FORMAT_BC1_RGBA_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data, and
-- provides 1 bit of alpha.
pattern FORMAT_BC1_RGBA_UNORM_BLOCK :: Format
-- | FORMAT_BC1_RGBA_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding, and provides 1 bit of alpha.
pattern FORMAT_BC1_RGBA_SRGB_BLOCK :: Format
-- | FORMAT_BC2_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_BC2_UNORM_BLOCK :: Format
-- | FORMAT_BC2_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding.
pattern FORMAT_BC2_SRGB_BLOCK :: Format
-- | FORMAT_BC3_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_BC3_UNORM_BLOCK :: Format
-- | FORMAT_BC3_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding.
pattern FORMAT_BC3_SRGB_BLOCK :: Format
-- | FORMAT_BC4_UNORM_BLOCK specifies a one-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized red texel data.
pattern FORMAT_BC4_UNORM_BLOCK :: Format
-- | FORMAT_BC4_SNORM_BLOCK specifies a one-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of signed normalized red texel data.
pattern FORMAT_BC4_SNORM_BLOCK :: Format
-- | FORMAT_BC5_UNORM_BLOCK specifies a two-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RG texel data with the
-- first 64 bits encoding red values followed by 64 bits encoding green
-- values.
pattern FORMAT_BC5_UNORM_BLOCK :: Format
-- | FORMAT_BC5_SNORM_BLOCK specifies a two-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed normalized RG texel data with the
-- first 64 bits encoding red values followed by 64 bits encoding green
-- values.
pattern FORMAT_BC5_SNORM_BLOCK :: Format
-- | FORMAT_BC6H_UFLOAT_BLOCK specifies a three-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned floating-point RGB texel data.
pattern FORMAT_BC6H_UFLOAT_BLOCK :: Format
-- | FORMAT_BC6H_SFLOAT_BLOCK specifies a three-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed floating-point RGB texel data.
pattern FORMAT_BC6H_SFLOAT_BLOCK :: Format
-- | FORMAT_BC7_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_BC7_UNORM_BLOCK :: Format
-- | FORMAT_BC7_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_BC7_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8_UNORM_BLOCK specifies a three-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data. This
-- format has no alpha and is considered opaque.
pattern FORMAT_ETC2_R8G8B8_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8_SRGB_BLOCK specifies a three-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGB texel data with sRGB
-- nonlinear encoding. This format has no alpha and is considered opaque.
pattern FORMAT_ETC2_R8G8B8_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK specifies a four-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data, and
-- provides 1 bit of alpha.
pattern FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK specifies a four-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding, and provides 1 bit of alpha.
pattern FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK specifies a four-component,
-- ETC2 compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK specifies a four-component,
-- ETC2 compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding applied.
pattern FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK :: Format
-- | FORMAT_EAC_R11_UNORM_BLOCK specifies a one-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized red texel data.
pattern FORMAT_EAC_R11_UNORM_BLOCK :: Format
-- | FORMAT_EAC_R11_SNORM_BLOCK specifies a one-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of signed normalized red texel data.
pattern FORMAT_EAC_R11_SNORM_BLOCK :: Format
-- | FORMAT_EAC_R11G11_UNORM_BLOCK specifies a two-component, ETC2
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RG texel data with the first 64
-- bits encoding red values followed by 64 bits encoding green values.
pattern FORMAT_EAC_R11G11_UNORM_BLOCK :: Format
-- | FORMAT_EAC_R11G11_SNORM_BLOCK specifies a two-component, ETC2
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of signed normalized RG texel data with the first 64
-- bits encoding red values followed by 64 bits encoding green values.
pattern FORMAT_EAC_R11G11_SNORM_BLOCK :: Format
-- | FORMAT_ASTC_4x4_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_4x4_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_4x4_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_4x4_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_5x4_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_5x4_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_5x4_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×4 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_5x4_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_5x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_5x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_5x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_5x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_6x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_6x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_6x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_6x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_6x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_6x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_6x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_6x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x8_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×8 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x8_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x8_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×8 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x8_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x8_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×8 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x8_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x8_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×8 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x8_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x10_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×10 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x10_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x10_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×10 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x10_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x10_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×10 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_12x10_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_12x10_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×10 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_12x10_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x12_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×12 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_12x12_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_12x12_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×12 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_12x12_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 12×12 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 12×10 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×10 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×8 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×8 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 6×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 6×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 5×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 5×4 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_G16_B16_R16_3PLANE_444_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- Each plane has the same dimensions and each R, G and B component
-- contributes to a single texel. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G16_B16_R16_3PLANE_444_UNORM :: Format
-- | FORMAT_G16_B16R16_2PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, and a two-component, 32-bit BR plane 1
-- consisting of a 16-bit B component in the word in bytes 0..1, and a
-- 16-bit R component in the word in bytes 2..3. The horizontal
-- dimensions of the BR plane is halved relative to the image dimensions,
-- and each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G16_B16R16_2PLANE_422_UNORM :: Format
-- | FORMAT_G16_B16_R16_3PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- The horizontal dimension of the R and B plane is halved relative to
-- the image dimensions, and each R and B value is shared with the G
-- components for which <math>. The location of each plane when
-- this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G16_B16_R16_3PLANE_422_UNORM :: Format
-- | FORMAT_G16_B16R16_2PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, and a two-component, 32-bit BR plane 1
-- consisting of a 16-bit B component in the word in bytes 0..1, and a
-- 16-bit R component in the word in bytes 2..3. The horizontal and
-- vertical dimensions of the BR plane is halved relative to the image
-- dimensions, and each R and B value is shared with the G components for
-- which (lfloor i_G times 0.5 rfloor = i_B = i_R) and <math>. The
-- location of each plane when this image is in linear layout can be
-- determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G16_B16R16_2PLANE_420_UNORM :: Format
-- | FORMAT_G16_B16_R16_3PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- The horizontal and vertical dimensions of the R and B planes are
-- halved relative to the image dimensions, and each R and B component is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and (lfloor j_G times 0.5 rfloor = j_B = j_R). The location
-- of each plane when this image is in linear layout can be determined
-- via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G16_B16_R16_3PLANE_420_UNORM :: Format
-- | FORMAT_B16G16R16G16_422_UNORM specifies a four-component,
-- 64-bit format containing a pair of G components, an R component, and a
-- B component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has a 16-bit B component in the word in bytes 0..1, a 16-bit G
-- component for the even i coordinate in the word in bytes 2..3,
-- a 16-bit R component in the word in bytes 4..5, and a 16-bit G
-- component for the odd i coordinate in the word in bytes 6..7.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_B16G16R16G16_422_UNORM :: Format
-- | FORMAT_G16B16G16R16_422_UNORM specifies a four-component,
-- 64-bit format containing a pair of G components, an R component, and a
-- B component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has a 16-bit G component for the even i coordinate in
-- the word in bytes 0..1, a 16-bit B component in the word in bytes
-- 2..3, a 16-bit G component for the odd i coordinate in the word
-- in bytes 4..5, and a 16-bit R component in the word in bytes 6..7.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_G16B16G16R16_422_UNORM :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. Each plane has the same
-- dimensions and each R, G and B component contributes to a single
-- texel. The location of each plane when this image is in linear layout
-- can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 12-bit B component in
-- the top 12 bits of the word in bytes 0..1, and a 12-bit R component in
-- the top 12 bits of the word in bytes 2..3, the bottom 4 bits of each
-- word unused. The horizontal dimensions of the BR plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. The horizontal dimension
-- of the R and B plane is halved relative to the image dimensions, and
-- each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 12-bit B component in
-- the top 12 bits of the word in bytes 0..1, and a 12-bit R component in
-- the top 12 bits of the word in bytes 2..3, the bottom 4 bits of each
-- word unused. The horizontal and vertical dimensions of the BR plane is
-- halved relative to the image dimensions, and each R and B value is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and <math>. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. The horizontal and
-- vertical dimensions of the R and B planes are halved relative to the
-- image dimensions, and each R and B component is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- (lfloor j_G times 0.5 rfloor = j_B = j_R). The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 12-bit B component in the top 12 bits of the
-- word in bytes 0..1, a 12-bit G component for the even i
-- coordinate in the top 12 bits of the word in bytes 2..3, a 12-bit R
-- component in the top 12 bits of the word in bytes 4..5, and a 12-bit G
-- component for the odd i coordinate in the top 12 bits of the
-- word in bytes 6..7, with the bottom 4 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 :: Format
-- | FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 12-bit G component for the even i
-- coordinate in the top 12 bits of the word in bytes 0..1, a 12-bit B
-- component in the top 12 bits of the word in bytes 2..3, a 12-bit G
-- component for the odd i coordinate in the top 12 bits of the
-- word in bytes 4..5, and a 12-bit R component in the top 12 bits of the
-- word in bytes 6..7, with the bottom 4 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 :: Format
-- | FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 specifies a
-- four-component, 64-bit unsigned normalized format that has a 12-bit R
-- component in the top 12 bits of the word in bytes 0..1, a 12-bit G
-- component in the top 12 bits of the word in bytes 2..3, a 12-bit B
-- component in the top 12 bits of the word in bytes 4..5, and a 12-bit A
-- component in the top 12 bits of the word in bytes 6..7, with the
-- bottom 4 bits of each word unused.
pattern FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 :: Format
-- | FORMAT_R12X4G12X4_UNORM_2PACK16 specifies a two-component,
-- 32-bit unsigned normalized format that has a 12-bit R component in the
-- top 12 bits of the word in bytes 0..1, and a 12-bit G component in the
-- top 12 bits of the word in bytes 2..3, with the bottom 4 bits of each
-- word unused.
pattern FORMAT_R12X4G12X4_UNORM_2PACK16 :: Format
-- | FORMAT_R12X4_UNORM_PACK16 specifies a one-component, 16-bit
-- unsigned normalized format that has a single 12-bit R component in the
-- top 12 bits of a 16-bit word, with the bottom 4 bits unused.
pattern FORMAT_R12X4_UNORM_PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. Each plane has the same
-- dimensions and each R, G and B component contributes to a single
-- texel. The location of each plane when this image is in linear layout
-- can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 10-bit B component in
-- the top 10 bits of the word in bytes 0..1, and a 10-bit R component in
-- the top 10 bits of the word in bytes 2..3, the bottom 6 bits of each
-- word unused. The horizontal dimensions of the BR plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. The horizontal dimension
-- of the R and B plane is halved relative to the image dimensions, and
-- each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 10-bit B component in
-- the top 10 bits of the word in bytes 0..1, and a 10-bit R component in
-- the top 10 bits of the word in bytes 2..3, the bottom 6 bits of each
-- word unused. The horizontal and vertical dimensions of the BR plane is
-- halved relative to the image dimensions, and each R and B value is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and <math>. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. The horizontal and
-- vertical dimensions of the R and B planes are halved relative to the
-- image dimensions, and each R and B component is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- (lfloor j_G times 0.5 rfloor = j_B = j_R). The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 10-bit B component in the top 10 bits of the
-- word in bytes 0..1, a 10-bit G component for the even i
-- coordinate in the top 10 bits of the word in bytes 2..3, a 10-bit R
-- component in the top 10 bits of the word in bytes 4..5, and a 10-bit G
-- component for the odd i coordinate in the top 10 bits of the
-- word in bytes 6..7, with the bottom 6 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 :: Format
-- | FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 10-bit G component for the even i
-- coordinate in the top 10 bits of the word in bytes 0..1, a 10-bit B
-- component in the top 10 bits of the word in bytes 2..3, a 10-bit G
-- component for the odd i coordinate in the top 10 bits of the
-- word in bytes 4..5, and a 10-bit R component in the top 10 bits of the
-- word in bytes 6..7, with the bottom 6 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 :: Format
-- | FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 specifies a
-- four-component, 64-bit unsigned normalized format that has a 10-bit R
-- component in the top 10 bits of the word in bytes 0..1, a 10-bit G
-- component in the top 10 bits of the word in bytes 2..3, a 10-bit B
-- component in the top 10 bits of the word in bytes 4..5, and a 10-bit A
-- component in the top 10 bits of the word in bytes 6..7, with the
-- bottom 6 bits of each word unused.
pattern FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 :: Format
-- | FORMAT_R10X6G10X6_UNORM_2PACK16 specifies a two-component,
-- 32-bit unsigned normalized format that has a 10-bit R component in the
-- top 10 bits of the word in bytes 0..1, and a 10-bit G component in the
-- top 10 bits of the word in bytes 2..3, with the bottom 6 bits of each
-- word unused.
pattern FORMAT_R10X6G10X6_UNORM_2PACK16 :: Format
-- | FORMAT_R10X6_UNORM_PACK16 specifies a one-component, 16-bit
-- unsigned normalized format that has a single 10-bit R component in the
-- top 10 bits of a 16-bit word, with the bottom 6 bits unused.
pattern FORMAT_R10X6_UNORM_PACK16 :: Format
-- | FORMAT_G8_B8_R8_3PLANE_444_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. Each plane has the same dimensions and each R, G and B
-- component contributes to a single texel. The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G8_B8_R8_3PLANE_444_UNORM :: Format
-- | FORMAT_G8_B8R8_2PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, and a two-component, 16-bit BR plane 1 consisting of an 8-bit
-- B component in byte 0 and an 8-bit R component in byte 1. The
-- horizontal dimensions of the BR plane is halved relative to the image
-- dimensions, and each R and B value is shared with the G components for
-- which <math>. The location of each plane when this image is in
-- linear layout can be determined via getImageSubresourceLayout,
-- using IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G8_B8R8_2PLANE_422_UNORM :: Format
-- | FORMAT_G8_B8_R8_3PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. The horizontal dimension of the R and B plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G8_B8_R8_3PLANE_422_UNORM :: Format
-- | FORMAT_G8_B8R8_2PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, and a two-component, 16-bit BR plane 1 consisting of an 8-bit
-- B component in byte 0 and an 8-bit R component in byte 1. The
-- horizontal and vertical dimensions of the BR plane is halved relative
-- to the image dimensions, and each R and B value is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G8_B8R8_2PLANE_420_UNORM :: Format
-- | FORMAT_G8_B8_R8_3PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. The horizontal and vertical dimensions of the R and B planes
-- are halved relative to the image dimensions, and each R and B
-- component is shared with the G components for which (lfloor i_G times
-- 0.5 rfloor = i_B = i_R) and (lfloor j_G times 0.5 rfloor = j_B = j_R).
-- The location of each plane when this image is in linear layout can be
-- determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G8_B8_R8_3PLANE_420_UNORM :: Format
-- | FORMAT_B8G8R8G8_422_UNORM specifies a four-component, 32-bit
-- format containing a pair of G components, an R component, and a B
-- component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has an 8-bit B component in byte 0, an 8-bit G component for
-- the even i coordinate in byte 1, an 8-bit R component in byte
-- 2, and an 8-bit G component for the odd i coordinate in byte 3.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_B8G8R8G8_422_UNORM :: Format
-- | FORMAT_G8B8G8R8_422_UNORM specifies a four-component, 32-bit
-- format containing a pair of G components, an R component, and a B
-- component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has an 8-bit G component for the even i coordinate in
-- byte 0, an 8-bit B component in byte 1, an 8-bit G component for the
-- odd i coordinate in byte 2, and an 8-bit R component in byte 3.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_G8B8G8R8_422_UNORM :: Format
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.Format.Format
instance Foreign.Storable.Storable Vulkan.Core10.Enums.Format.Format
instance GHC.Classes.Ord Vulkan.Core10.Enums.Format.Format
instance GHC.Classes.Eq Vulkan.Core10.Enums.Format.Format
instance GHC.Show.Show Vulkan.Core10.Enums.Format.Format
instance GHC.Read.Read Vulkan.Core10.Enums.Format.Format
module Vulkan.Extensions.VK_EXT_astc_decode_mode
-- | VkImageViewASTCDecodeModeEXT - Structure describing the ASTC decode
-- mode for an image view
--
-- Valid Usage
--
--
--
--
-- - If the decodeModeSharedExponent feature is not enabled,
-- decodeMode must not be
-- FORMAT_E5B9G9R9_UFLOAT_PACK32
-- - If decodeMode is FORMAT_R8G8B8A8_UNORM the image
-- view must not include blocks using any of the ASTC HDR
-- modes
-- - format of the image view must be one of
-- FORMAT_ASTC_4x4_UNORM_BLOCK, FORMAT_ASTC_4x4_SRGB_BLOCK,
-- FORMAT_ASTC_5x4_UNORM_BLOCK, FORMAT_ASTC_5x4_SRGB_BLOCK,
-- FORMAT_ASTC_5x5_UNORM_BLOCK, FORMAT_ASTC_5x5_SRGB_BLOCK,
-- FORMAT_ASTC_6x5_UNORM_BLOCK, FORMAT_ASTC_6x5_SRGB_BLOCK,
-- FORMAT_ASTC_6x6_UNORM_BLOCK, FORMAT_ASTC_6x6_SRGB_BLOCK,
-- FORMAT_ASTC_8x5_UNORM_BLOCK, FORMAT_ASTC_8x5_SRGB_BLOCK,
-- FORMAT_ASTC_8x6_UNORM_BLOCK, FORMAT_ASTC_8x6_SRGB_BLOCK,
-- FORMAT_ASTC_8x8_UNORM_BLOCK, FORMAT_ASTC_8x8_SRGB_BLOCK,
-- FORMAT_ASTC_10x5_UNORM_BLOCK,
-- FORMAT_ASTC_10x5_SRGB_BLOCK,
-- FORMAT_ASTC_10x6_UNORM_BLOCK,
-- FORMAT_ASTC_10x6_SRGB_BLOCK,
-- FORMAT_ASTC_10x8_UNORM_BLOCK,
-- FORMAT_ASTC_10x8_SRGB_BLOCK,
-- FORMAT_ASTC_10x10_UNORM_BLOCK,
-- FORMAT_ASTC_10x10_SRGB_BLOCK,
-- FORMAT_ASTC_12x10_UNORM_BLOCK,
-- FORMAT_ASTC_12x10_SRGB_BLOCK,
-- FORMAT_ASTC_12x12_UNORM_BLOCK, or
-- FORMAT_ASTC_12x12_SRGB_BLOCK
--
--
-- If format uses sRGB encoding then the decodeMode has
-- no effect.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - decodeMode must be a valid Format
-- value
--
--
-- See Also
--
-- Format, StructureType
data ImageViewASTCDecodeModeEXT
ImageViewASTCDecodeModeEXT :: Format -> ImageViewASTCDecodeModeEXT
-- | decodeMode is the intermediate format used to decode ASTC
-- compressed formats.
[$sel:decodeMode:ImageViewASTCDecodeModeEXT] :: ImageViewASTCDecodeModeEXT -> Format
-- | VkPhysicalDeviceASTCDecodeFeaturesEXT - Structure describing ASTC
-- decode mode features
--
-- Members
--
-- The members of the PhysicalDeviceASTCDecodeFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceASTCDecodeFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceASTCDecodeFeaturesEXT can also be included
-- in the pNext chain of createDevice to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceASTCDecodeFeaturesEXT
PhysicalDeviceASTCDecodeFeaturesEXT :: Bool -> PhysicalDeviceASTCDecodeFeaturesEXT
-- | decodeModeSharedExponent indicates whether the implementation
-- supports decoding ASTC compressed formats to
-- FORMAT_E5B9G9R9_UFLOAT_PACK32 internal precision.
[$sel:decodeModeSharedExponent:PhysicalDeviceASTCDecodeFeaturesEXT] :: PhysicalDeviceASTCDecodeFeaturesEXT -> Bool
type EXT_ASTC_DECODE_MODE_SPEC_VERSION = 1
pattern EXT_ASTC_DECODE_MODE_SPEC_VERSION :: forall a. Integral a => a
type EXT_ASTC_DECODE_MODE_EXTENSION_NAME = "VK_EXT_astc_decode_mode"
pattern EXT_ASTC_DECODE_MODE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_astc_decode_mode.PhysicalDeviceASTCDecodeFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_astc_decode_mode.ImageViewASTCDecodeModeEXT
module Vulkan.Core12.Promoted_From_VK_KHR_image_format_list
-- | VkImageFormatListCreateInfo - Specify that an image can be used
-- with a particular set of formats
--
-- Description
--
-- If viewFormatCount is zero, pViewFormats is ignored
-- and the image is created as if the ImageFormatListCreateInfo
-- structure were not included in the pNext list of
-- ImageCreateInfo.
--
-- Valid Usage
--
--
-- - If viewFormatCount is not 0, all of the formats
-- in the pViewFormats array must be compatible with the
-- format specified in the format field of
-- ImageCreateInfo, as described in the compatibility
-- table
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If viewFormatCount is not 0,
-- pViewFormats must be a valid pointer to an array of
-- viewFormatCount valid Format values
--
--
-- See Also
--
-- Format, StructureType
data ImageFormatListCreateInfo
ImageFormatListCreateInfo :: Vector Format -> ImageFormatListCreateInfo
-- | pViewFormats is an array which lists of all formats which
-- can be used when creating views of this image.
[$sel:viewFormats:ImageFormatListCreateInfo] :: ImageFormatListCreateInfo -> Vector Format
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_image_format_list.ImageFormatListCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_image_format_list.ImageFormatListCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_image_format_list.ImageFormatListCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_image_format_list.ImageFormatListCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_image_format_list.ImageFormatListCreateInfo
module Vulkan.Extensions.VK_KHR_image_format_list
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR :: StructureType
type ImageFormatListCreateInfoKHR = ImageFormatListCreateInfo
type KHR_IMAGE_FORMAT_LIST_SPEC_VERSION = 1
pattern KHR_IMAGE_FORMAT_LIST_SPEC_VERSION :: forall a. Integral a => a
type KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME = "VK_KHR_image_format_list"
pattern KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.Filter
-- | VkFilter - Specify filters used for texture lookups
--
-- Description
--
-- These filters are described in detail in Texel Filtering.
--
-- See Also
--
-- SamplerCreateInfo, SamplerYcbcrConversionCreateInfo,
-- cmdBlitImage
newtype Filter
Filter :: Int32 -> Filter
-- | FILTER_NEAREST specifies nearest filtering.
pattern FILTER_NEAREST :: Filter
-- | FILTER_LINEAR specifies linear filtering.
pattern FILTER_LINEAR :: Filter
pattern FILTER_CUBIC_IMG :: Filter
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.Filter.Filter
instance Foreign.Storable.Storable Vulkan.Core10.Enums.Filter.Filter
instance GHC.Classes.Ord Vulkan.Core10.Enums.Filter.Filter
instance GHC.Classes.Eq Vulkan.Core10.Enums.Filter.Filter
instance GHC.Show.Show Vulkan.Core10.Enums.Filter.Filter
instance GHC.Read.Read Vulkan.Core10.Enums.Filter.Filter
module Vulkan.Extensions.VK_EXT_filter_cubic
pattern FILTER_CUBIC_EXT :: Filter
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT :: FormatFeatureFlagBits
-- | VkPhysicalDeviceImageViewImageFormatInfoEXT - Structure for providing
-- image view type
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageViewType, StructureType
data PhysicalDeviceImageViewImageFormatInfoEXT
PhysicalDeviceImageViewImageFormatInfoEXT :: ImageViewType -> PhysicalDeviceImageViewImageFormatInfoEXT
-- | imageViewType is a ImageViewType value specifying the
-- type of the image view.
--
-- imageViewType must be a valid ImageViewType
-- value
[$sel:imageViewType:PhysicalDeviceImageViewImageFormatInfoEXT] :: PhysicalDeviceImageViewImageFormatInfoEXT -> ImageViewType
-- | VkFilterCubicImageViewImageFormatPropertiesEXT - Structure for
-- querying cubic filtering capabilities of an image view type
--
-- Valid Usage (Implicit)
--
--
--
-- Valid Usage
--
--
--
-- See Also
--
-- Bool32, StructureType
data FilterCubicImageViewImageFormatPropertiesEXT
FilterCubicImageViewImageFormatPropertiesEXT :: Bool -> Bool -> FilterCubicImageViewImageFormatPropertiesEXT
-- | filterCubic tells if image format, image type and image view
-- type can be used with cubic filtering. This field is set by the
-- implementation. User-specified value is ignored.
[$sel:filterCubic:FilterCubicImageViewImageFormatPropertiesEXT] :: FilterCubicImageViewImageFormatPropertiesEXT -> Bool
-- | filterCubicMinmax tells if image format, image type and image
-- view type can be used with cubic filtering and minmax
-- filtering. This field is set by the implementation. User-specified
-- value is ignored.
[$sel:filterCubicMinmax:FilterCubicImageViewImageFormatPropertiesEXT] :: FilterCubicImageViewImageFormatPropertiesEXT -> Bool
type EXT_FILTER_CUBIC_SPEC_VERSION = 3
pattern EXT_FILTER_CUBIC_SPEC_VERSION :: forall a. Integral a => a
type EXT_FILTER_CUBIC_EXTENSION_NAME = "VK_EXT_filter_cubic"
pattern EXT_FILTER_CUBIC_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_filter_cubic.FilterCubicImageViewImageFormatPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_filter_cubic.PhysicalDeviceImageViewImageFormatInfoEXT
module Vulkan.Core10.Enums.FenceCreateFlagBits
-- | VkFenceCreateFlagBits - Bitmask specifying initial state and behavior
-- of a fence
--
-- See Also
--
-- FenceCreateFlags
newtype FenceCreateFlagBits
FenceCreateFlagBits :: Flags -> FenceCreateFlagBits
-- | FENCE_CREATE_SIGNALED_BIT specifies that the fence object is
-- created in the signaled state. Otherwise, it is created in the
-- unsignaled state.
pattern FENCE_CREATE_SIGNALED_BIT :: FenceCreateFlagBits
type FenceCreateFlags = FenceCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.FenceCreateFlagBits.FenceCreateFlagBits
module Vulkan.Core10.Enums.EventCreateFlags
-- | VkEventCreateFlags - Reserved for future use
--
-- Description
--
-- EventCreateFlags is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- See Also
--
-- EventCreateInfo
newtype EventCreateFlags
EventCreateFlags :: Flags -> EventCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.EventCreateFlags.EventCreateFlags
module Vulkan.Core10.Enums.DynamicState
-- | VkDynamicState - Indicate which dynamic state is taken from dynamic
-- state commands
--
-- See Also
--
-- PipelineDynamicStateCreateInfo
newtype DynamicState
DynamicState :: Int32 -> DynamicState
-- | DYNAMIC_STATE_VIEWPORT specifies that the pViewports
-- state in PipelineViewportStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetViewport before any
-- draw commands. The number of viewports used by a pipeline is still
-- specified by the viewportCount member of
-- PipelineViewportStateCreateInfo.
pattern DYNAMIC_STATE_VIEWPORT :: DynamicState
-- | DYNAMIC_STATE_SCISSOR specifies that the pScissors
-- state in PipelineViewportStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetScissor before any
-- draw commands. The number of scissor rectangles used by a pipeline is
-- still specified by the scissorCount member of
-- PipelineViewportStateCreateInfo.
pattern DYNAMIC_STATE_SCISSOR :: DynamicState
-- | DYNAMIC_STATE_LINE_WIDTH specifies that the lineWidth
-- state in PipelineRasterizationStateCreateInfo will be ignored
-- and must be set dynamically with cmdSetLineWidth before
-- any draw commands that generate line primitives for the rasterizer.
pattern DYNAMIC_STATE_LINE_WIDTH :: DynamicState
-- | DYNAMIC_STATE_DEPTH_BIAS specifies that the
-- depthBiasConstantFactor, depthBiasClamp and
-- depthBiasSlopeFactor states in
-- PipelineRasterizationStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetDepthBias before any
-- draws are performed with depthBiasEnable in
-- PipelineRasterizationStateCreateInfo set to TRUE.
pattern DYNAMIC_STATE_DEPTH_BIAS :: DynamicState
-- | DYNAMIC_STATE_BLEND_CONSTANTS specifies that the
-- blendConstants state in
-- PipelineColorBlendStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetBlendConstants before
-- any draws are performed with a pipeline state with
-- PipelineColorBlendAttachmentState member blendEnable
-- set to TRUE and any of the blend functions using a constant
-- blend color.
pattern DYNAMIC_STATE_BLEND_CONSTANTS :: DynamicState
-- | DYNAMIC_STATE_DEPTH_BOUNDS specifies that the
-- minDepthBounds and maxDepthBounds states of
-- PipelineDepthStencilStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetDepthBounds before
-- any draws are performed with a pipeline state with
-- PipelineDepthStencilStateCreateInfo member
-- depthBoundsTestEnable set to TRUE.
pattern DYNAMIC_STATE_DEPTH_BOUNDS :: DynamicState
-- | DYNAMIC_STATE_STENCIL_COMPARE_MASK specifies that the
-- compareMask state in
-- PipelineDepthStencilStateCreateInfo for both front and
-- back will be ignored and must be set dynamically with
-- cmdSetStencilCompareMask before any draws are performed with a
-- pipeline state with PipelineDepthStencilStateCreateInfo member
-- stencilTestEnable set to TRUE
pattern DYNAMIC_STATE_STENCIL_COMPARE_MASK :: DynamicState
-- | DYNAMIC_STATE_STENCIL_WRITE_MASK specifies that the
-- writeMask state in PipelineDepthStencilStateCreateInfo
-- for both front and back will be ignored and
-- must be set dynamically with cmdSetStencilWriteMask
-- before any draws are performed with a pipeline state with
-- PipelineDepthStencilStateCreateInfo member
-- stencilTestEnable set to TRUE
pattern DYNAMIC_STATE_STENCIL_WRITE_MASK :: DynamicState
-- | DYNAMIC_STATE_STENCIL_REFERENCE specifies that the
-- reference state in PipelineDepthStencilStateCreateInfo
-- for both front and back will be ignored and
-- must be set dynamically with cmdSetStencilReference
-- before any draws are performed with a pipeline state with
-- PipelineDepthStencilStateCreateInfo member
-- stencilTestEnable set to TRUE
pattern DYNAMIC_STATE_STENCIL_REFERENCE :: DynamicState
-- | DYNAMIC_STATE_LINE_STIPPLE_EXT specifies that the
-- lineStippleFactor and lineStipplePattern state in
-- PipelineRasterizationLineStateCreateInfoEXT will be ignored and
-- must be set dynamically with cmdSetLineStippleEXT before
-- any draws are performed with a pipeline state with
-- PipelineRasterizationLineStateCreateInfoEXT member
-- stippledLineEnable set to TRUE.
pattern DYNAMIC_STATE_LINE_STIPPLE_EXT :: DynamicState
-- | DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV specifies that the
-- pExclusiveScissors state in
-- PipelineViewportExclusiveScissorStateCreateInfoNV will be
-- ignored and must be set dynamically with
-- cmdSetExclusiveScissorNV before any draw commands. The number
-- of exclusive scissor rectangles used by a pipeline is still specified
-- by the exclusiveScissorCount member of
-- PipelineViewportExclusiveScissorStateCreateInfoNV.
pattern DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV :: DynamicState
-- | DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV specifies that
-- the coarse sample order state in
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV will be
-- ignored and must be set dynamically with
-- cmdSetCoarseSampleOrderNV before any draw commands.
pattern DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV :: DynamicState
-- | DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV specifies that
-- the pShadingRatePalettes state in
-- PipelineViewportShadingRateImageStateCreateInfoNV will be
-- ignored and must be set dynamically with
-- cmdSetViewportShadingRatePaletteNV before any draw commands.
pattern DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV :: DynamicState
-- | DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT specifies that the
-- sampleLocationsInfo state in
-- PipelineSampleLocationsStateCreateInfoEXT will be ignored and
-- must be set dynamically with cmdSetSampleLocationsEXT
-- before any draw or clear commands. Enabling custom sample locations is
-- still indicated by the sampleLocationsEnable member of
-- PipelineSampleLocationsStateCreateInfoEXT.
pattern DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: DynamicState
-- | DYNAMIC_STATE_DISCARD_RECTANGLE_EXT specifies that the
-- pDiscardRectangles state in
-- PipelineDiscardRectangleStateCreateInfoEXT will be ignored and
-- must be set dynamically with cmdSetDiscardRectangleEXT
-- before any draw or clear commands. The DiscardRectangleModeEXT
-- and the number of active discard rectangles is still specified by the
-- discardRectangleMode and discardRectangleCount
-- members of PipelineDiscardRectangleStateCreateInfoEXT.
pattern DYNAMIC_STATE_DISCARD_RECTANGLE_EXT :: DynamicState
-- | DYNAMIC_STATE_VIEWPORT_W_SCALING_NV specifies that the
-- pViewportScalings state in
-- PipelineViewportWScalingStateCreateInfoNV will be ignored and
-- must be set dynamically with cmdSetViewportWScalingNV
-- before any draws are performed with a pipeline state with
-- PipelineViewportWScalingStateCreateInfoNV member
-- viewportScalingEnable set to TRUE
pattern DYNAMIC_STATE_VIEWPORT_W_SCALING_NV :: DynamicState
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DynamicState.DynamicState
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DynamicState.DynamicState
instance GHC.Classes.Ord Vulkan.Core10.Enums.DynamicState.DynamicState
instance GHC.Classes.Eq Vulkan.Core10.Enums.DynamicState.DynamicState
instance GHC.Show.Show Vulkan.Core10.Enums.DynamicState.DynamicState
instance GHC.Read.Read Vulkan.Core10.Enums.DynamicState.DynamicState
module Vulkan.Core10.Enums.DeviceQueueCreateFlagBits
-- | VkDeviceQueueCreateFlagBits - Bitmask specifying behavior of the queue
--
-- See Also
--
-- DeviceQueueCreateFlags
newtype DeviceQueueCreateFlagBits
DeviceQueueCreateFlagBits :: Flags -> DeviceQueueCreateFlagBits
-- | DEVICE_QUEUE_CREATE_PROTECTED_BIT specifies that the device
-- queue is a protected-capable queue.
pattern DEVICE_QUEUE_CREATE_PROTECTED_BIT :: DeviceQueueCreateFlagBits
type DeviceQueueCreateFlags = DeviceQueueCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.DeviceQueueCreateFlagBits.DeviceQueueCreateFlagBits
module Vulkan.Core10.Enums.DeviceCreateFlags
-- | VkDeviceCreateFlags - Reserved for future use
--
-- Description
--
-- DeviceCreateFlags is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- See Also
--
-- DeviceCreateInfo
newtype DeviceCreateFlags
DeviceCreateFlags :: Flags -> DeviceCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.DeviceCreateFlags.DeviceCreateFlags
module Vulkan.Core10.Enums.DescriptorType
-- | VkDescriptorType - Specifies the type of a descriptor in a descriptor
-- set
--
-- Description
--
--
--
--
--
-- When a descriptor set is updated via elements of
-- WriteDescriptorSet, members of pImageInfo,
-- pBufferInfo and pTexelBufferView are only accessed
-- by the implementation when they correspond to descriptor type being
-- defined - otherwise they are ignored. The members accessed are as
-- follows for each descriptor type:
--
--
-- - For DESCRIPTOR_TYPE_SAMPLER, only the sampler
-- member of each element of
-- WriteDescriptorSet::pImageInfo is accessed.
-- - For DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT, only the imageView
-- and imageLayout members of each element of
-- WriteDescriptorSet::pImageInfo are accessed.
-- - For DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, all members of
-- each element of WriteDescriptorSet::pImageInfo are
-- accessed.
-- - For DESCRIPTOR_TYPE_UNIFORM_BUFFER,
-- DESCRIPTOR_TYPE_STORAGE_BUFFER,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, all members of each
-- element of WriteDescriptorSet::pBufferInfo are
-- accessed.
-- - For DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, each element of
-- WriteDescriptorSet::pTexelBufferView is accessed.
--
--
-- When updating descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT, none of the
-- pImageInfo, pBufferInfo, or
-- pTexelBufferView members are accessed, instead the source
-- data of the descriptor update operation is taken from the
-- WriteDescriptorSetInlineUniformBlockEXT structure in the
-- pNext chain of WriteDescriptorSet. When updating
-- descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, none of the
-- pImageInfo, pBufferInfo, or
-- pTexelBufferView members are accessed, instead the source
-- data of the descriptor update operation is taken from the
-- WriteDescriptorSetAccelerationStructureKHR structure in the
-- pNext chain of WriteDescriptorSet.
--
-- See Also
--
-- DescriptorPoolSize, DescriptorSetLayoutBinding,
-- DescriptorUpdateTemplateEntry, ImageViewHandleInfoNVX,
-- WriteDescriptorSet
newtype DescriptorType
DescriptorType :: Int32 -> DescriptorType
pattern DESCRIPTOR_TYPE_SAMPLER :: DescriptorType
pattern DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER :: DescriptorType
pattern DESCRIPTOR_TYPE_SAMPLED_IMAGE :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_IMAGE :: DescriptorType
pattern DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_UNIFORM_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC :: DescriptorType
pattern DESCRIPTOR_TYPE_INPUT_ATTACHMENT :: DescriptorType
pattern DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR :: DescriptorType
pattern DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT :: DescriptorType
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DescriptorType.DescriptorType
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DescriptorType.DescriptorType
instance GHC.Classes.Ord Vulkan.Core10.Enums.DescriptorType.DescriptorType
instance GHC.Classes.Eq Vulkan.Core10.Enums.DescriptorType.DescriptorType
instance GHC.Show.Show Vulkan.Core10.Enums.DescriptorType.DescriptorType
instance GHC.Read.Read Vulkan.Core10.Enums.DescriptorType.DescriptorType
module Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits
-- | VkDescriptorSetLayoutCreateFlagBits - Bitmask specifying descriptor
-- set layout properties
--
-- See Also
--
-- DescriptorSetLayoutCreateFlags
newtype DescriptorSetLayoutCreateFlagBits
DescriptorSetLayoutCreateFlagBits :: Flags -> DescriptorSetLayoutCreateFlagBits
-- | DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR specifies
-- that descriptor sets must not be allocated using this layout,
-- and descriptors are instead pushed by cmdPushDescriptorSetKHR.
pattern DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR :: DescriptorSetLayoutCreateFlagBits
-- | DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
-- specifies that descriptor sets using this layout must be
-- allocated from a descriptor pool created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT bit set.
-- Descriptor set layouts created with this bit set have alternate limits
-- for the maximum number of descriptors per-stage and per-pipeline
-- layout. The non-UpdateAfterBind limits only count descriptors in sets
-- created without this flag. The UpdateAfterBind limits count all
-- descriptors, but the limits may be higher than the
-- non-UpdateAfterBind limits.
pattern DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT :: DescriptorSetLayoutCreateFlagBits
type DescriptorSetLayoutCreateFlags = DescriptorSetLayoutCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.DescriptorSetLayoutCreateFlagBits.DescriptorSetLayoutCreateFlagBits
module Vulkan.Core10.Enums.DescriptorPoolResetFlags
-- | VkDescriptorPoolResetFlags - Reserved for future use
--
-- Description
--
-- DescriptorPoolResetFlags is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- resetDescriptorPool
newtype DescriptorPoolResetFlags
DescriptorPoolResetFlags :: Flags -> DescriptorPoolResetFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
instance GHC.Show.Show Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
instance GHC.Read.Read Vulkan.Core10.Enums.DescriptorPoolResetFlags.DescriptorPoolResetFlags
module Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits
-- | VkDescriptorPoolCreateFlagBits - Bitmask specifying certain supported
-- operations on a descriptor pool
--
-- See Also
--
-- DescriptorPoolCreateFlags
newtype DescriptorPoolCreateFlagBits
DescriptorPoolCreateFlagBits :: Flags -> DescriptorPoolCreateFlagBits
-- | DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT specifies that
-- descriptor sets can return their individual allocations to the
-- pool, i.e. all of allocateDescriptorSets,
-- freeDescriptorSets, and resetDescriptorPool are allowed.
-- Otherwise, descriptor sets allocated from the pool must not be
-- individually freed back to the pool, i.e. only
-- allocateDescriptorSets and resetDescriptorPool are
-- allowed.
pattern DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT :: DescriptorPoolCreateFlagBits
-- | DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT specifies that
-- descriptor sets allocated from this pool can include bindings
-- with the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit set. It
-- is valid to allocate descriptor sets that have bindings that do not
-- set the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit from a
-- pool that has DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT set.
pattern DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT :: DescriptorPoolCreateFlagBits
type DescriptorPoolCreateFlags = DescriptorPoolCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.DescriptorPoolCreateFlagBits.DescriptorPoolCreateFlagBits
module Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing
-- | VkPhysicalDeviceDescriptorIndexingFeatures - Structure describing
-- descriptor indexing features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceDescriptorIndexingFeatures
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceDescriptorIndexingFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceDescriptorIndexingFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceDescriptorIndexingFeatures
PhysicalDeviceDescriptorIndexingFeatures :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceDescriptorIndexingFeatures
-- | shaderInputAttachmentArrayDynamicIndexing indicates whether
-- arrays of input attachments can be indexed by dynamically
-- uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT must be indexed only by
-- constant integral expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the InputAttachmentArrayDynamicIndexing capability.
[$sel:shaderInputAttachmentArrayDynamicIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderUniformTexelBufferArrayDynamicIndexing indicates
-- whether arrays of uniform texel buffers can be indexed by
-- dynamically uniform integer expressions in shader code. If this
-- feature is not enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must be indexed
-- only by constant integral expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the UniformTexelBufferArrayDynamicIndexing
-- capability.
[$sel:shaderUniformTexelBufferArrayDynamicIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderStorageTexelBufferArrayDynamicIndexing indicates
-- whether arrays of storage texel buffers can be indexed by
-- dynamically uniform integer expressions in shader code. If this
-- feature is not enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must be indexed
-- only by constant integral expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the StorageTexelBufferArrayDynamicIndexing
-- capability.
[$sel:shaderStorageTexelBufferArrayDynamicIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderUniformBufferArrayNonUniformIndexing indicates whether
-- arrays of uniform buffers can be indexed by non-uniform integer
-- expressions in shader code. If this feature is not enabled, resources
-- with a descriptor type of DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC must not be
-- indexed by non-uniform integer expressions when aggregated into arrays
-- in shader code. This also indicates whether shader modules can
-- declare the UniformBufferArrayNonUniformIndexing capability.
[$sel:shaderUniformBufferArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderSampledImageArrayNonUniformIndexing indicates whether
-- arrays of samplers or sampled images can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE must not be indexed by
-- non-uniform integer expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the SampledImageArrayNonUniformIndexing capability.
[$sel:shaderSampledImageArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderStorageBufferArrayNonUniformIndexing indicates whether
-- arrays of storage buffers can be indexed by non-uniform integer
-- expressions in shader code. If this feature is not enabled, resources
-- with a descriptor type of DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must not be
-- indexed by non-uniform integer expressions when aggregated into arrays
-- in shader code. This also indicates whether shader modules can
-- declare the StorageBufferArrayNonUniformIndexing capability.
[$sel:shaderStorageBufferArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderStorageImageArrayNonUniformIndexing indicates whether
-- arrays of storage images can be indexed by non-uniform integer
-- expressions in shader code. If this feature is not enabled, resources
-- with a descriptor type of DESCRIPTOR_TYPE_STORAGE_IMAGE
-- must not be indexed by non-uniform integer expressions when
-- aggregated into arrays in shader code. This also indicates whether
-- shader modules can declare the
-- StorageImageArrayNonUniformIndexing capability.
[$sel:shaderStorageImageArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderInputAttachmentArrayNonUniformIndexing indicates
-- whether arrays of input attachments can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT must not be indexed by
-- non-uniform integer expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the InputAttachmentArrayNonUniformIndexing capability.
[$sel:shaderInputAttachmentArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderUniformTexelBufferArrayNonUniformIndexing indicates
-- whether arrays of uniform texel buffers can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must not be indexed
-- by non-uniform integer expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the UniformTexelBufferArrayNonUniformIndexing
-- capability.
[$sel:shaderUniformTexelBufferArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | shaderStorageTexelBufferArrayNonUniformIndexing indicates
-- whether arrays of storage texel buffers can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must not be indexed
-- by non-uniform integer expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the StorageTexelBufferArrayNonUniformIndexing
-- capability.
[$sel:shaderStorageTexelBufferArrayNonUniformIndexing:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingUniformBufferUpdateAfterBind indicates
-- whether the implementation supports updating uniform buffer
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_UNIFORM_BUFFER.
[$sel:descriptorBindingUniformBufferUpdateAfterBind:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingSampledImageUpdateAfterBind indicates
-- whether the implementation supports updating sampled image descriptors
-- after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE.
[$sel:descriptorBindingSampledImageUpdateAfterBind:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingStorageImageUpdateAfterBind indicates
-- whether the implementation supports updating storage image descriptors
-- after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_STORAGE_IMAGE.
[$sel:descriptorBindingStorageImageUpdateAfterBind:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingStorageBufferUpdateAfterBind indicates
-- whether the implementation supports updating storage buffer
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_STORAGE_BUFFER.
[$sel:descriptorBindingStorageBufferUpdateAfterBind:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingUniformTexelBufferUpdateAfterBind indicates
-- whether the implementation supports updating uniform texel buffer
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.
[$sel:descriptorBindingUniformTexelBufferUpdateAfterBind:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingStorageTexelBufferUpdateAfterBind indicates
-- whether the implementation supports updating storage texel buffer
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.
[$sel:descriptorBindingStorageTexelBufferUpdateAfterBind:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingUpdateUnusedWhilePending indicates whether
-- the implementation supports updating descriptors while the set is in
-- use. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT must
-- not be used.
[$sel:descriptorBindingUpdateUnusedWhilePending:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingPartiallyBound indicates whether the
-- implementation supports statically using a descriptor set binding in
-- which some descriptors are not valid. If this feature is not enabled,
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT must not be used.
[$sel:descriptorBindingPartiallyBound:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | descriptorBindingVariableDescriptorCount indicates whether
-- the implementation supports descriptor sets with a variable-sized last
-- binding. If this feature is not enabled,
-- DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT must
-- not be used.
[$sel:descriptorBindingVariableDescriptorCount:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | runtimeDescriptorArray indicates whether the implementation
-- supports the SPIR-V RuntimeDescriptorArray capability. If
-- this feature is not enabled, descriptors must not be declared
-- in runtime arrays.
[$sel:runtimeDescriptorArray:PhysicalDeviceDescriptorIndexingFeatures] :: PhysicalDeviceDescriptorIndexingFeatures -> Bool
-- | VkPhysicalDeviceDescriptorIndexingProperties - Structure describing
-- descriptor indexing properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceDescriptorIndexingProperties
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceDescriptorIndexingProperties structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceDescriptorIndexingProperties
PhysicalDeviceDescriptorIndexingProperties :: Word32 -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDeviceDescriptorIndexingProperties
-- | maxUpdateAfterBindDescriptorsInAllPools is the maximum number
-- of descriptors (summed over all descriptor types) that can be
-- created across all pools that are created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT bit set. Pool
-- creation may fail when this limit is exceeded, or when the
-- space this limit represents is unable to satisfy a pool creation due
-- to fragmentation.
[$sel:maxUpdateAfterBindDescriptorsInAllPools:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | shaderUniformBufferArrayNonUniformIndexingNative is a boolean
-- value indicating whether uniform buffer descriptors natively support
-- nonuniform indexing. If this is FALSE, then a single dynamic
-- instance of an instruction that nonuniformly indexes an array of
-- uniform buffers may execute multiple times in order to access
-- all the descriptors.
[$sel:shaderUniformBufferArrayNonUniformIndexingNative:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | shaderSampledImageArrayNonUniformIndexingNative is a boolean
-- value indicating whether sampler and image descriptors natively
-- support nonuniform indexing. If this is FALSE, then a single
-- dynamic instance of an instruction that nonuniformly indexes an array
-- of samplers or images may execute multiple times in order to
-- access all the descriptors.
[$sel:shaderSampledImageArrayNonUniformIndexingNative:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | shaderStorageBufferArrayNonUniformIndexingNative is a boolean
-- value indicating whether storage buffer descriptors natively support
-- nonuniform indexing. If this is FALSE, then a single dynamic
-- instance of an instruction that nonuniformly indexes an array of
-- storage buffers may execute multiple times in order to access
-- all the descriptors.
[$sel:shaderStorageBufferArrayNonUniformIndexingNative:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | shaderStorageImageArrayNonUniformIndexingNative is a boolean
-- value indicating whether storage image descriptors natively support
-- nonuniform indexing. If this is FALSE, then a single dynamic
-- instance of an instruction that nonuniformly indexes an array of
-- storage images may execute multiple times in order to access
-- all the descriptors.
[$sel:shaderStorageImageArrayNonUniformIndexingNative:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | shaderInputAttachmentArrayNonUniformIndexingNative is a
-- boolean value indicating whether input attachment descriptors natively
-- support nonuniform indexing. If this is FALSE, then a single
-- dynamic instance of an instruction that nonuniformly indexes an array
-- of input attachments may execute multiple times in order to
-- access all the descriptors.
[$sel:shaderInputAttachmentArrayNonUniformIndexingNative:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | robustBufferAccessUpdateAfterBind is a boolean value
-- indicating whether robustBufferAccess can be enabled in
-- a device simultaneously with
-- descriptorBindingUniformBufferUpdateAfterBind,
-- descriptorBindingStorageBufferUpdateAfterBind,
-- descriptorBindingUniformTexelBufferUpdateAfterBind, and/or
-- descriptorBindingStorageTexelBufferUpdateAfterBind. If this
-- is FALSE, then either robustBufferAccess must
-- be disabled or all of these update-after-bind features must be
-- disabled.
[$sel:robustBufferAccessUpdateAfterBind:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | quadDivergentImplicitLod is a boolean value indicating
-- whether implicit level of detail calculations for image operations
-- have well-defined results when the image and/or sampler objects used
-- for the instruction are not uniform within a quad. See Derivative
-- Image Operations.
[$sel:quadDivergentImplicitLod:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Bool
-- | maxPerStageDescriptorUpdateAfterBindSamplers is similar to
-- maxPerStageDescriptorSamplers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindSamplers:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindUniformBuffers is similar
-- to maxPerStageDescriptorUniformBuffers but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindUniformBuffers:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindStorageBuffers is similar
-- to maxPerStageDescriptorStorageBuffers but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindStorageBuffers:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindSampledImages is similar
-- to maxPerStageDescriptorSampledImages but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindSampledImages:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindStorageImages is similar
-- to maxPerStageDescriptorStorageImages but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindStorageImages:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindInputAttachments is
-- similar to maxPerStageDescriptorInputAttachments but counts
-- descriptors from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindInputAttachments:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxPerStageUpdateAfterBindResources is similar to
-- maxPerStageResources but counts descriptors from descriptor
-- sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageUpdateAfterBindResources:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindSamplers is similar to
-- maxDescriptorSetSamplers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindSamplers:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindUniformBuffers is similar to
-- maxDescriptorSetUniformBuffers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindUniformBuffers:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindUniformBuffersDynamic is
-- similar to maxDescriptorSetUniformBuffersDynamic but counts
-- descriptors from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindUniformBuffersDynamic:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindStorageBuffers is similar to
-- maxDescriptorSetStorageBuffers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindStorageBuffers:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindStorageBuffersDynamic is
-- similar to maxDescriptorSetStorageBuffersDynamic but counts
-- descriptors from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindStorageBuffersDynamic:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindSampledImages is similar to
-- maxDescriptorSetSampledImages but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindSampledImages:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindStorageImages is similar to
-- maxDescriptorSetStorageImages but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindStorageImages:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | maxDescriptorSetUpdateAfterBindInputAttachments is similar to
-- maxDescriptorSetInputAttachments but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindInputAttachments:PhysicalDeviceDescriptorIndexingProperties] :: PhysicalDeviceDescriptorIndexingProperties -> Word32
-- | VkDescriptorSetLayoutBindingFlagsCreateInfo - Structure specifying
-- creation flags for descriptor set layout bindings
--
-- Description
--
-- If bindingCount is zero or if this structure is not included
-- in the pNext chain, the DescriptorBindingFlags for
-- each descriptor set layout binding is considered to be zero.
-- Otherwise, the descriptor set layout binding at
-- DescriptorSetLayoutCreateInfo::pBindings[i] uses the
-- flags in pBindingFlags[i].
--
-- Valid Usage
--
--
--
--
-- - If DescriptorSetLayoutCreateInfo::flags includes
-- DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then all
-- elements of pBindingFlags must not include
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT,
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT, or
-- DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT
-- - If an element of pBindingFlags includes
-- DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT, then all
-- other elements of
-- DescriptorSetLayoutCreateInfo::pBindings must
-- have a smaller value of binding
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingUniformBufferUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingSampledImageUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingStorageImageUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_STORAGE_IMAGE must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingStorageBufferUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingUniformTexelBufferUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingStorageTexelBufferUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceInlineUniformBlockFeaturesEXT::descriptorBindingInlineUniformBlockUpdateAfterBind
-- is not enabled, all bindings with descriptor type
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - All bindings with descriptor type
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must not use
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingUpdateUnusedWhilePending
-- is not enabled, all elements of pBindingFlags must not
-- include DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingPartiallyBound
-- is not enabled, all elements of pBindingFlags must not
-- include DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT
-- - If
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingVariableDescriptorCount
-- is not enabled, all elements of pBindingFlags must not
-- include DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT
-- - If an element of pBindingFlags includes
-- DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT, that
-- element’s descriptorType must not be
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If bindingCount is not 0, and
-- pBindingFlags is not NULL, pBindingFlags
-- must be a valid pointer to an array of bindingCount
-- valid combinations of DescriptorBindingFlagBits values
--
--
-- See Also
--
-- DescriptorBindingFlags, StructureType
data DescriptorSetLayoutBindingFlagsCreateInfo
DescriptorSetLayoutBindingFlagsCreateInfo :: Word32 -> Vector DescriptorBindingFlags -> DescriptorSetLayoutBindingFlagsCreateInfo
-- | bindingCount is zero or the number of elements in
-- pBindingFlags.
[$sel:bindingCount:DescriptorSetLayoutBindingFlagsCreateInfo] :: DescriptorSetLayoutBindingFlagsCreateInfo -> Word32
-- | pBindingFlags is a pointer to an array of
-- DescriptorBindingFlags bitfields, one for each descriptor set
-- layout binding.
[$sel:bindingFlags:DescriptorSetLayoutBindingFlagsCreateInfo] :: DescriptorSetLayoutBindingFlagsCreateInfo -> Vector DescriptorBindingFlags
-- | VkDescriptorSetVariableDescriptorCountAllocateInfo - Structure
-- specifying additional allocation parameters for descriptor sets
--
-- Description
--
-- If descriptorSetCount is zero or this structure is not
-- included in the pNext chain, then the variable lengths are
-- considered to be zero. Otherwise, pDescriptorCounts[i] is the
-- number of descriptors in the variable count descriptor binding in the
-- corresponding descriptor set layout. If the variable count descriptor
-- binding in the corresponding descriptor set layout has a descriptor
-- type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- pDescriptorCounts[i] specifies the binding’s capacity in
-- bytes. If DescriptorSetAllocateInfo::pSetLayouts[i]
-- does not include a variable count descriptor binding, then
-- pDescriptorCounts[i] is ignored.
--
-- Valid Usage
--
--
--
--
-- - If DescriptorSetAllocateInfo::pSetLayouts[i] has a
-- variable descriptor count binding, then pDescriptorCounts[i]
-- must be less than or equal to the descriptor count specified
-- for that binding when the descriptor set layout was created
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If descriptorSetCount is not 0,
-- pDescriptorCounts must be a valid pointer to an array
-- of descriptorSetCount uint32_t values
--
--
-- See Also
--
-- StructureType
data DescriptorSetVariableDescriptorCountAllocateInfo
DescriptorSetVariableDescriptorCountAllocateInfo :: Vector Word32 -> DescriptorSetVariableDescriptorCountAllocateInfo
-- | pDescriptorCounts is a pointer to an array of descriptor
-- counts, with each member specifying the number of descriptors in a
-- variable descriptor count binding in the corresponding descriptor set
-- being allocated.
[$sel:descriptorCounts:DescriptorSetVariableDescriptorCountAllocateInfo] :: DescriptorSetVariableDescriptorCountAllocateInfo -> Vector Word32
-- | VkDescriptorSetVariableDescriptorCountLayoutSupport - Structure
-- returning information about whether a descriptor set layout can be
-- supported
--
-- Description
--
-- If the create info includes a variable-sized descriptor, then
-- supported is determined assuming the requested size of the
-- variable-sized descriptor, and maxVariableDescriptorCount is
-- set to the maximum size of that descriptor that can be
-- successfully created (which is greater than or equal to the requested
-- size passed in). If the create info does not include a variable-sized
-- descriptor or if the
-- PhysicalDeviceDescriptorIndexingFeatures::descriptorBindingVariableDescriptorCount
-- feature is not enabled, then maxVariableDescriptorCount is
-- set to zero. For the purposes of this command, a variable-sized
-- descriptor binding with a descriptorCount of zero is treated
-- as if the descriptorCount is one, and thus the binding is not
-- ignored and the maximum descriptor count will be returned. If the
-- layout is not supported, then the value written to
-- maxVariableDescriptorCount is undefined.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data DescriptorSetVariableDescriptorCountLayoutSupport
DescriptorSetVariableDescriptorCountLayoutSupport :: Word32 -> DescriptorSetVariableDescriptorCountLayoutSupport
-- | maxVariableDescriptorCount indicates the maximum number of
-- descriptors supported in the highest numbered binding of the layout,
-- if that binding is variable-sized. If the highest numbered binding of
-- the layout has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- maxVariableDescriptorCount indicates the maximum byte size
-- supported for the binding, if that binding is variable-sized.
[$sel:maxVariableDescriptorCount:DescriptorSetVariableDescriptorCountLayoutSupport] :: DescriptorSetVariableDescriptorCountLayoutSupport -> Word32
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkResult - Vulkan command return codes
--
-- Description
--
-- If a command returns a runtime error, unless otherwise specified any
-- output parameters will have undefined contents, except that if the
-- output parameter is a structure with sType and pNext
-- fields, those fields will be unmodified. Any structures chained from
-- pNext will also have undefined contents, except that
-- sType and pNext will be unmodified.
--
-- Out of memory errors do not damage any currently existing Vulkan
-- objects. Objects that have already been successfully created
-- can still be used by the application.
--
-- ERROR_UNKNOWN will be returned by an implementation when an
-- unexpected error occurs that cannot be attributed to valid behavior of
-- the application and implementation. Under these conditions, it
-- may be returned from any command returning a Result.
--
-- Note
--
-- ERROR_UNKNOWN is not expected to ever be returned if the
-- application behavior is valid, and if the implementation is bug-free.
-- If ERROR_UNKNOWN is received, the application should be checked
-- against the latest validation layers to verify correct behavior as
-- much as possible. If no issues are identified it could be an
-- implementation issue, and the implementor should be contacted for
-- support.
--
-- Performance-critical commands generally do not have return codes. If a
-- runtime error occurs in such commands, the implementation will defer
-- reporting the error until a specified point. For commands that record
-- into command buffers (vkCmd*) runtime errors are reported by
-- endCommandBuffer.
--
-- See Also
--
-- PresentInfoKHR
newtype Result
Result :: Int32 -> Result
-- | SUCCESS Command successfully completed
pattern SUCCESS :: Result
-- | NOT_READY A fence or query has not yet completed
pattern NOT_READY :: Result
-- | TIMEOUT A wait operation has not completed in the specified
-- time
pattern TIMEOUT :: Result
-- | EVENT_SET An event is signaled
pattern EVENT_SET :: Result
-- | EVENT_RESET An event is unsignaled
pattern EVENT_RESET :: Result
-- | INCOMPLETE A return array was too small for the result
pattern INCOMPLETE :: Result
-- | ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
pattern ERROR_OUT_OF_HOST_MEMORY :: Result
-- | ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has
-- failed.
pattern ERROR_OUT_OF_DEVICE_MEMORY :: Result
-- | ERROR_INITIALIZATION_FAILED Initialization of an object could
-- not be completed for implementation-specific reasons.
pattern ERROR_INITIALIZATION_FAILED :: Result
-- | ERROR_DEVICE_LOST The logical or physical device has been lost.
-- See Lost Device
pattern ERROR_DEVICE_LOST :: Result
-- | ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
pattern ERROR_MEMORY_MAP_FAILED :: Result
-- | ERROR_LAYER_NOT_PRESENT A requested layer is not present or
-- could not be loaded.
pattern ERROR_LAYER_NOT_PRESENT :: Result
-- | ERROR_EXTENSION_NOT_PRESENT A requested extension is not
-- supported.
pattern ERROR_EXTENSION_NOT_PRESENT :: Result
-- | ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
pattern ERROR_FEATURE_NOT_PRESENT :: Result
-- | ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is
-- not supported by the driver or is otherwise incompatible for
-- implementation-specific reasons.
pattern ERROR_INCOMPATIBLE_DRIVER :: Result
-- | ERROR_TOO_MANY_OBJECTS Too many objects of the type have
-- already been created.
pattern ERROR_TOO_MANY_OBJECTS :: Result
-- | ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported
-- on this device.
pattern ERROR_FORMAT_NOT_SUPPORTED :: Result
-- | ERROR_FRAGMENTED_POOL A pool allocation has failed due to
-- fragmentation of the pool’s memory. This must only be returned
-- if no attempt to allocate host or device memory was made to
-- accommodate the new allocation. This should be returned in
-- preference to ERROR_OUT_OF_POOL_MEMORY, but only if the
-- implementation is certain that the pool allocation failure was due to
-- fragmentation.
pattern ERROR_FRAGMENTED_POOL :: Result
-- | ERROR_UNKNOWN An unknown error has occurred; either the
-- application has provided invalid input, or an implementation failure
-- has occurred.
pattern ERROR_UNKNOWN :: Result
-- | PIPELINE_COMPILE_REQUIRED_EXT A requested pipeline creation
-- would have required compilation, but the application requested
-- compilation to not be performed.
pattern PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | OPERATION_NOT_DEFERRED_KHR A deferred operation was requested
-- and no operations were deferred.
pattern OPERATION_NOT_DEFERRED_KHR :: Result
-- | OPERATION_DEFERRED_KHR A deferred operation was requested and
-- at least some of the work was deferred.
pattern OPERATION_DEFERRED_KHR :: Result
-- | THREAD_DONE_KHR A deferred operation is not complete but there
-- is no work remaining to assign to additional threads.
pattern THREAD_DONE_KHR :: Result
-- | THREAD_IDLE_KHR A deferred operation is not complete but there
-- is currently no work for this thread to do at the time of this call.
pattern THREAD_IDLE_KHR :: Result
-- | ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a
-- swapchain created with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it
-- did not have exlusive full-screen access. This may occur due to
-- implementation-dependent reasons, outside of the application’s
-- control.
pattern ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: Result
pattern ERROR_NOT_PERMITTED_EXT :: Result
pattern ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: Result
pattern ERROR_INCOMPATIBLE_VERSION_KHR :: Result
-- | ERROR_INVALID_SHADER_NV One or more shaders failed to compile
-- or link. More details are reported back to the application via
-- VK_EXT_debug_report if enabled.
pattern ERROR_INVALID_SHADER_NV :: Result
pattern ERROR_VALIDATION_FAILED_EXT :: Result
-- | ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain
-- does not use the same presentable image layout, or is incompatible in
-- a way that prevents sharing an image.
pattern ERROR_INCOMPATIBLE_DISPLAY_KHR :: Result
-- | ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that
-- it is no longer compatible with the swapchain, and further
-- presentation requests using the swapchain will fail. Applications
-- must query the new surface properties and recreate their
-- swapchain if they wish to continue presenting to the surface.
pattern ERROR_OUT_OF_DATE_KHR :: Result
-- | SUBOPTIMAL_KHR A swapchain no longer matches the surface
-- properties exactly, but can still be used to present to the
-- surface successfully.
pattern SUBOPTIMAL_KHR :: Result
-- | ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already
-- in use by Vulkan or another API in a manner which prevents it from
-- being used again.
pattern ERROR_NATIVE_WINDOW_IN_USE_KHR :: Result
-- | ERROR_SURFACE_LOST_KHR A surface is no longer available.
pattern ERROR_SURFACE_LOST_KHR :: Result
-- | ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or
-- memory allocation failed because the requested address is not
-- available. A shader group handle assignment failed because the
-- requested shader group handle information is no longer valid.
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: Result
-- | ERROR_FRAGMENTATION A descriptor pool creation has failed due
-- to fragmentation.
pattern ERROR_FRAGMENTATION :: Result
-- | ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid
-- handle of the specified type.
pattern ERROR_INVALID_EXTERNAL_HANDLE :: Result
-- | ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed.
-- This must only be returned if no attempt to allocate host or
-- device memory was made to accommodate the new allocation. If the
-- failure was definitely due to fragmentation of the pool,
-- ERROR_FRAGMENTED_POOL should be returned instead.
pattern ERROR_OUT_OF_POOL_MEMORY :: Result
-- | VkDescriptorPoolCreateFlagBits - Bitmask specifying certain supported
-- operations on a descriptor pool
--
-- See Also
--
-- DescriptorPoolCreateFlags
newtype DescriptorPoolCreateFlagBits
DescriptorPoolCreateFlagBits :: Flags -> DescriptorPoolCreateFlagBits
-- | DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT specifies that
-- descriptor sets can return their individual allocations to the
-- pool, i.e. all of allocateDescriptorSets,
-- freeDescriptorSets, and resetDescriptorPool are allowed.
-- Otherwise, descriptor sets allocated from the pool must not be
-- individually freed back to the pool, i.e. only
-- allocateDescriptorSets and resetDescriptorPool are
-- allowed.
pattern DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT :: DescriptorPoolCreateFlagBits
-- | DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT specifies that
-- descriptor sets allocated from this pool can include bindings
-- with the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit set. It
-- is valid to allocate descriptor sets that have bindings that do not
-- set the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit from a
-- pool that has DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT set.
pattern DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT :: DescriptorPoolCreateFlagBits
type DescriptorPoolCreateFlags = DescriptorPoolCreateFlagBits
-- | VkDescriptorSetLayoutCreateFlagBits - Bitmask specifying descriptor
-- set layout properties
--
-- See Also
--
-- DescriptorSetLayoutCreateFlags
newtype DescriptorSetLayoutCreateFlagBits
DescriptorSetLayoutCreateFlagBits :: Flags -> DescriptorSetLayoutCreateFlagBits
-- | DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR specifies
-- that descriptor sets must not be allocated using this layout,
-- and descriptors are instead pushed by cmdPushDescriptorSetKHR.
pattern DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR :: DescriptorSetLayoutCreateFlagBits
-- | DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
-- specifies that descriptor sets using this layout must be
-- allocated from a descriptor pool created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT bit set.
-- Descriptor set layouts created with this bit set have alternate limits
-- for the maximum number of descriptors per-stage and per-pipeline
-- layout. The non-UpdateAfterBind limits only count descriptors in sets
-- created without this flag. The UpdateAfterBind limits count all
-- descriptors, but the limits may be higher than the
-- non-UpdateAfterBind limits.
pattern DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT :: DescriptorSetLayoutCreateFlagBits
type DescriptorSetLayoutCreateFlags = DescriptorSetLayoutCreateFlagBits
-- | VkDescriptorBindingFlagBits - Bitmask specifying descriptor set layout
-- binding properties
--
-- Description
--
-- Note
--
-- Note that while DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT and
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT both involve
-- updates to descriptor sets after they are bound,
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT is a weaker
-- requirement since it is only about descriptors that are not used,
-- whereas DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT requires the
-- implementation to observe updates to descriptors that are used.
--
-- See Also
--
-- DescriptorBindingFlags
newtype DescriptorBindingFlagBits
DescriptorBindingFlagBits :: Flags -> DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT indicates that if
-- descriptors in this binding are updated between when the descriptor
-- set is bound in a command buffer and when that command buffer is
-- submitted to a queue, then the submission will use the most recently
-- set descriptors for this binding and the updates do not invalidate the
-- command buffer. Descriptor bindings created with this flag are also
-- partially exempt from the external synchronization requirement in
-- updateDescriptorSetWithTemplateKHR and
-- updateDescriptorSets. Multiple descriptors with this flag set
-- can be updated concurrently in different threads, though the
-- same descriptor must not be updated concurrently by two
-- threads. Descriptors with this flag set can be updated
-- concurrently with the set being bound to a command buffer in another
-- thread, but not concurrently with the set being reset or freed.
pattern DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT :: DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT indicates
-- that descriptors in this binding can be updated after a command
-- buffer has bound this descriptor set, or while a command buffer that
-- uses this descriptor set is pending execution, as long as the
-- descriptors that are updated are not used by those command buffers. If
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is also set, then
-- descriptors can be updated as long as they are not dynamically
-- used by any shader invocations. If
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is not set, then
-- descriptors can be updated as long as they are not statically
-- used by any shader invocations.
pattern DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT :: DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT indicates that
-- descriptors in this binding that are not dynamically used need
-- not contain valid descriptors at the time the descriptors are
-- consumed. A descriptor is dynamically used if any shader invocation
-- executes an instruction that performs any memory access using the
-- descriptor.
pattern DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT :: DescriptorBindingFlagBits
-- | DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT indicates that
-- this descriptor binding has a variable size that will be specified
-- when a descriptor set is allocated using this layout. The value of
-- descriptorCount is treated as an upper bound on the size of
-- the binding. This must only be used for the last binding in the
-- descriptor set layout (i.e. the binding with the largest value of
-- binding). For the purposes of counting against limits such as
-- maxDescriptorSet* and maxPerStageDescriptor*, the
-- full value of descriptorCount is counted , except for
-- descriptor bindings with a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT where
-- descriptorCount specifies the upper bound on the byte size of
-- the binding, thus it counts against the
-- maxInlineUniformBlockSize limit instead. .
pattern DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT :: DescriptorBindingFlagBits
type DescriptorBindingFlags = DescriptorBindingFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetLayoutBindingFlagsCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetLayoutBindingFlagsCreateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountAllocateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountAllocateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountLayoutSupport
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountAllocateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountAllocateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetVariableDescriptorCountAllocateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetLayoutBindingFlagsCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetLayoutBindingFlagsCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.DescriptorSetLayoutBindingFlagsCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_descriptor_indexing.PhysicalDeviceDescriptorIndexingFeatures
module Vulkan.Extensions.VK_EXT_descriptor_indexing
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT :: StructureType
pattern DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT :: DescriptorBindingFlagBits
pattern DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT :: DescriptorBindingFlagBits
pattern DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT :: DescriptorBindingFlagBits
pattern DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT :: DescriptorBindingFlagBits
pattern DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT :: DescriptorPoolCreateFlagBits
pattern DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT :: DescriptorSetLayoutCreateFlagBits
pattern ERROR_FRAGMENTATION_EXT :: Result
type DescriptorBindingFlagsEXT = DescriptorBindingFlags
type DescriptorBindingFlagBitsEXT = DescriptorBindingFlagBits
type PhysicalDeviceDescriptorIndexingFeaturesEXT = PhysicalDeviceDescriptorIndexingFeatures
type PhysicalDeviceDescriptorIndexingPropertiesEXT = PhysicalDeviceDescriptorIndexingProperties
type DescriptorSetLayoutBindingFlagsCreateInfoEXT = DescriptorSetLayoutBindingFlagsCreateInfo
type DescriptorSetVariableDescriptorCountAllocateInfoEXT = DescriptorSetVariableDescriptorCountAllocateInfo
type DescriptorSetVariableDescriptorCountLayoutSupportEXT = DescriptorSetVariableDescriptorCountLayoutSupport
type EXT_DESCRIPTOR_INDEXING_SPEC_VERSION = 2
pattern EXT_DESCRIPTOR_INDEXING_SPEC_VERSION :: forall a. Integral a => a
type EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME = "VK_EXT_descriptor_indexing"
pattern EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.DependencyFlagBits
-- | VkDependencyFlagBits - Bitmask specifying how execution and memory
-- dependencies are formed
--
-- See Also
--
-- DependencyFlags
newtype DependencyFlagBits
DependencyFlagBits :: Flags -> DependencyFlagBits
-- | DEPENDENCY_BY_REGION_BIT specifies that dependencies will be
-- framebuffer-local.
pattern DEPENDENCY_BY_REGION_BIT :: DependencyFlagBits
-- | DEPENDENCY_VIEW_LOCAL_BIT specifies that a subpass has more
-- than one view.
pattern DEPENDENCY_VIEW_LOCAL_BIT :: DependencyFlagBits
-- | DEPENDENCY_DEVICE_GROUP_BIT specifies that dependencies are
-- non-device-local dependency.
pattern DEPENDENCY_DEVICE_GROUP_BIT :: DependencyFlagBits
type DependencyFlags = DependencyFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.DependencyFlagBits.DependencyFlagBits
module Vulkan.Core11.Promoted_From_VK_KHR_multiview
-- | VkPhysicalDeviceMultiviewFeatures - Structure describing multiview
-- features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceMultiviewFeatures structure
-- describe the following features:
--
-- Description
--
--
-- - multiview specifies whether the implementation supports
-- multiview rendering within a render pass. If this feature is not
-- enabled, the view mask of each subpass must always be
-- zero.
--
--
--
-- - multiviewGeometryShader specifies whether the
-- implementation supports multiview rendering within a render pass, with
-- geometry shaders. If this feature is not enabled, then a
-- pipeline compiled against a subpass with a non-zero view mask
-- must not include a geometry shader.
-- - multiviewTessellationShader specifies whether the
-- implementation supports multiview rendering within a render pass, with
-- tessellation shaders. If this feature is not enabled, then a
-- pipeline compiled against a subpass with a non-zero view mask
-- must not include any tessellation shaders.
--
--
-- If the PhysicalDeviceMultiviewFeatures structure is included in
-- the pNext chain of PhysicalDeviceFeatures2, it is
-- filled with values indicating whether each feature is supported.
-- PhysicalDeviceMultiviewFeatures can also be included in
-- the pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage
--
--
-- - If multiviewGeometryShader is enabled then
-- multiview must also be enabled
--
--
--
-- - If multiviewTessellationShader is enabled then
-- multiview must also be enabled
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceMultiviewFeatures
PhysicalDeviceMultiviewFeatures :: Bool -> Bool -> Bool -> PhysicalDeviceMultiviewFeatures
[$sel:multiview:PhysicalDeviceMultiviewFeatures] :: PhysicalDeviceMultiviewFeatures -> Bool
[$sel:multiviewGeometryShader:PhysicalDeviceMultiviewFeatures] :: PhysicalDeviceMultiviewFeatures -> Bool
[$sel:multiviewTessellationShader:PhysicalDeviceMultiviewFeatures] :: PhysicalDeviceMultiviewFeatures -> Bool
-- | VkPhysicalDeviceMultiviewProperties - Structure describing multiview
-- limits that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceMultiviewProperties structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceMultiviewProperties structure is included
-- in the pNext chain of PhysicalDeviceProperties2, it is
-- filled with the implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceMultiviewProperties
PhysicalDeviceMultiviewProperties :: Word32 -> Word32 -> PhysicalDeviceMultiviewProperties
-- | maxMultiviewViewCount is one greater than the maximum view
-- index that can be used in a subpass.
[$sel:maxMultiviewViewCount:PhysicalDeviceMultiviewProperties] :: PhysicalDeviceMultiviewProperties -> Word32
-- | maxMultiviewInstanceIndex is the maximum valid value of
-- instance index allowed to be generated by a drawing command recorded
-- within a subpass of a multiview render pass instance.
[$sel:maxMultiviewInstanceIndex:PhysicalDeviceMultiviewProperties] :: PhysicalDeviceMultiviewProperties -> Word32
-- | VkRenderPassMultiviewCreateInfo - Structure containing multiview info
-- for all subpasses
--
-- Description
--
-- When a subpass uses a non-zero view mask, multiview
-- functionality is considered to be enabled. Multiview is all-or-nothing
-- for a render pass - that is, either all subpasses must have a
-- non-zero view mask (though some subpasses may have only one
-- view) or all must be zero. Multiview causes all drawing and
-- clear commands in the subpass to behave as if they were broadcast to
-- each view, where a view is represented by one layer of the framebuffer
-- attachments. All draws and clears are broadcast to each view
-- index whose bit is set in the view mask. The view index is
-- provided in the ViewIndex shader input variable, and color,
-- depth/stencil, and input attachments all read/write the layer of the
-- framebuffer corresponding to the view index.
--
-- If the view mask is zero for all subpasses, multiview is considered to
-- be disabled and all drawing commands execute normally, without this
-- additional broadcasting.
--
-- Some implementations may not support multiview in conjunction
-- with geometry shaders or tessellation shaders.
--
-- When multiview is enabled, the DEPENDENCY_VIEW_LOCAL_BIT bit in
-- a dependency can be used to express a view-local dependency,
-- meaning that each view in the destination subpass depends on a single
-- view in the source subpass. Unlike pipeline barriers, a subpass
-- dependency can potentially have a different view mask in the
-- source subpass and the destination subpass. If the dependency is
-- view-local, then each view (dstView) in the destination subpass
-- depends on the view dstView + pViewOffsets[dependency] in the
-- source subpass. If there is not such a view in the source subpass,
-- then this dependency does not affect that view in the destination
-- subpass. If the dependency is not view-local, then all views in the
-- destination subpass depend on all views in the source subpass, and the
-- view offset is ignored. A non-zero view offset is not allowed in a
-- self-dependency.
--
-- The elements of pCorrelationMasks are a set of masks of views
-- indicating that views in the same mask may exhibit spatial
-- coherency between the views, making it more efficient to render them
-- concurrently. Correlation masks must not have a functional
-- effect on the results of the multiview rendering.
--
-- When multiview is enabled, at the beginning of each subpass all
-- non-render pass state is undefined. In particular, each time
-- cmdBeginRenderPass or cmdNextSubpass is called the
-- graphics pipeline must be bound, any relevant descriptor sets
-- or vertex/index buffers must be bound, and any relevant dynamic
-- state or push constants must be set before they are used.
--
-- A multiview subpass can declare that its shaders will write
-- per-view attributes for all views in a single invocation, by setting
-- the SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX bit in the
-- subpass description. The only supported per-view attributes are
-- position and viewport mask, and per-view position and viewport masks
-- are written to output array variables decorated with
-- PositionPerViewNV and ViewportMaskPerViewNV,
-- respectively. If VK_NV_viewport_array2 is not supported and
-- enabled, ViewportMaskPerViewNV must not be used.
-- Values written to elements of PositionPerViewNV and
-- ViewportMaskPerViewNV must not depend on the
-- ViewIndex. The shader must also write to an output
-- variable decorated with Position, and the value written to
-- Position must equal the value written to
-- PositionPerViewNV[ViewIndex]. Similarly, if
-- ViewportMaskPerViewNV is written to then the shader
-- must also write to an output variable decorated with
-- ViewportMaskNV, and the value written to
-- ViewportMaskNV must equal the value written to
-- ViewportMaskPerViewNV[ViewIndex]. Implementations
-- will either use values taken from Position and
-- ViewportMaskNV and invoke the shader once for each view, or
-- will use values taken from PositionPerViewNV and
-- ViewportMaskPerViewNV and invoke the shader fewer times. The
-- values written to Position and ViewportMaskNV
-- must not depend on the values written to
-- PositionPerViewNV and ViewportMaskPerViewNV, or vice
-- versa (to allow compilers to eliminate the unused outputs). All
-- attributes that do not have *PerViewNV counterparts
-- must not depend on ViewIndex.
--
-- Per-view attributes are all-or-nothing for a subpass. That is, all
-- pipelines compiled against a subpass that includes the
-- SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX bit must
-- write per-view attributes to the *PerViewNV[] shader outputs,
-- in addition to the non-per-view (e.g. Position) outputs.
-- Pipelines compiled against a subpass that does not include this bit
-- must not include the *PerViewNV[] outputs in their
-- interfaces.
--
-- Valid Usage
--
--
-- - Each view index must not be set in more than one element of
-- pCorrelationMasks
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If subpassCount is not 0, pViewMasks
-- must be a valid pointer to an array of subpassCount
-- uint32_t values
-- - If dependencyCount is not 0,
-- pViewOffsets must be a valid pointer to an array of
-- dependencyCount int32_t values
-- - If correlationMaskCount is not 0,
-- pCorrelationMasks must be a valid pointer to an array
-- of correlationMaskCount uint32_t values
--
--
-- See Also
--
-- StructureType
data RenderPassMultiviewCreateInfo
RenderPassMultiviewCreateInfo :: Vector Word32 -> Vector Int32 -> Vector Word32 -> RenderPassMultiviewCreateInfo
-- | pViewMasks is a pointer to an array of subpassCount
-- view masks, where each mask is a bitfield of view indices describing
-- which views rendering is broadcast to in each subpass, when multiview
-- is enabled. If subpassCount is zero, each view mask is
-- treated as zero.
[$sel:viewMasks:RenderPassMultiviewCreateInfo] :: RenderPassMultiviewCreateInfo -> Vector Word32
-- | pViewOffsets is a pointer to an array of
-- dependencyCount view offsets, one for each dependency. If
-- dependencyCount is zero, each dependency’s view offset is
-- treated as zero. Each view offset controls which views in the source
-- subpass the views in the destination subpass depend on.
[$sel:viewOffsets:RenderPassMultiviewCreateInfo] :: RenderPassMultiviewCreateInfo -> Vector Int32
-- | pCorrelationMasks is a pointer to an array of
-- correlationMaskCount view masks indicating sets of views that
-- may be more efficient to render concurrently.
[$sel:correlationMasks:RenderPassMultiviewCreateInfo] :: RenderPassMultiviewCreateInfo -> Vector Word32
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkDependencyFlagBits - Bitmask specifying how execution and memory
-- dependencies are formed
--
-- See Also
--
-- DependencyFlags
newtype DependencyFlagBits
DependencyFlagBits :: Flags -> DependencyFlagBits
-- | DEPENDENCY_BY_REGION_BIT specifies that dependencies will be
-- framebuffer-local.
pattern DEPENDENCY_BY_REGION_BIT :: DependencyFlagBits
-- | DEPENDENCY_VIEW_LOCAL_BIT specifies that a subpass has more
-- than one view.
pattern DEPENDENCY_VIEW_LOCAL_BIT :: DependencyFlagBits
-- | DEPENDENCY_DEVICE_GROUP_BIT specifies that dependencies are
-- non-device-local dependency.
pattern DEPENDENCY_DEVICE_GROUP_BIT :: DependencyFlagBits
type DependencyFlags = DependencyFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_multiview.RenderPassMultiviewCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_multiview.RenderPassMultiviewCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_multiview.RenderPassMultiviewCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_multiview.RenderPassMultiviewCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_multiview.RenderPassMultiviewCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_multiview.PhysicalDeviceMultiviewFeatures
module Vulkan.Extensions.VK_KHR_multiview
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR :: StructureType
pattern DEPENDENCY_VIEW_LOCAL_BIT_KHR :: DependencyFlagBits
type PhysicalDeviceMultiviewFeaturesKHR = PhysicalDeviceMultiviewFeatures
type PhysicalDeviceMultiviewPropertiesKHR = PhysicalDeviceMultiviewProperties
type RenderPassMultiviewCreateInfoKHR = RenderPassMultiviewCreateInfo
type KHR_MULTIVIEW_SPEC_VERSION = 1
pattern KHR_MULTIVIEW_SPEC_VERSION :: forall a. Integral a => a
type KHR_MULTIVIEW_EXTENSION_NAME = "VK_KHR_multiview"
pattern KHR_MULTIVIEW_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Enums.CullModeFlagBits
-- | VkCullModeFlagBits - Bitmask controlling triangle culling
--
-- Description
--
-- Following culling, fragments are produced for any triangles which have
-- not been discarded.
--
-- See Also
--
-- CullModeFlags
newtype CullModeFlagBits
CullModeFlagBits :: Flags -> CullModeFlagBits
-- | CULL_MODE_NONE specifies that no triangles are discarded
pattern CULL_MODE_NONE :: CullModeFlagBits
-- | CULL_MODE_FRONT_BIT specifies that front-facing triangles are
-- discarded
pattern CULL_MODE_FRONT_BIT :: CullModeFlagBits
-- | CULL_MODE_BACK_BIT specifies that back-facing triangles are
-- discarded
pattern CULL_MODE_BACK_BIT :: CullModeFlagBits
-- | CULL_MODE_FRONT_AND_BACK specifies that all triangles are
-- discarded.
pattern CULL_MODE_FRONT_AND_BACK :: CullModeFlagBits
type CullModeFlags = CullModeFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.CullModeFlagBits.CullModeFlagBits
module Vulkan.Core10.Enums.ComponentSwizzle
-- | VkComponentSwizzle - Specify how a component is swizzled
--
-- Description
--
-- Setting the identity swizzle on a component is equivalent to setting
-- the identity mapping on that component. That is:
--
-- TODO: table
--
-- Component Mappings Equivalent To COMPONENT_SWIZZLE_IDENTITY
--
-- See Also
--
-- ComponentMapping
newtype ComponentSwizzle
ComponentSwizzle :: Int32 -> ComponentSwizzle
-- | COMPONENT_SWIZZLE_IDENTITY specifies that the component is set
-- to the identity swizzle.
pattern COMPONENT_SWIZZLE_IDENTITY :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_ZERO specifies that the component is set to
-- zero.
pattern COMPONENT_SWIZZLE_ZERO :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_ONE specifies that the component is set to
-- either 1 or 1.0, depending on whether the type of the image view
-- format is integer or floating-point respectively, as determined by the
-- Format Definition section for each Format.
pattern COMPONENT_SWIZZLE_ONE :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_R specifies that the component is set to the
-- value of the R component of the image.
pattern COMPONENT_SWIZZLE_R :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_G specifies that the component is set to the
-- value of the G component of the image.
pattern COMPONENT_SWIZZLE_G :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_B specifies that the component is set to the
-- value of the B component of the image.
pattern COMPONENT_SWIZZLE_B :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_A specifies that the component is set to the
-- value of the A component of the image.
pattern COMPONENT_SWIZZLE_A :: ComponentSwizzle
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ComponentSwizzle.ComponentSwizzle
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ComponentSwizzle.ComponentSwizzle
instance GHC.Classes.Ord Vulkan.Core10.Enums.ComponentSwizzle.ComponentSwizzle
instance GHC.Classes.Eq Vulkan.Core10.Enums.ComponentSwizzle.ComponentSwizzle
instance GHC.Show.Show Vulkan.Core10.Enums.ComponentSwizzle.ComponentSwizzle
instance GHC.Read.Read Vulkan.Core10.Enums.ComponentSwizzle.ComponentSwizzle
module Vulkan.Core10.Enums.CompareOp
-- | VkCompareOp - Stencil comparison function
--
-- See Also
--
-- PipelineDepthStencilStateCreateInfo, SamplerCreateInfo,
-- StencilOpState
newtype CompareOp
CompareOp :: Int32 -> CompareOp
-- | COMPARE_OP_NEVER specifies that the test evaluates to false.
pattern COMPARE_OP_NEVER :: CompareOp
-- | COMPARE_OP_LESS specifies that the test evaluates A < B.
pattern COMPARE_OP_LESS :: CompareOp
-- | COMPARE_OP_EQUAL specifies that the test evaluates A = B.
pattern COMPARE_OP_EQUAL :: CompareOp
-- | COMPARE_OP_LESS_OR_EQUAL specifies that the test evaluates A ≤
-- B.
pattern COMPARE_OP_LESS_OR_EQUAL :: CompareOp
-- | COMPARE_OP_GREATER specifies that the test evaluates A > B.
pattern COMPARE_OP_GREATER :: CompareOp
-- | COMPARE_OP_NOT_EQUAL specifies that the test evaluates A ≠ B.
pattern COMPARE_OP_NOT_EQUAL :: CompareOp
-- | COMPARE_OP_GREATER_OR_EQUAL specifies that the test evaluates A
-- ≥ B.
pattern COMPARE_OP_GREATER_OR_EQUAL :: CompareOp
-- | COMPARE_OP_ALWAYS specifies that the test evaluates to true.
pattern COMPARE_OP_ALWAYS :: CompareOp
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CompareOp.CompareOp
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CompareOp.CompareOp
instance GHC.Classes.Ord Vulkan.Core10.Enums.CompareOp.CompareOp
instance GHC.Classes.Eq Vulkan.Core10.Enums.CompareOp.CompareOp
instance GHC.Show.Show Vulkan.Core10.Enums.CompareOp.CompareOp
instance GHC.Read.Read Vulkan.Core10.Enums.CompareOp.CompareOp
module Vulkan.Core10.Enums.CommandPoolResetFlagBits
-- | VkCommandPoolResetFlagBits - Bitmask controlling behavior of a command
-- pool reset
--
-- See Also
--
-- CommandPoolResetFlags
newtype CommandPoolResetFlagBits
CommandPoolResetFlagBits :: Flags -> CommandPoolResetFlagBits
-- | COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT specifies that
-- resetting a command pool recycles all of the resources from the
-- command pool back to the system.
pattern COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT :: CommandPoolResetFlagBits
type CommandPoolResetFlags = CommandPoolResetFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.CommandPoolResetFlagBits.CommandPoolResetFlagBits
module Vulkan.Core10.Enums.CommandPoolCreateFlagBits
-- | VkCommandPoolCreateFlagBits - Bitmask specifying usage behavior for a
-- command pool
--
-- See Also
--
-- CommandPoolCreateFlags
newtype CommandPoolCreateFlagBits
CommandPoolCreateFlagBits :: Flags -> CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_TRANSIENT_BIT specifies that command
-- buffers allocated from the pool will be short-lived, meaning that they
-- will be reset or freed in a relatively short timeframe. This flag
-- may be used by the implementation to control memory allocation
-- behavior within the pool.
pattern COMMAND_POOL_CREATE_TRANSIENT_BIT :: CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT allows any command
-- buffer allocated from a pool to be individually reset to the
-- initial state; either by calling resetCommandBuffer, or
-- via the implicit reset when calling beginCommandBuffer. If this
-- flag is not set on a pool, then resetCommandBuffer must
-- not be called for any command buffer allocated from that pool.
pattern COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT :: CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_PROTECTED_BIT specifies that command
-- buffers allocated from the pool are protected command buffers.
pattern COMMAND_POOL_CREATE_PROTECTED_BIT :: CommandPoolCreateFlagBits
type CommandPoolCreateFlags = CommandPoolCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.CommandPoolCreateFlagBits.CommandPoolCreateFlagBits
module Vulkan.Core10.Enums.CommandBufferUsageFlagBits
-- | VkCommandBufferUsageFlagBits - Bitmask specifying usage behavior for
-- command buffer
--
-- See Also
--
-- CommandBufferUsageFlags
newtype CommandBufferUsageFlagBits
CommandBufferUsageFlagBits :: Flags -> CommandBufferUsageFlagBits
-- | COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT specifies that each
-- recording of the command buffer will only be submitted once, and the
-- command buffer will be reset and recorded again between each
-- submission.
pattern COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT :: CommandBufferUsageFlagBits
-- | COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT specifies that a
-- secondary command buffer is considered to be entirely inside a render
-- pass. If this is a primary command buffer, then this bit is ignored.
pattern COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT :: CommandBufferUsageFlagBits
-- | COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT specifies that a
-- command buffer can be resubmitted to a queue while it is in the
-- /pending state/, and recorded into multiple primary command buffers.
pattern COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT :: CommandBufferUsageFlagBits
type CommandBufferUsageFlags = CommandBufferUsageFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.CommandBufferUsageFlagBits.CommandBufferUsageFlagBits
module Vulkan.Core10.Enums.CommandBufferResetFlagBits
-- | VkCommandBufferResetFlagBits - Bitmask controlling behavior of a
-- command buffer reset
--
-- See Also
--
-- CommandBufferResetFlags
newtype CommandBufferResetFlagBits
CommandBufferResetFlagBits :: Flags -> CommandBufferResetFlagBits
-- | COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT specifies that most
-- or all memory resources currently owned by the command buffer
-- should be returned to the parent command pool. If this flag is
-- not set, then the command buffer may hold onto memory resources
-- and reuse them when recording commands. commandBuffer is
-- moved to the initial state.
pattern COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT :: CommandBufferResetFlagBits
type CommandBufferResetFlags = CommandBufferResetFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.CommandBufferResetFlagBits.CommandBufferResetFlagBits
module Vulkan.Core10.Enums.CommandBufferLevel
-- | VkCommandBufferLevel - Enumerant specifying a command buffer level
--
-- See Also
--
-- CommandBufferAllocateInfo
newtype CommandBufferLevel
CommandBufferLevel :: Int32 -> CommandBufferLevel
-- | COMMAND_BUFFER_LEVEL_PRIMARY specifies a primary command
-- buffer.
pattern COMMAND_BUFFER_LEVEL_PRIMARY :: CommandBufferLevel
-- | COMMAND_BUFFER_LEVEL_SECONDARY specifies a secondary command
-- buffer.
pattern COMMAND_BUFFER_LEVEL_SECONDARY :: CommandBufferLevel
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.CommandBufferLevel.CommandBufferLevel
instance Foreign.Storable.Storable Vulkan.Core10.Enums.CommandBufferLevel.CommandBufferLevel
instance GHC.Classes.Ord Vulkan.Core10.Enums.CommandBufferLevel.CommandBufferLevel
instance GHC.Classes.Eq Vulkan.Core10.Enums.CommandBufferLevel.CommandBufferLevel
instance GHC.Show.Show Vulkan.Core10.Enums.CommandBufferLevel.CommandBufferLevel
instance GHC.Read.Read Vulkan.Core10.Enums.CommandBufferLevel.CommandBufferLevel
module Vulkan.Core10.Enums.ColorComponentFlagBits
-- | VkColorComponentFlagBits - Bitmask controlling which components are
-- written to the framebuffer
--
-- Description
--
-- The color write mask operation is applied regardless of whether
-- blending is enabled.
--
-- See Also
--
-- ColorComponentFlags
newtype ColorComponentFlagBits
ColorComponentFlagBits :: Flags -> ColorComponentFlagBits
-- | COLOR_COMPONENT_R_BIT specifies that the R value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_R_BIT :: ColorComponentFlagBits
-- | COLOR_COMPONENT_G_BIT specifies that the G value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_G_BIT :: ColorComponentFlagBits
-- | COLOR_COMPONENT_B_BIT specifies that the B value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_B_BIT :: ColorComponentFlagBits
-- | COLOR_COMPONENT_A_BIT specifies that the A value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_A_BIT :: ColorComponentFlagBits
type ColorComponentFlags = ColorComponentFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.ColorComponentFlagBits.ColorComponentFlagBits
module Vulkan.Core10.Enums.BufferViewCreateFlags
-- | VkBufferViewCreateFlags - Reserved for future use
--
-- Description
--
-- BufferViewCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- BufferViewCreateInfo
newtype BufferViewCreateFlags
BufferViewCreateFlags :: Flags -> BufferViewCreateFlags
instance Data.Bits.Bits Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
instance Foreign.Storable.Storable Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
instance GHC.Classes.Ord Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
instance GHC.Show.Show Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
instance GHC.Read.Read Vulkan.Core10.Enums.BufferViewCreateFlags.BufferViewCreateFlags
module Vulkan.Core10.Enums.BufferUsageFlagBits
-- | VkBufferUsageFlagBits - Bitmask specifying allowed usage of a buffer
--
-- See Also
--
-- BufferUsageFlags
newtype BufferUsageFlagBits
BufferUsageFlagBits :: Flags -> BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFER_SRC_BIT specifies that the buffer
-- can be used as the source of a transfer command (see the
-- definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
pattern BUFFER_USAGE_TRANSFER_SRC_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFER_DST_BIT specifies that the buffer
-- can be used as the destination of a transfer command.
pattern BUFFER_USAGE_TRANSFER_DST_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT specifies that the buffer
-- can be used to create a BufferView suitable for
-- occupying a DescriptorSet slot of type
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.
pattern BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT specifies that the buffer
-- can be used to create a BufferView suitable for
-- occupying a DescriptorSet slot of type
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.
pattern BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_UNIFORM_BUFFER_BIT specifies that the buffer
-- can be used in a DescriptorBufferInfo suitable for
-- occupying a DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.
pattern BUFFER_USAGE_UNIFORM_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_STORAGE_BUFFER_BIT specifies that the buffer
-- can be used in a DescriptorBufferInfo suitable for
-- occupying a DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.
pattern BUFFER_USAGE_STORAGE_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_INDEX_BUFFER_BIT specifies that the buffer is
-- suitable for passing as the buffer parameter to
-- cmdBindIndexBuffer.
pattern BUFFER_USAGE_INDEX_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_VERTEX_BUFFER_BIT specifies that the buffer is
-- suitable for passing as an element of the pBuffers array to
-- cmdBindVertexBuffers.
pattern BUFFER_USAGE_VERTEX_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_INDIRECT_BUFFER_BIT specifies that the buffer is
-- suitable for passing as the buffer parameter to
-- cmdDrawIndirect, cmdDrawIndexedIndirect,
-- cmdDrawMeshTasksIndirectNV,
-- cmdDrawMeshTasksIndirectCountNV, or cmdDispatchIndirect.
-- It is also suitable for passing as the buffer member of
-- IndirectCommandsStreamNV, or sequencesCountBuffer or
-- sequencesIndexBuffer or preprocessedBuffer member of
-- GeneratedCommandsInfoNV
pattern BUFFER_USAGE_INDIRECT_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_RAY_TRACING_BIT_KHR specifies that the buffer is
-- suitable for use in cmdTraceRaysKHR and
-- cmdBuildAccelerationStructureKHR.
pattern BUFFER_USAGE_RAY_TRACING_BIT_KHR :: BufferUsageFlagBits
-- | BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT specifies that the
-- buffer is suitable for passing as the buffer parameter to
-- cmdBeginConditionalRenderingEXT.
pattern BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
-- specifies that the buffer is suitable for using as a counter buffer
-- with cmdBeginTransformFeedbackEXT and
-- cmdEndTransformFeedbackEXT.
pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT specifies that
-- the buffer is suitable for using for binding as a transform feedback
-- buffer with cmdBindTransformFeedbackBuffersEXT.
pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT specifies that the
-- buffer can be used to retrieve a buffer device address via
-- getBufferDeviceAddress and use that address to access the
-- buffer’s memory from a shader.
pattern BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT :: BufferUsageFlagBits
type BufferUsageFlags = BufferUsageFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.BufferUsageFlagBits.BufferUsageFlagBits
module Vulkan.Core10.Enums.BufferCreateFlagBits
-- | VkBufferCreateFlagBits - Bitmask specifying additional parameters of a
-- buffer
--
-- Description
--
-- See Sparse Resource Features and Physical Device
-- Features for details of the sparse memory features supported on a
-- device.
--
-- See Also
--
-- BufferCreateFlags
newtype BufferCreateFlagBits
BufferCreateFlagBits :: Flags -> BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_BINDING_BIT specifies that the buffer will
-- be backed using sparse memory binding.
pattern BUFFER_CREATE_SPARSE_BINDING_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_RESIDENCY_BIT specifies that the buffer
-- can be partially backed using sparse memory binding. Buffers
-- created with this flag must also be created with the
-- BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_ALIASED_BIT specifies that the buffer will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another buffer (or another portion of
-- the same buffer). Buffers created with this flag must also be
-- created with the BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_ALIASED_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies that
-- the buffer’s address can be saved and reused on a subsequent
-- run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_PROTECTED_BIT specifies that the buffer is a
-- protected buffer.
pattern BUFFER_CREATE_PROTECTED_BIT :: BufferCreateFlagBits
type BufferCreateFlags = BufferCreateFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.BufferCreateFlagBits.BufferCreateFlagBits
module Vulkan.Core10.Enums.BorderColor
-- | VkBorderColor - Specify border color used for texture lookups
--
-- Description
--
-- These colors are described in detail in Texel Replacement.
--
-- See Also
--
-- SamplerCreateInfo
newtype BorderColor
BorderColor :: Int32 -> BorderColor
-- | BORDER_COLOR_FLOAT_TRANSPARENT_BLACK specifies a transparent,
-- floating-point format, black color.
pattern BORDER_COLOR_FLOAT_TRANSPARENT_BLACK :: BorderColor
-- | BORDER_COLOR_INT_TRANSPARENT_BLACK specifies a transparent,
-- integer format, black color.
pattern BORDER_COLOR_INT_TRANSPARENT_BLACK :: BorderColor
-- | BORDER_COLOR_FLOAT_OPAQUE_BLACK specifies an opaque,
-- floating-point format, black color.
pattern BORDER_COLOR_FLOAT_OPAQUE_BLACK :: BorderColor
-- | BORDER_COLOR_INT_OPAQUE_BLACK specifies an opaque, integer
-- format, black color.
pattern BORDER_COLOR_INT_OPAQUE_BLACK :: BorderColor
-- | BORDER_COLOR_FLOAT_OPAQUE_WHITE specifies an opaque,
-- floating-point format, white color.
pattern BORDER_COLOR_FLOAT_OPAQUE_WHITE :: BorderColor
-- | BORDER_COLOR_INT_OPAQUE_WHITE specifies an opaque, integer
-- format, white color.
pattern BORDER_COLOR_INT_OPAQUE_WHITE :: BorderColor
-- | BORDER_COLOR_INT_CUSTOM_EXT indicates that a
-- SamplerCustomBorderColorCreateInfoEXT structure is present in
-- the SamplerCreateInfo::pNext chain which contains the
-- color data in integer format.
pattern BORDER_COLOR_INT_CUSTOM_EXT :: BorderColor
-- | BORDER_COLOR_FLOAT_CUSTOM_EXT indicates that a
-- SamplerCustomBorderColorCreateInfoEXT structure is present in
-- the SamplerCreateInfo::pNext chain which contains the
-- color data in floating-point format.
pattern BORDER_COLOR_FLOAT_CUSTOM_EXT :: BorderColor
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.BorderColor.BorderColor
instance Foreign.Storable.Storable Vulkan.Core10.Enums.BorderColor.BorderColor
instance GHC.Classes.Ord Vulkan.Core10.Enums.BorderColor.BorderColor
instance GHC.Classes.Eq Vulkan.Core10.Enums.BorderColor.BorderColor
instance GHC.Show.Show Vulkan.Core10.Enums.BorderColor.BorderColor
instance GHC.Read.Read Vulkan.Core10.Enums.BorderColor.BorderColor
module Vulkan.Core10.Enums.BlendOp
-- | VkBlendOp - Framebuffer blending operations
--
-- Description
--
-- The semantics of each basic blend operations is described in the table
-- below:
--
-- TODO: table
--
-- Basic Blend Operations
--
-- In this table, the following conventions are used:
--
--
-- - Rs0, Gs0, Bs0 and As0 represent the first source color R, G, B,
-- and A components, respectively.
-- - Rd, Gd, Bd and Ad represent the R, G, B, and A components of the
-- destination color. That is, the color currently in the corresponding
-- color attachment for this fragment/sample.
-- - Sr, Sg, Sb and Sa represent the source blend factor R, G, B, and A
-- components, respectively.
-- - Dr, Dg, Db and Da represent the destination blend factor R, G, B,
-- and A components, respectively.
--
--
-- The blending operation produces a new set of values R, G, B and A,
-- which are written to the framebuffer attachment. If blending is not
-- enabled for this attachment, then R, G, B and A are assigned Rs0, Gs0,
-- Bs0 and As0, respectively.
--
-- If the color attachment is fixed-point, the components of the source
-- and destination values and blend factors are each clamped to [0,1] or
-- [-1,1] respectively for an unsigned normalized or signed normalized
-- color attachment prior to evaluating the blend operations. If the
-- color attachment is floating-point, no clamping occurs.
--
-- See Also
--
-- PipelineColorBlendAttachmentState
newtype BlendOp
BlendOp :: Int32 -> BlendOp
pattern BLEND_OP_ADD :: BlendOp
pattern BLEND_OP_SUBTRACT :: BlendOp
pattern BLEND_OP_REVERSE_SUBTRACT :: BlendOp
pattern BLEND_OP_MIN :: BlendOp
pattern BLEND_OP_MAX :: BlendOp
pattern BLEND_OP_BLUE_EXT :: BlendOp
pattern BLEND_OP_GREEN_EXT :: BlendOp
pattern BLEND_OP_RED_EXT :: BlendOp
pattern BLEND_OP_INVERT_OVG_EXT :: BlendOp
pattern BLEND_OP_CONTRAST_EXT :: BlendOp
pattern BLEND_OP_MINUS_CLAMPED_EXT :: BlendOp
pattern BLEND_OP_MINUS_EXT :: BlendOp
pattern BLEND_OP_PLUS_DARKER_EXT :: BlendOp
pattern BLEND_OP_PLUS_CLAMPED_ALPHA_EXT :: BlendOp
pattern BLEND_OP_PLUS_CLAMPED_EXT :: BlendOp
pattern BLEND_OP_PLUS_EXT :: BlendOp
pattern BLEND_OP_HSL_LUMINOSITY_EXT :: BlendOp
pattern BLEND_OP_HSL_COLOR_EXT :: BlendOp
pattern BLEND_OP_HSL_SATURATION_EXT :: BlendOp
pattern BLEND_OP_HSL_HUE_EXT :: BlendOp
pattern BLEND_OP_HARDMIX_EXT :: BlendOp
pattern BLEND_OP_PINLIGHT_EXT :: BlendOp
pattern BLEND_OP_LINEARLIGHT_EXT :: BlendOp
pattern BLEND_OP_VIVIDLIGHT_EXT :: BlendOp
pattern BLEND_OP_LINEARBURN_EXT :: BlendOp
pattern BLEND_OP_LINEARDODGE_EXT :: BlendOp
pattern BLEND_OP_INVERT_RGB_EXT :: BlendOp
pattern BLEND_OP_INVERT_EXT :: BlendOp
pattern BLEND_OP_EXCLUSION_EXT :: BlendOp
pattern BLEND_OP_DIFFERENCE_EXT :: BlendOp
pattern BLEND_OP_SOFTLIGHT_EXT :: BlendOp
pattern BLEND_OP_HARDLIGHT_EXT :: BlendOp
pattern BLEND_OP_COLORBURN_EXT :: BlendOp
pattern BLEND_OP_COLORDODGE_EXT :: BlendOp
pattern BLEND_OP_LIGHTEN_EXT :: BlendOp
pattern BLEND_OP_DARKEN_EXT :: BlendOp
pattern BLEND_OP_OVERLAY_EXT :: BlendOp
pattern BLEND_OP_SCREEN_EXT :: BlendOp
pattern BLEND_OP_MULTIPLY_EXT :: BlendOp
pattern BLEND_OP_XOR_EXT :: BlendOp
pattern BLEND_OP_DST_ATOP_EXT :: BlendOp
pattern BLEND_OP_SRC_ATOP_EXT :: BlendOp
pattern BLEND_OP_DST_OUT_EXT :: BlendOp
pattern BLEND_OP_SRC_OUT_EXT :: BlendOp
pattern BLEND_OP_DST_IN_EXT :: BlendOp
pattern BLEND_OP_SRC_IN_EXT :: BlendOp
pattern BLEND_OP_DST_OVER_EXT :: BlendOp
pattern BLEND_OP_SRC_OVER_EXT :: BlendOp
pattern BLEND_OP_DST_EXT :: BlendOp
pattern BLEND_OP_SRC_EXT :: BlendOp
pattern BLEND_OP_ZERO_EXT :: BlendOp
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.BlendOp.BlendOp
instance Foreign.Storable.Storable Vulkan.Core10.Enums.BlendOp.BlendOp
instance GHC.Classes.Ord Vulkan.Core10.Enums.BlendOp.BlendOp
instance GHC.Classes.Eq Vulkan.Core10.Enums.BlendOp.BlendOp
instance GHC.Show.Show Vulkan.Core10.Enums.BlendOp.BlendOp
instance GHC.Read.Read Vulkan.Core10.Enums.BlendOp.BlendOp
module Vulkan.Core10.Enums.BlendFactor
-- | VkBlendFactor - Framebuffer blending factors
--
-- Description
--
-- The semantics of each enum value is described in the table below:
--
-- TODO: table
--
-- Blend Factors
--
-- In this table, the following conventions are used:
--
--
-- - Rs0,Gs0,Bs0 and As0 represent the first source color R, G, B, and
-- A components, respectively, for the fragment output location
-- corresponding to the color attachment being blended.
-- - Rs1,Gs1,Bs1 and As1 represent the second source color R, G, B, and
-- A components, respectively, used in dual source blending modes, for
-- the fragment output location corresponding to the color attachment
-- being blended.
-- - Rd,Gd,Bd and Ad represent the R, G, B, and A components of the
-- destination color. That is, the color currently in the corresponding
-- color attachment for this fragment/sample.
-- - Rc,Gc,Bc and Ac represent the blend constant R, G, B, and A
-- components, respectively.
--
--
-- See Also
--
-- PipelineColorBlendAttachmentState
newtype BlendFactor
BlendFactor :: Int32 -> BlendFactor
pattern BLEND_FACTOR_ZERO :: BlendFactor
pattern BLEND_FACTOR_ONE :: BlendFactor
pattern BLEND_FACTOR_SRC_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC_COLOR :: BlendFactor
pattern BLEND_FACTOR_DST_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_DST_COLOR :: BlendFactor
pattern BLEND_FACTOR_SRC_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC_ALPHA :: BlendFactor
pattern BLEND_FACTOR_DST_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_DST_ALPHA :: BlendFactor
pattern BLEND_FACTOR_CONSTANT_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR :: BlendFactor
pattern BLEND_FACTOR_CONSTANT_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA :: BlendFactor
pattern BLEND_FACTOR_SRC_ALPHA_SATURATE :: BlendFactor
pattern BLEND_FACTOR_SRC1_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC1_COLOR :: BlendFactor
pattern BLEND_FACTOR_SRC1_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA :: BlendFactor
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.BlendFactor.BlendFactor
instance Foreign.Storable.Storable Vulkan.Core10.Enums.BlendFactor.BlendFactor
instance GHC.Classes.Ord Vulkan.Core10.Enums.BlendFactor.BlendFactor
instance GHC.Classes.Eq Vulkan.Core10.Enums.BlendFactor.BlendFactor
instance GHC.Show.Show Vulkan.Core10.Enums.BlendFactor.BlendFactor
instance GHC.Read.Read Vulkan.Core10.Enums.BlendFactor.BlendFactor
module Vulkan.Core10.Enums.AttachmentStoreOp
-- | VkAttachmentStoreOp - Specify how contents of an attachment are
-- treated at the end of a subpass
--
-- Description
--
-- Note
--
-- ATTACHMENT_STORE_OP_DONT_CARE can cause contents
-- generated during previous render passes to be discarded before
-- reaching memory, even if no write to the attachment occurs during the
-- current render pass.
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2
newtype AttachmentStoreOp
AttachmentStoreOp :: Int32 -> AttachmentStoreOp
-- | ATTACHMENT_STORE_OP_STORE specifies the contents generated
-- during the render pass and within the render area are written to
-- memory. For attachments with a depth/stencil format, this uses the
-- access type ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For
-- attachments with a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_STORE_OP_STORE :: AttachmentStoreOp
-- | ATTACHMENT_STORE_OP_DONT_CARE specifies the contents within the
-- render area are not needed after rendering, and may be
-- discarded; the contents of the attachment will be undefined inside the
-- render area. For attachments with a depth/stencil format, this uses
-- the access type ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For
-- attachments with a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_STORE_OP_DONT_CARE :: AttachmentStoreOp
-- | ATTACHMENT_STORE_OP_NONE_QCOM specifies that the contents
-- within the render area were not written during rendering, and
-- may not be written to memory. If the attachment was written to
-- during the renderpass, the contents of the attachment will be
-- undefined inside the render area.
pattern ATTACHMENT_STORE_OP_NONE_QCOM :: AttachmentStoreOp
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.AttachmentStoreOp.AttachmentStoreOp
instance Foreign.Storable.Storable Vulkan.Core10.Enums.AttachmentStoreOp.AttachmentStoreOp
instance GHC.Classes.Ord Vulkan.Core10.Enums.AttachmentStoreOp.AttachmentStoreOp
instance GHC.Classes.Eq Vulkan.Core10.Enums.AttachmentStoreOp.AttachmentStoreOp
instance GHC.Show.Show Vulkan.Core10.Enums.AttachmentStoreOp.AttachmentStoreOp
instance GHC.Read.Read Vulkan.Core10.Enums.AttachmentStoreOp.AttachmentStoreOp
module Vulkan.Core10.Enums.AttachmentLoadOp
-- | VkAttachmentLoadOp - Specify how contents of an attachment are treated
-- at the beginning of a subpass
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2
newtype AttachmentLoadOp
AttachmentLoadOp :: Int32 -> AttachmentLoadOp
-- | ATTACHMENT_LOAD_OP_LOAD specifies that the previous contents of
-- the image within the render area will be preserved. For attachments
-- with a depth/stencil format, this uses the access type
-- ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT. For attachments with
-- a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_READ_BIT.
pattern ATTACHMENT_LOAD_OP_LOAD :: AttachmentLoadOp
-- | ATTACHMENT_LOAD_OP_CLEAR specifies that the contents within the
-- render area will be cleared to a uniform value, which is specified
-- when a render pass instance is begun. For attachments with a
-- depth/stencil format, this uses the access type
-- ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For attachments with
-- a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_LOAD_OP_CLEAR :: AttachmentLoadOp
-- | ATTACHMENT_LOAD_OP_DONT_CARE specifies that the previous
-- contents within the area need not be preserved; the contents of the
-- attachment will be undefined inside the render area. For attachments
-- with a depth/stencil format, this uses the access type
-- ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For attachments with
-- a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_LOAD_OP_DONT_CARE :: AttachmentLoadOp
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.AttachmentLoadOp.AttachmentLoadOp
instance Foreign.Storable.Storable Vulkan.Core10.Enums.AttachmentLoadOp.AttachmentLoadOp
instance GHC.Classes.Ord Vulkan.Core10.Enums.AttachmentLoadOp.AttachmentLoadOp
instance GHC.Classes.Eq Vulkan.Core10.Enums.AttachmentLoadOp.AttachmentLoadOp
instance GHC.Show.Show Vulkan.Core10.Enums.AttachmentLoadOp.AttachmentLoadOp
instance GHC.Read.Read Vulkan.Core10.Enums.AttachmentLoadOp.AttachmentLoadOp
module Vulkan.Core10.Enums.AttachmentDescriptionFlagBits
-- | VkAttachmentDescriptionFlagBits - Bitmask specifying additional
-- properties of an attachment
--
-- See Also
--
-- AttachmentDescriptionFlags
newtype AttachmentDescriptionFlagBits
AttachmentDescriptionFlagBits :: Flags -> AttachmentDescriptionFlagBits
-- | ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT specifies that the
-- attachment aliases the same device memory as other attachments.
pattern ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT :: AttachmentDescriptionFlagBits
type AttachmentDescriptionFlags = AttachmentDescriptionFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.AttachmentDescriptionFlagBits.AttachmentDescriptionFlagBits
module Vulkan.Core10.Enums.AccessFlagBits
-- | VkAccessFlagBits - Bitmask specifying memory access types that will
-- participate in a memory dependency
--
-- Description
--
-- Certain access types are only performed by a subset of pipeline
-- stages. Any synchronization command that takes both stage masks and
-- access masks uses both to define the access scopes - only the
-- specified access types performed by the specified stages are included
-- in the access scope. An application must not specify an access
-- flag in a synchronization command if it does not include a pipeline
-- stage in the corresponding stage mask that is able to perform accesses
-- of that type. The following table lists, for each access flag, which
-- pipeline stages can perform that type of access.
--
-- TODO: table
--
-- Supported access types
--
-- See Also
--
-- AccessFlags
newtype AccessFlagBits
AccessFlagBits :: Flags -> AccessFlagBits
-- | ACCESS_INDIRECT_COMMAND_READ_BIT specifies read access to
-- indirect command data read as part of an indirect drawing or dispatch
-- command.
pattern ACCESS_INDIRECT_COMMAND_READ_BIT :: AccessFlagBits
-- | ACCESS_INDEX_READ_BIT specifies read access to an index buffer
-- as part of an indexed drawing command, bound by
-- cmdBindIndexBuffer.
pattern ACCESS_INDEX_READ_BIT :: AccessFlagBits
-- | ACCESS_VERTEX_ATTRIBUTE_READ_BIT specifies read access to a
-- vertex buffer as part of a drawing command, bound by
-- cmdBindVertexBuffers.
pattern ACCESS_VERTEX_ATTRIBUTE_READ_BIT :: AccessFlagBits
-- | ACCESS_UNIFORM_READ_BIT specifies read access to a uniform
-- buffer.
pattern ACCESS_UNIFORM_READ_BIT :: AccessFlagBits
-- | ACCESS_INPUT_ATTACHMENT_READ_BIT specifies read access to an
-- input attachment within a render pass during fragment shading.
pattern ACCESS_INPUT_ATTACHMENT_READ_BIT :: AccessFlagBits
-- | ACCESS_SHADER_READ_BIT specifies read access to a storage
-- buffer, physical storage buffer, uniform texel
-- buffer, storage texel buffer, sampled image, or
-- storage image.
pattern ACCESS_SHADER_READ_BIT :: AccessFlagBits
-- | ACCESS_SHADER_WRITE_BIT specifies write access to a storage
-- buffer, physical storage buffer, storage texel
-- buffer, or storage image.
pattern ACCESS_SHADER_WRITE_BIT :: AccessFlagBits
-- | ACCESS_COLOR_ATTACHMENT_READ_BIT specifies read access to a
-- color attachment, such as via blending, logic
-- operations, or via certain subpass load operations. It does
-- not include advanced blend operations.
pattern ACCESS_COLOR_ATTACHMENT_READ_BIT :: AccessFlagBits
-- | ACCESS_COLOR_ATTACHMENT_WRITE_BIT specifies write access to a
-- color, resolve, or depth/stencil resolve attachment during a
-- render pass or via certain subpass load and store
-- operations.
pattern ACCESS_COLOR_ATTACHMENT_WRITE_BIT :: AccessFlagBits
-- | ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT specifies read access
-- to a depth/stencil attachment, via depth or stencil
-- operations or via certain subpass load operations.
pattern ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT :: AccessFlagBits
-- | ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT specifies write
-- access to a depth/stencil attachment, via depth or stencil
-- operations or via certain subpass load and store
-- operations.
pattern ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT :: AccessFlagBits
-- | ACCESS_TRANSFER_READ_BIT specifies read access to an image or
-- buffer in a copy operation.
pattern ACCESS_TRANSFER_READ_BIT :: AccessFlagBits
-- | ACCESS_TRANSFER_WRITE_BIT specifies write access to an image or
-- buffer in a clear or copy operation.
pattern ACCESS_TRANSFER_WRITE_BIT :: AccessFlagBits
-- | 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.
pattern ACCESS_HOST_READ_BIT :: AccessFlagBits
-- | 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.
pattern ACCESS_HOST_WRITE_BIT :: AccessFlagBits
-- | 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 access flags that are valid where it is
-- used.
pattern ACCESS_MEMORY_READ_BIT :: AccessFlagBits
-- | ACCESS_MEMORY_WRITE_BIT specifies all write accesses. It is
-- always valid in any access mask, and is treated as equivalent to
-- setting all WRITE access flags that are valid where it is
-- used.
pattern ACCESS_MEMORY_WRITE_BIT :: AccessFlagBits
-- | ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV specifies writes to the
-- Buffer preprocess outputs in
-- cmdPreprocessGeneratedCommandsNV.
pattern ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV :: AccessFlagBits
-- | ACCESS_COMMAND_PREPROCESS_READ_BIT_NV specifies reads from
-- Buffer inputs to cmdPreprocessGeneratedCommandsNV.
pattern ACCESS_COMMAND_PREPROCESS_READ_BIT_NV :: AccessFlagBits
-- | ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT specifies read access
-- to a fragment density map attachment during dynamic fragment
-- density map operations
pattern ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT :: AccessFlagBits
-- | ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV specifies read access to
-- a shading rate image as part of a drawing command, as bound by
-- cmdBindShadingRateImageNV.
pattern ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV :: AccessFlagBits
-- | ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR specifies write
-- access to an acceleration structure as part of a build command.
pattern ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR :: AccessFlagBits
-- | ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR specifies read
-- access to an acceleration structure as part of a trace or build
-- command.
pattern ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR :: AccessFlagBits
-- | ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT is similar to
-- ACCESS_COLOR_ATTACHMENT_READ_BIT, but also includes advanced
-- blend operations.
pattern ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT :: AccessFlagBits
-- | ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT specifies read access
-- to a predicate as part of conditional rendering.
pattern ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT :: AccessFlagBits
-- | ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT specifies write
-- access to a transform feedback counter buffer which is written when
-- cmdEndTransformFeedbackEXT executes.
pattern ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT :: AccessFlagBits
-- | ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT specifies read
-- access to a transform feedback counter buffer which is read when
-- cmdBeginTransformFeedbackEXT executes.
pattern ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT :: AccessFlagBits
-- | ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT specifies write access
-- to a transform feedback buffer made when transform feedback is active.
pattern ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT :: AccessFlagBits
type AccessFlags = AccessFlagBits
instance Data.Bits.Bits Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
instance Vulkan.Zero.Zero Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
instance Foreign.Storable.Storable Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
instance GHC.Classes.Ord Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
instance GHC.Show.Show Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
instance GHC.Read.Read Vulkan.Core10.Enums.AccessFlagBits.AccessFlagBits
module Vulkan.Core10.Enums
module Vulkan.Core10.AllocationCallbacks
-- | VkAllocationCallbacks - Structure containing callback function
-- pointers for memory allocation
--
-- Valid Usage
--
--
--
--
-- - pfnReallocation must be a valid pointer to a valid
-- user-defined PFN_vkReallocationFunction
-- - pfnFree must be a valid pointer to a valid
-- user-defined PFN_vkFreeFunction
-- - If either of pfnInternalAllocation or
-- pfnInternalFree is not NULL, both must be
-- valid callbacks
--
--
-- See Also
--
-- PFN_vkAllocationFunction, PFN_vkFreeFunction,
-- PFN_vkInternalAllocationNotification,
-- PFN_vkInternalFreeNotification,
-- PFN_vkReallocationFunction, allocateMemory,
-- createAccelerationStructureKHR,
-- createAccelerationStructureNV, createAndroidSurfaceKHR,
-- createBuffer, createBufferView,
-- createCommandPool, createComputePipelines,
-- createDebugReportCallbackEXT,
-- createDebugUtilsMessengerEXT,
-- createDeferredOperationKHR, createDescriptorPool,
-- createDescriptorSetLayout,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR, createDevice,
-- createDisplayModeKHR, createDisplayPlaneSurfaceKHR,
-- createEvent, createFence, createFramebuffer,
-- createGraphicsPipelines, createHeadlessSurfaceEXT,
-- createIOSSurfaceMVK, createImage,
-- createImagePipeSurfaceFUCHSIA, createImageView,
-- createIndirectCommandsLayoutNV, createInstance,
-- createMacOSSurfaceMVK, createMetalSurfaceEXT,
-- createPipelineCache, createPipelineLayout,
-- createPrivateDataSlotEXT, createQueryPool,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, createRenderPass,
-- createRenderPass2, createRenderPass2KHR,
-- createSampler, createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR, createSemaphore,
-- createShaderModule, createSharedSwapchainsKHR,
-- createStreamDescriptorSurfaceGGP, createSwapchainKHR,
-- createValidationCacheEXT, createViSurfaceNN,
-- createWaylandSurfaceKHR, createWin32SurfaceKHR,
-- createXcbSurfaceKHR, createXlibSurfaceKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV, destroyBuffer,
-- destroyBufferView, destroyCommandPool,
-- destroyDebugReportCallbackEXT,
-- destroyDebugUtilsMessengerEXT,
-- destroyDeferredOperationKHR, destroyDescriptorPool,
-- destroyDescriptorSetLayout,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR, destroyDevice,
-- destroyEvent, destroyFence, destroyFramebuffer,
-- destroyImage, destroyImageView,
-- destroyIndirectCommandsLayoutNV, destroyInstance,
-- destroyPipeline, destroyPipelineCache,
-- destroyPipelineLayout, destroyPrivateDataSlotEXT,
-- destroyQueryPool, destroyRenderPass,
-- destroySampler, destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR, destroySemaphore,
-- destroyShaderModule, destroySurfaceKHR,
-- destroySwapchainKHR, destroyValidationCacheEXT,
-- freeMemory, registerDeviceEventEXT,
-- registerDisplayEventEXT
data AllocationCallbacks
AllocationCallbacks :: Ptr () -> PFN_vkAllocationFunction -> PFN_vkReallocationFunction -> PFN_vkFreeFunction -> PFN_vkInternalAllocationNotification -> PFN_vkInternalFreeNotification -> AllocationCallbacks
-- | pUserData is a value to be interpreted by the implementation
-- of the callbacks. When any of the callbacks in
-- AllocationCallbacks are called, the Vulkan implementation will
-- pass this value as the first parameter to the callback. This value
-- can vary each time an allocator is passed into a command, even
-- when the same object takes an allocator in multiple commands.
[$sel:userData:AllocationCallbacks] :: AllocationCallbacks -> Ptr ()
-- | pfnAllocation is a PFN_vkAllocationFunction pointer to
-- an application-defined memory allocation function.
[$sel:pfnAllocation:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkAllocationFunction
-- | pfnReallocation is a PFN_vkReallocationFunction
-- pointer to an application-defined memory reallocation function.
[$sel:pfnReallocation:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkReallocationFunction
-- | pfnFree is a PFN_vkFreeFunction pointer to an
-- application-defined memory free function.
[$sel:pfnFree:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkFreeFunction
-- | pfnInternalAllocation is a
-- PFN_vkInternalAllocationNotification pointer to an
-- application-defined function that is called by the implementation when
-- the implementation makes internal allocations.
[$sel:pfnInternalAllocation:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkInternalAllocationNotification
-- | pfnInternalFree is a PFN_vkInternalFreeNotification
-- pointer to an application-defined function that is called by the
-- implementation when the implementation frees internal allocations.
[$sel:pfnInternalFree:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkInternalFreeNotification
instance GHC.Generics.Generic Vulkan.Core10.AllocationCallbacks.AllocationCallbacks
instance GHC.Show.Show Vulkan.Core10.AllocationCallbacks.AllocationCallbacks
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.AllocationCallbacks.AllocationCallbacks
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.AllocationCallbacks.AllocationCallbacks
instance Foreign.Storable.Storable Vulkan.Core10.AllocationCallbacks.AllocationCallbacks
instance Vulkan.Zero.Zero Vulkan.Core10.AllocationCallbacks.AllocationCallbacks
module Vulkan.Core10.APIConstants
pattern LOD_CLAMP_NONE :: Float
type LUID_SIZE_KHR = LUID_SIZE
type QUEUE_FAMILY_EXTERNAL_KHR = QUEUE_FAMILY_EXTERNAL
type MAX_DEVICE_GROUP_SIZE_KHR = MAX_DEVICE_GROUP_SIZE
type MAX_DRIVER_NAME_SIZE_KHR = MAX_DRIVER_NAME_SIZE
type MAX_DRIVER_INFO_SIZE_KHR = MAX_DRIVER_INFO_SIZE
type SHADER_UNUSED_NV = SHADER_UNUSED_KHR
type MAX_PHYSICAL_DEVICE_NAME_SIZE = 256
pattern MAX_PHYSICAL_DEVICE_NAME_SIZE :: forall a. Integral a => a
type UUID_SIZE = 16
pattern UUID_SIZE :: forall a. Integral a => a
type LUID_SIZE = 8
pattern LUID_SIZE :: forall a. Integral a => a
type MAX_EXTENSION_NAME_SIZE = 256
pattern MAX_EXTENSION_NAME_SIZE :: forall a. Integral a => a
type MAX_DESCRIPTION_SIZE = 256
pattern MAX_DESCRIPTION_SIZE :: forall a. Integral a => a
type MAX_MEMORY_TYPES = 32
pattern MAX_MEMORY_TYPES :: forall a. Integral a => a
type MAX_MEMORY_HEAPS = 16
pattern MAX_MEMORY_HEAPS :: forall a. Integral a => a
type REMAINING_MIP_LEVELS = 4294967295
pattern REMAINING_MIP_LEVELS :: Word32
type REMAINING_ARRAY_LAYERS = 4294967295
pattern REMAINING_ARRAY_LAYERS :: Word32
type WHOLE_SIZE = 18446744073709551615
pattern WHOLE_SIZE :: Word64
type ATTACHMENT_UNUSED = 4294967295
pattern ATTACHMENT_UNUSED :: Word32
type QUEUE_FAMILY_IGNORED = 4294967295
pattern QUEUE_FAMILY_IGNORED :: Word32
type QUEUE_FAMILY_EXTERNAL = 4294967294
pattern QUEUE_FAMILY_EXTERNAL :: Word32
type QUEUE_FAMILY_FOREIGN_EXT = 4294967293
pattern QUEUE_FAMILY_FOREIGN_EXT :: Word32
type SUBPASS_EXTERNAL = 4294967295
pattern SUBPASS_EXTERNAL :: Word32
type MAX_DEVICE_GROUP_SIZE = 32
pattern MAX_DEVICE_GROUP_SIZE :: forall a. Integral a => a
type MAX_DRIVER_NAME_SIZE = 256
pattern MAX_DRIVER_NAME_SIZE :: forall a. Integral a => a
type MAX_DRIVER_INFO_SIZE = 256
pattern MAX_DRIVER_INFO_SIZE :: forall a. Integral a => a
type SHADER_UNUSED_KHR = 4294967295
pattern SHADER_UNUSED_KHR :: Word32
-- | VK_NULL_HANDLE - Reserved non-valid object handle
--
-- See Also
--
-- No cross-references are available
pattern NULL_HANDLE :: IsHandle a => a
-- | A class for things which can be created with NULL_HANDLE.
class (Eq a, Zero a) => IsHandle a
class HasObjectType a
objectTypeAndHandle :: HasObjectType a => a -> (ObjectType, Word64)
-- | VkBool32 - Vulkan boolean type
--
-- Description
--
-- TRUE represents a boolean True (integer 1) value, and
-- FALSE a boolean False (integer 0) value.
--
-- All values returned from a Vulkan implementation in a Bool32
-- will be either TRUE or FALSE.
--
-- Applications must not pass any other values than TRUE or
-- FALSE into a Vulkan implementation where a Bool32 is
-- expected.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DescriptorSetLayoutSupport,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPresentInfoKHR, DisplayPropertiesKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- IndirectCommandsLayoutTokenNV,
-- MemoryDedicatedRequirements,
-- PerformanceOverrideInfoINTEL, PerformanceValueDataINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceFeatures,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceLimits,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceSparseProperties,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendAttachmentState,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutableStatisticValueKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- ProtectedSubmitInfo, SamplerCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceProtectedCapabilitiesKHR, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- cmdBuildAccelerationStructureNV,
-- cmdExecuteGeneratedCommandsNV,
-- getPhysicalDeviceSurfaceSupportKHR, setLocalDimmingAMD,
-- waitForFences
newtype Bool32
Bool32 :: Int32 -> Bool32
pattern FALSE :: Bool32
pattern TRUE :: Bool32
-- | VkPipelineCacheHeaderVersion - Encode pipeline cache version
--
-- See Also
--
-- createPipelineCache, getPipelineCacheData
newtype PipelineCacheHeaderVersion
PipelineCacheHeaderVersion :: Int32 -> PipelineCacheHeaderVersion
-- | PIPELINE_CACHE_HEADER_VERSION_ONE specifies version one of the
-- pipeline cache.
pattern PIPELINE_CACHE_HEADER_VERSION_ONE :: PipelineCacheHeaderVersion
module Vulkan.Extensions.VK_EXT_queue_family_foreign
type EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION = 1
pattern EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION :: forall a. Integral a => a
type EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME = "VK_EXT_queue_family_foreign"
pattern EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type QUEUE_FAMILY_FOREIGN_EXT = 4294967293
pattern QUEUE_FAMILY_FOREIGN_EXT :: Word32
module Vulkan.Extensions.VK_EXT_memory_budget
-- | VkPhysicalDeviceMemoryBudgetPropertiesEXT - Structure specifying
-- physical device memory budget and usage
--
-- Description
--
-- The values returned in this structure are not invariant. The
-- heapBudget and heapUsage values must be zero
-- for array elements greater than or equal to
-- PhysicalDeviceMemoryProperties::memoryHeapCount. The
-- heapBudget value must be non-zero for array elements
-- less than
-- PhysicalDeviceMemoryProperties::memoryHeapCount. The
-- heapBudget value must be less than or equal to
-- MemoryHeap::size for each heap.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceSize, StructureType
data PhysicalDeviceMemoryBudgetPropertiesEXT
PhysicalDeviceMemoryBudgetPropertiesEXT :: Vector DeviceSize -> Vector DeviceSize -> PhysicalDeviceMemoryBudgetPropertiesEXT
-- | heapBudget is an array of MAX_MEMORY_HEAPS
-- DeviceSize values in which memory budgets are returned, with
-- one element for each memory heap. A heap’s budget is a rough estimate
-- of how much memory the process can allocate from that heap
-- before allocations may fail or cause performance degradation.
-- The budget includes any currently allocated device memory.
[$sel:heapBudget:PhysicalDeviceMemoryBudgetPropertiesEXT] :: PhysicalDeviceMemoryBudgetPropertiesEXT -> Vector DeviceSize
-- | heapUsage is an array of MAX_MEMORY_HEAPS
-- DeviceSize values in which memory usages are returned, with one
-- element for each memory heap. A heap’s usage is an estimate of how
-- much memory the process is currently using in that heap.
[$sel:heapUsage:PhysicalDeviceMemoryBudgetPropertiesEXT] :: PhysicalDeviceMemoryBudgetPropertiesEXT -> Vector DeviceSize
type EXT_MEMORY_BUDGET_SPEC_VERSION = 1
pattern EXT_MEMORY_BUDGET_SPEC_VERSION :: forall a. Integral a => a
type EXT_MEMORY_BUDGET_EXTENSION_NAME = "VK_EXT_memory_budget"
pattern EXT_MEMORY_BUDGET_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_memory_budget.PhysicalDeviceMemoryBudgetPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_memory_budget.PhysicalDeviceMemoryBudgetPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_memory_budget.PhysicalDeviceMemoryBudgetPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_memory_budget.PhysicalDeviceMemoryBudgetPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_memory_budget.PhysicalDeviceMemoryBudgetPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_memory_budget.PhysicalDeviceMemoryBudgetPropertiesEXT
module Vulkan.Core12.Promoted_From_VK_KHR_driver_properties
-- | VkConformanceVersion - Structure containing the conformance test suite
-- version the implementation is compliant with
--
-- See Also
--
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceVulkan12Properties
data ConformanceVersion
ConformanceVersion :: Word8 -> Word8 -> Word8 -> Word8 -> ConformanceVersion
-- | major is the major version number of the conformance test
-- suite.
[$sel:major:ConformanceVersion] :: ConformanceVersion -> Word8
-- | minor is the minor version number of the conformance test
-- suite.
[$sel:minor:ConformanceVersion] :: ConformanceVersion -> Word8
-- | subminor is the subminor version number of the conformance
-- test suite.
[$sel:subminor:ConformanceVersion] :: ConformanceVersion -> Word8
-- | patch is the patch version number of the conformance test
-- suite.
[$sel:patch:ConformanceVersion] :: ConformanceVersion -> Word8
-- | VkPhysicalDeviceDriverProperties - Structure containing driver
-- identification information
--
-- Description
--
-- driverID must be immutable for a given driver across
-- instances, processes, driver versions, and system reboots.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ConformanceVersion, DriverId, StructureType
data PhysicalDeviceDriverProperties
PhysicalDeviceDriverProperties :: DriverId -> ByteString -> ByteString -> ConformanceVersion -> PhysicalDeviceDriverProperties
-- | driverID is a unique identifier for the driver of the
-- physical device.
[$sel:driverID:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> DriverId
-- | driverName is an array of MAX_DRIVER_NAME_SIZE
-- char containing a null-terminated UTF-8 string which is the
-- name of the driver.
[$sel:driverName:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> ByteString
-- | driverInfo is an array of MAX_DRIVER_INFO_SIZE
-- char containing a null-terminated UTF-8 string with
-- additional information about the driver.
[$sel:driverInfo:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> ByteString
-- | conformanceVersion is the version of the Vulkan conformance
-- test this driver is conformant against (see
-- ConformanceVersion).
[$sel:conformanceVersion:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> ConformanceVersion
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkDriverId - Khronos driver IDs
--
-- Description
--
-- Note
--
-- Khronos driver IDs may be allocated by vendors at any time. There may
-- be multiple driver IDs for the same vendor, representing different
-- drivers (for e.g. different platforms, proprietary or open source,
-- etc.). Only the latest canonical versions of this Specification, of
-- the corresponding vk.xml API Registry, and of the
-- corresponding vulkan_core.h header file must contain
-- all reserved Khronos driver IDs.
--
-- Only driver IDs registered with Khronos are given symbolic names.
-- There may be unregistered driver IDs returned.
--
-- See Also
--
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceVulkan12Properties
newtype DriverId
DriverId :: Int32 -> DriverId
pattern DRIVER_ID_AMD_PROPRIETARY :: DriverId
pattern DRIVER_ID_AMD_OPEN_SOURCE :: DriverId
pattern DRIVER_ID_MESA_RADV :: DriverId
pattern DRIVER_ID_NVIDIA_PROPRIETARY :: DriverId
pattern DRIVER_ID_INTEL_PROPRIETARY_WINDOWS :: DriverId
pattern DRIVER_ID_INTEL_OPEN_SOURCE_MESA :: DriverId
pattern DRIVER_ID_IMAGINATION_PROPRIETARY :: DriverId
pattern DRIVER_ID_QUALCOMM_PROPRIETARY :: DriverId
pattern DRIVER_ID_ARM_PROPRIETARY :: DriverId
pattern DRIVER_ID_GOOGLE_SWIFTSHADER :: DriverId
pattern DRIVER_ID_GGP_PROPRIETARY :: DriverId
pattern DRIVER_ID_BROADCOM_PROPRIETARY :: DriverId
pattern DRIVER_ID_MESA_LLVMPIPE :: DriverId
type MAX_DRIVER_NAME_SIZE = 256
pattern MAX_DRIVER_NAME_SIZE :: forall a. Integral a => a
type MAX_DRIVER_INFO_SIZE = 256
pattern MAX_DRIVER_INFO_SIZE :: forall a. Integral a => a
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.PhysicalDeviceDriverProperties
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.PhysicalDeviceDriverProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.PhysicalDeviceDriverProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.PhysicalDeviceDriverProperties
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.PhysicalDeviceDriverProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_driver_properties.ConformanceVersion
module Vulkan.Extensions.VK_KHR_driver_properties
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR :: StructureType
pattern DRIVER_ID_AMD_PROPRIETARY_KHR :: DriverId
pattern DRIVER_ID_AMD_OPEN_SOURCE_KHR :: DriverId
pattern DRIVER_ID_MESA_RADV_KHR :: DriverId
pattern DRIVER_ID_NVIDIA_PROPRIETARY_KHR :: DriverId
pattern DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR :: DriverId
pattern DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR :: DriverId
pattern DRIVER_ID_IMAGINATION_PROPRIETARY_KHR :: DriverId
pattern DRIVER_ID_QUALCOMM_PROPRIETARY_KHR :: DriverId
pattern DRIVER_ID_ARM_PROPRIETARY_KHR :: DriverId
pattern DRIVER_ID_GOOGLE_SWIFTSHADER_KHR :: DriverId
pattern DRIVER_ID_GGP_PROPRIETARY_KHR :: DriverId
pattern DRIVER_ID_BROADCOM_PROPRIETARY_KHR :: DriverId
pattern MAX_DRIVER_NAME_SIZE_KHR :: Integral a => a
pattern MAX_DRIVER_INFO_SIZE_KHR :: Integral a => a
type DriverIdKHR = DriverId
type ConformanceVersionKHR = ConformanceVersion
type PhysicalDeviceDriverPropertiesKHR = PhysicalDeviceDriverProperties
type KHR_DRIVER_PROPERTIES_SPEC_VERSION = 1
pattern KHR_DRIVER_PROPERTIES_SPEC_VERSION :: forall a. Integral a => a
type KHR_DRIVER_PROPERTIES_EXTENSION_NAME = "VK_KHR_driver_properties"
pattern KHR_DRIVER_PROPERTIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Promoted_From_VK_KHR_external_memory
-- | VkExternalMemoryImageCreateInfo - Specify that an image may be backed
-- by external memory
--
-- Members
--
-- Note
--
-- A ExternalMemoryImageCreateInfo structure must be included in
-- the creation parameters for an image that will be bound to memory that
-- is either exported or imported.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryHandleTypeFlags, StructureType
data ExternalMemoryImageCreateInfo
ExternalMemoryImageCreateInfo :: ExternalMemoryHandleTypeFlags -> ExternalMemoryImageCreateInfo
-- | handleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBits specifying one or more
-- external memory handle types.
--
-- handleTypes must be a valid combination of
-- ExternalMemoryHandleTypeFlagBits values
--
-- handleTypes must not be 0
[$sel:handleTypes:ExternalMemoryImageCreateInfo] :: ExternalMemoryImageCreateInfo -> ExternalMemoryHandleTypeFlags
-- | VkExternalMemoryBufferCreateInfo - Specify that a buffer may be backed
-- by external memory
--
-- Members
--
-- Note
--
-- A ExternalMemoryBufferCreateInfo structure must be included in
-- the creation parameters for a buffer that will be bound to memory that
-- is either exported or imported.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryHandleTypeFlags, StructureType
data ExternalMemoryBufferCreateInfo
ExternalMemoryBufferCreateInfo :: ExternalMemoryHandleTypeFlags -> ExternalMemoryBufferCreateInfo
-- | handleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBits specifying one or more
-- external memory handle types.
--
-- handleTypes must be a valid combination of
-- ExternalMemoryHandleTypeFlagBits values
[$sel:handleTypes:ExternalMemoryBufferCreateInfo] :: ExternalMemoryBufferCreateInfo -> ExternalMemoryHandleTypeFlags
-- | VkExportMemoryAllocateInfo - Specify exportable handle types for a
-- device memory object
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalMemoryHandleTypeFlags, StructureType
data ExportMemoryAllocateInfo
ExportMemoryAllocateInfo :: ExternalMemoryHandleTypeFlags -> ExportMemoryAllocateInfo
-- | handleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBits specifying one or more memory
-- handle types the application can export from the resulting
-- allocation. The application can request multiple handle types
-- for the same allocation.
[$sel:handleTypes:ExportMemoryAllocateInfo] :: ExportMemoryAllocateInfo -> ExternalMemoryHandleTypeFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkResult - Vulkan command return codes
--
-- Description
--
-- If a command returns a runtime error, unless otherwise specified any
-- output parameters will have undefined contents, except that if the
-- output parameter is a structure with sType and pNext
-- fields, those fields will be unmodified. Any structures chained from
-- pNext will also have undefined contents, except that
-- sType and pNext will be unmodified.
--
-- Out of memory errors do not damage any currently existing Vulkan
-- objects. Objects that have already been successfully created
-- can still be used by the application.
--
-- ERROR_UNKNOWN will be returned by an implementation when an
-- unexpected error occurs that cannot be attributed to valid behavior of
-- the application and implementation. Under these conditions, it
-- may be returned from any command returning a Result.
--
-- Note
--
-- ERROR_UNKNOWN is not expected to ever be returned if the
-- application behavior is valid, and if the implementation is bug-free.
-- If ERROR_UNKNOWN is received, the application should be checked
-- against the latest validation layers to verify correct behavior as
-- much as possible. If no issues are identified it could be an
-- implementation issue, and the implementor should be contacted for
-- support.
--
-- Performance-critical commands generally do not have return codes. If a
-- runtime error occurs in such commands, the implementation will defer
-- reporting the error until a specified point. For commands that record
-- into command buffers (vkCmd*) runtime errors are reported by
-- endCommandBuffer.
--
-- See Also
--
-- PresentInfoKHR
newtype Result
Result :: Int32 -> Result
-- | SUCCESS Command successfully completed
pattern SUCCESS :: Result
-- | NOT_READY A fence or query has not yet completed
pattern NOT_READY :: Result
-- | TIMEOUT A wait operation has not completed in the specified
-- time
pattern TIMEOUT :: Result
-- | EVENT_SET An event is signaled
pattern EVENT_SET :: Result
-- | EVENT_RESET An event is unsignaled
pattern EVENT_RESET :: Result
-- | INCOMPLETE A return array was too small for the result
pattern INCOMPLETE :: Result
-- | ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
pattern ERROR_OUT_OF_HOST_MEMORY :: Result
-- | ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has
-- failed.
pattern ERROR_OUT_OF_DEVICE_MEMORY :: Result
-- | ERROR_INITIALIZATION_FAILED Initialization of an object could
-- not be completed for implementation-specific reasons.
pattern ERROR_INITIALIZATION_FAILED :: Result
-- | ERROR_DEVICE_LOST The logical or physical device has been lost.
-- See Lost Device
pattern ERROR_DEVICE_LOST :: Result
-- | ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
pattern ERROR_MEMORY_MAP_FAILED :: Result
-- | ERROR_LAYER_NOT_PRESENT A requested layer is not present or
-- could not be loaded.
pattern ERROR_LAYER_NOT_PRESENT :: Result
-- | ERROR_EXTENSION_NOT_PRESENT A requested extension is not
-- supported.
pattern ERROR_EXTENSION_NOT_PRESENT :: Result
-- | ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
pattern ERROR_FEATURE_NOT_PRESENT :: Result
-- | ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is
-- not supported by the driver or is otherwise incompatible for
-- implementation-specific reasons.
pattern ERROR_INCOMPATIBLE_DRIVER :: Result
-- | ERROR_TOO_MANY_OBJECTS Too many objects of the type have
-- already been created.
pattern ERROR_TOO_MANY_OBJECTS :: Result
-- | ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported
-- on this device.
pattern ERROR_FORMAT_NOT_SUPPORTED :: Result
-- | ERROR_FRAGMENTED_POOL A pool allocation has failed due to
-- fragmentation of the pool’s memory. This must only be returned
-- if no attempt to allocate host or device memory was made to
-- accommodate the new allocation. This should be returned in
-- preference to ERROR_OUT_OF_POOL_MEMORY, but only if the
-- implementation is certain that the pool allocation failure was due to
-- fragmentation.
pattern ERROR_FRAGMENTED_POOL :: Result
-- | ERROR_UNKNOWN An unknown error has occurred; either the
-- application has provided invalid input, or an implementation failure
-- has occurred.
pattern ERROR_UNKNOWN :: Result
-- | PIPELINE_COMPILE_REQUIRED_EXT A requested pipeline creation
-- would have required compilation, but the application requested
-- compilation to not be performed.
pattern PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | OPERATION_NOT_DEFERRED_KHR A deferred operation was requested
-- and no operations were deferred.
pattern OPERATION_NOT_DEFERRED_KHR :: Result
-- | OPERATION_DEFERRED_KHR A deferred operation was requested and
-- at least some of the work was deferred.
pattern OPERATION_DEFERRED_KHR :: Result
-- | THREAD_DONE_KHR A deferred operation is not complete but there
-- is no work remaining to assign to additional threads.
pattern THREAD_DONE_KHR :: Result
-- | THREAD_IDLE_KHR A deferred operation is not complete but there
-- is currently no work for this thread to do at the time of this call.
pattern THREAD_IDLE_KHR :: Result
-- | ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a
-- swapchain created with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it
-- did not have exlusive full-screen access. This may occur due to
-- implementation-dependent reasons, outside of the application’s
-- control.
pattern ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: Result
pattern ERROR_NOT_PERMITTED_EXT :: Result
pattern ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: Result
pattern ERROR_INCOMPATIBLE_VERSION_KHR :: Result
-- | ERROR_INVALID_SHADER_NV One or more shaders failed to compile
-- or link. More details are reported back to the application via
-- VK_EXT_debug_report if enabled.
pattern ERROR_INVALID_SHADER_NV :: Result
pattern ERROR_VALIDATION_FAILED_EXT :: Result
-- | ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain
-- does not use the same presentable image layout, or is incompatible in
-- a way that prevents sharing an image.
pattern ERROR_INCOMPATIBLE_DISPLAY_KHR :: Result
-- | ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that
-- it is no longer compatible with the swapchain, and further
-- presentation requests using the swapchain will fail. Applications
-- must query the new surface properties and recreate their
-- swapchain if they wish to continue presenting to the surface.
pattern ERROR_OUT_OF_DATE_KHR :: Result
-- | SUBOPTIMAL_KHR A swapchain no longer matches the surface
-- properties exactly, but can still be used to present to the
-- surface successfully.
pattern SUBOPTIMAL_KHR :: Result
-- | ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already
-- in use by Vulkan or another API in a manner which prevents it from
-- being used again.
pattern ERROR_NATIVE_WINDOW_IN_USE_KHR :: Result
-- | ERROR_SURFACE_LOST_KHR A surface is no longer available.
pattern ERROR_SURFACE_LOST_KHR :: Result
-- | ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or
-- memory allocation failed because the requested address is not
-- available. A shader group handle assignment failed because the
-- requested shader group handle information is no longer valid.
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: Result
-- | ERROR_FRAGMENTATION A descriptor pool creation has failed due
-- to fragmentation.
pattern ERROR_FRAGMENTATION :: Result
-- | ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid
-- handle of the specified type.
pattern ERROR_INVALID_EXTERNAL_HANDLE :: Result
-- | ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed.
-- This must only be returned if no attempt to allocate host or
-- device memory was made to accommodate the new allocation. If the
-- failure was definitely due to fragmentation of the pool,
-- ERROR_FRAGMENTED_POOL should be returned instead.
pattern ERROR_OUT_OF_POOL_MEMORY :: Result
type QUEUE_FAMILY_EXTERNAL = 4294967294
pattern QUEUE_FAMILY_EXTERNAL :: Word32
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExportMemoryAllocateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryBufferCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory.ExternalMemoryImageCreateInfo
module Vulkan.Extensions.VK_KHR_external_memory
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR :: StructureType
pattern ERROR_INVALID_EXTERNAL_HANDLE_KHR :: Result
pattern QUEUE_FAMILY_EXTERNAL_KHR :: Word32
type ExternalMemoryImageCreateInfoKHR = ExternalMemoryImageCreateInfo
type ExternalMemoryBufferCreateInfoKHR = ExternalMemoryBufferCreateInfo
type ExportMemoryAllocateInfoKHR = ExportMemoryAllocateInfo
type KHR_EXTERNAL_MEMORY_SPEC_VERSION = 1
pattern KHR_EXTERNAL_MEMORY_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_MEMORY_EXTENSION_NAME = "VK_KHR_external_memory"
pattern KHR_EXTERNAL_MEMORY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.CStruct.Extends
-- | VkBaseOutStructure - Base structure for a read-only pointer chain
--
-- Description
--
-- BaseOutStructure can be used to facilitate iterating through a
-- structure pointer chain that returns data back to the application.
--
-- See Also
--
-- BaseOutStructure, StructureType
data BaseOutStructure
BaseOutStructure :: StructureType -> Ptr BaseOutStructure -> BaseOutStructure
-- | sType is the structure type of the structure being iterated
-- through.
[$sel:sType:BaseOutStructure] :: BaseOutStructure -> StructureType
-- | pNext is NULL or a pointer to the next structure in
-- a structure chain.
[$sel:next:BaseOutStructure] :: BaseOutStructure -> Ptr BaseOutStructure
-- | VkBaseInStructure - Base structure for a read-only pointer chain
--
-- Description
--
-- BaseInStructure can be used to facilitate iterating through a
-- read-only structure pointer chain.
--
-- See Also
--
-- BaseInStructure, StructureType
data BaseInStructure
BaseInStructure :: StructureType -> Ptr BaseInStructure -> BaseInStructure
-- | sType is the structure type of the structure being iterated
-- through.
[$sel:sType:BaseInStructure] :: BaseInStructure -> StructureType
-- | pNext is NULL or a pointer to the next structure in
-- a structure chain.
[$sel:next:BaseInStructure] :: BaseInStructure -> Ptr BaseInStructure
type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint
class PeekChain es
peekChain :: PeekChain es => Ptr (Chain es) -> IO (Chain es)
class PokeChain es
withChain :: PokeChain es => Chain es -> (Ptr (Chain es) -> IO a) -> IO a
withZeroChain :: PokeChain es => (Ptr (Chain es) -> IO a) -> IO a
type family Chain (xs :: [a]) = (r :: a) | r -> xs
type family Extendss (p :: [Type] -> Type) (xs :: [Type]) :: Constraint
data SomeStruct (a :: [Type] -> Type)
[SomeStruct] :: forall a es. (Extendss a es, PokeChain es, Show (Chain es)) => a es -> SomeStruct a
-- | Add an extension to the beginning of the struct chain
--
-- This can be used to optionally extend structs based on some condition
-- (for example, an extension or layer being available)
extendSomeStruct :: (Extensible a, Extends a e, ToCStruct e, Show e) => e -> SomeStruct a -> SomeStruct a
-- | Consume a SomeStruct value
withSomeStruct :: forall a b. SomeStruct a -> (forall es. (Extendss a es, PokeChain es, Show (Chain es)) => a es -> b) -> b
-- | Write the C representation of some extended a and use the
-- pointer, the pointer must not be returned from the continuation.
withSomeCStruct :: forall a b. (forall es. (Extendss a es, PokeChain es) => ToCStruct (a es)) => SomeStruct a -> (forall es. (Extendss a es, PokeChain es) => Ptr (a es) -> IO b) -> IO b
-- | Given a pointer to a struct with an unknown chain, peek the struct and
-- its chain.
peekSomeCStruct :: forall a. (Extensible a, forall es. (Extendss a es, PeekChain es) => FromCStruct (a es)) => Ptr (SomeStruct a) -> IO (SomeStruct a)
-- | Given some memory for the head of the chain, allocate and poke the
-- tail and run an action.
pokeSomeCStruct :: (forall es. (Extendss a es, PokeChain es) => ToCStruct (a es)) => Ptr (SomeStruct a) -> SomeStruct a -> IO b -> IO b
-- | Forget which extensions a pointed-to struct has by casting the pointer
forgetExtensions :: Ptr (a es) -> Ptr (SomeStruct a)
class Extensible (a :: [Type] -> Type)
extensibleType :: Extensible a => StructureType
getNext :: Extensible a => a es -> Chain es
setNext :: Extensible a => a ds -> Chain es -> a es
extends :: forall e b proxy. (Extensible a, Typeable e) => proxy e -> (Extends a e => b) -> Maybe b
-- | A pattern synonym to separate the head of a struct chain from the
-- tail, use in conjunction with :& to extract several
-- members.
--
--
-- Head{..} ::& () <- returningNoTail a b c
-- -- Equivalent to
-- Head{..} <- returningNoTail @'[] a b c
--
--
--
-- Head{..} ::& Foo{..} :& Bar{..} :& () <- returningWithTail a b c
--
--
--
-- myFun (Head{..} :&& Foo{..} :& ())
--
pattern (::&) :: Extensible a => a es' -> Chain es -> a es
infix 6 ::&
-- | View the head and tail of a Chain, see ::&
--
-- Equivalent to (,)
pattern (:&) :: e -> Chain es -> Chain (e : es)
infixr 7 :&
instance GHC.Classes.Eq Vulkan.CStruct.Extends.BaseInStructure
instance GHC.Classes.Eq Vulkan.CStruct.Extends.BaseOutStructure
instance GHC.Generics.Generic Vulkan.CStruct.Extends.BaseOutStructure
instance GHC.Show.Show Vulkan.CStruct.Extends.BaseOutStructure
instance GHC.Generics.Generic Vulkan.CStruct.Extends.BaseInStructure
instance GHC.Show.Show Vulkan.CStruct.Extends.BaseInStructure
instance (forall (es :: [*]). GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (a es)) => GHC.Show.Show (Vulkan.CStruct.Extends.SomeStruct a)
instance Vulkan.CStruct.Extends.PeekChain '[]
instance (Vulkan.CStruct.FromCStruct e, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.Extends.PeekChain (e : es)
instance Vulkan.Zero.Zero (a '[]) => Vulkan.Zero.Zero (Vulkan.CStruct.Extends.SomeStruct a)
instance Vulkan.CStruct.Extends.PokeChain '[]
instance (Vulkan.CStruct.ToCStruct e, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.Extends.PokeChain (e : es)
instance Vulkan.CStruct.ToCStruct Vulkan.CStruct.Extends.BaseInStructure
instance Vulkan.CStruct.FromCStruct Vulkan.CStruct.Extends.BaseInStructure
instance Foreign.Storable.Storable Vulkan.CStruct.Extends.BaseInStructure
instance Vulkan.Zero.Zero Vulkan.CStruct.Extends.BaseInStructure
instance Vulkan.CStruct.ToCStruct Vulkan.CStruct.Extends.BaseOutStructure
instance Vulkan.CStruct.FromCStruct Vulkan.CStruct.Extends.BaseOutStructure
instance Foreign.Storable.Storable Vulkan.CStruct.Extends.BaseOutStructure
instance Vulkan.Zero.Zero Vulkan.CStruct.Extends.BaseOutStructure
module Vulkan.Dynamic
data InstanceCmds
InstanceCmds :: Ptr Instance_T -> FunPtr (Ptr Instance_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Instance_T -> ("pPhysicalDeviceCount" ::: Ptr Word32) -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T)) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction) -> FunPtr (Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr FormatProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pCreateInfo" ::: Ptr (SomeStruct DeviceCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDevice" ::: Ptr (Ptr Device_T)) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr LayerProperties) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pLayerName" ::: Ptr CChar) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr ExtensionProperties) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ("samples" ::: SampleCountFlagBits) -> ImageUsageFlags -> ImageTiling -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties) -> IO ()) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPropertiesKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("planeIndex" ::: Word32) -> ("pDisplayCount" ::: Ptr Word32) -> ("pDisplays" ::: Ptr DisplayKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModePropertiesKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMode" ::: Ptr DisplayModeKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> DisplayModeKHR -> ("planeIndex" ::: Word32) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> SurfaceKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> SurfaceKHR -> ("pSupported" ::: Ptr Bool32) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Wl_display -> IO Bool32) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> IO Bool32) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Xcb_connection_t -> ("visual_id" ::: Xcb_visualid_t) -> IO Bool32) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCallback" ::: Ptr DebugReportCallbackEXT) -> IO Result) -> FunPtr (Ptr Instance_T -> DebugReportCallbackEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Instance_T -> DebugReportFlagsEXT -> DebugReportObjectTypeEXT -> ("object" ::: Word64) -> ("location" ::: CSize) -> ("messageCode" ::: Int32) -> ("pLayerPrefix" ::: Ptr CChar) -> ("pMessage" ::: Ptr CChar) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV) -> ("pExternalImageFormatProperties" ::: Ptr ExternalImageFormatPropertiesNV) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr (SomeStruct PhysicalDeviceFeatures2)) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr (SomeStruct PhysicalDeviceProperties2)) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr (SomeStruct FormatProperties2)) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pImageFormatInfo" ::: Ptr (SomeStruct PhysicalDeviceImageFormatInfo2)) -> ("pImageFormatProperties" ::: Ptr (SomeStruct ImageFormatProperties2)) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr (SomeStruct QueueFamilyProperties2)) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr (SomeStruct PhysicalDeviceMemoryProperties2)) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties2) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo) -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pExternalSemaphoreInfo" ::: Ptr (SomeStruct PhysicalDeviceExternalSemaphoreInfo)) -> ("pExternalSemaphoreProperties" ::: Ptr ExternalSemaphoreProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo) -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> RROutput -> ("pDisplay" ::: Ptr DisplayKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pPhysicalDeviceGroupCount" ::: Ptr Word32) -> ("pPhysicalDeviceGroupProperties" ::: Ptr PhysicalDeviceGroupProperties) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pRectCount" ::: Ptr Word32) -> ("pRects" ::: Ptr Rect2D) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("samples" ::: SampleCountFlagBits) -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pSurfaceCapabilities" ::: Ptr (SomeStruct SurfaceCapabilities2KHR)) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayProperties2KHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModeProperties2KHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pTimeDomainCount" ::: Ptr Word32) -> ("pTimeDomains" ::: Ptr TimeDomainEXT) -> IO Result) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT) -> IO Result) -> FunPtr (Ptr Instance_T -> DebugUtilsMessengerEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Instance_T -> DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> IO ()) -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("pCounterCount" ::: Ptr Word32) -> ("pCounters" ::: Ptr PerformanceCounterKHR) -> ("pCounterDescriptions" ::: Ptr PerformanceCounterDescriptionKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pPerformanceQueryCreateInfo" ::: Ptr QueryPoolPerformanceCreateInfoKHR) -> ("pNumPasses" ::: Ptr Word32) -> IO ()) -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pCombinationCount" ::: Ptr Word32) -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV) -> IO Result) -> FunPtr (Ptr PhysicalDevice_T -> ("pToolCount" ::: Ptr Word32) -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT) -> IO Result) -> InstanceCmds
[$sel:instanceCmdsHandle:InstanceCmds] :: InstanceCmds -> Ptr Instance_T
[$sel:pVkDestroyInstance:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkEnumeratePhysicalDevices:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pPhysicalDeviceCount" ::: Ptr Word32) -> ("pPhysicalDevices" ::: Ptr (Ptr PhysicalDevice_T)) -> IO Result)
[$sel:pVkGetInstanceProcAddr:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
[$sel:pVkGetPhysicalDeviceProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr PhysicalDeviceProperties) -> IO ())
[$sel:pVkGetPhysicalDeviceQueueFamilyProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr QueueFamilyProperties) -> IO ())
[$sel:pVkGetPhysicalDeviceMemoryProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr PhysicalDeviceMemoryProperties) -> IO ())
[$sel:pVkGetPhysicalDeviceFeatures:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr PhysicalDeviceFeatures) -> IO ())
[$sel:pVkGetPhysicalDeviceFormatProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr FormatProperties) -> IO ())
[$sel:pVkGetPhysicalDeviceImageFormatProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("pImageFormatProperties" ::: Ptr ImageFormatProperties) -> IO Result)
[$sel:pVkCreateDevice:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pCreateInfo" ::: Ptr (SomeStruct DeviceCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDevice" ::: Ptr (Ptr Device_T)) -> IO Result)
[$sel:pVkEnumerateDeviceLayerProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr LayerProperties) -> IO Result)
[$sel:pVkEnumerateDeviceExtensionProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pLayerName" ::: Ptr CChar) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr ExtensionProperties) -> IO Result)
[$sel:pVkGetPhysicalDeviceSparseImageFormatProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ("samples" ::: SampleCountFlagBits) -> ImageUsageFlags -> ImageTiling -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties) -> IO ())
[$sel:pVkCreateAndroidSurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr AndroidSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceDisplayPropertiesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPropertiesKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceDisplayPlanePropertiesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlanePropertiesKHR) -> IO Result)
[$sel:pVkGetDisplayPlaneSupportedDisplaysKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("planeIndex" ::: Word32) -> ("pDisplayCount" ::: Ptr Word32) -> ("pDisplays" ::: Ptr DisplayKHR) -> IO Result)
[$sel:pVkGetDisplayModePropertiesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModePropertiesKHR) -> IO Result)
[$sel:pVkCreateDisplayModeKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pCreateInfo" ::: Ptr DisplayModeCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMode" ::: Ptr DisplayModeKHR) -> IO Result)
[$sel:pVkGetDisplayPlaneCapabilitiesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> DisplayModeKHR -> ("planeIndex" ::: Word32) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilitiesKHR) -> IO Result)
[$sel:pVkCreateDisplayPlaneSurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DisplaySurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkDestroySurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> SurfaceKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetPhysicalDeviceSurfaceSupportKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> SurfaceKHR -> ("pSupported" ::: Ptr Bool32) -> IO Result)
[$sel:pVkGetPhysicalDeviceSurfaceCapabilitiesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilitiesKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceSurfaceFormatsKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormatKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceSurfacePresentModesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result)
[$sel:pVkCreateViSurfaceNN:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr ViSurfaceCreateInfoNN) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkCreateWaylandSurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr WaylandSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceWaylandPresentationSupportKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Wl_display -> IO Bool32)
[$sel:pVkCreateWin32SurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr Win32SurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceWin32PresentationSupportKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> IO Bool32)
[$sel:pVkCreateXlibSurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr XlibSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceXlibPresentationSupportKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("dpy" ::: Ptr Display) -> VisualID -> IO Bool32)
[$sel:pVkCreateXcbSurfaceKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr XcbSurfaceCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceXcbPresentationSupportKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> Ptr Xcb_connection_t -> ("visual_id" ::: Xcb_visualid_t) -> IO Bool32)
[$sel:pVkCreateImagePipeSurfaceFUCHSIA:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr ImagePipeSurfaceCreateInfoFUCHSIA) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkCreateStreamDescriptorSurfaceGGP:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr StreamDescriptorSurfaceCreateInfoGGP) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkCreateDebugReportCallbackEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugReportCallbackCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCallback" ::: Ptr DebugReportCallbackEXT) -> IO Result)
[$sel:pVkDestroyDebugReportCallbackEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> DebugReportCallbackEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkDebugReportMessageEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> DebugReportFlagsEXT -> DebugReportObjectTypeEXT -> ("object" ::: Word64) -> ("location" ::: CSize) -> ("messageCode" ::: Int32) -> ("pLayerPrefix" ::: Ptr CChar) -> ("pMessage" ::: Ptr CChar) -> IO ())
[$sel:pVkGetPhysicalDeviceExternalImageFormatPropertiesNV:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV) -> ("pExternalImageFormatProperties" ::: Ptr ExternalImageFormatPropertiesNV) -> IO Result)
[$sel:pVkGetPhysicalDeviceFeatures2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pFeatures" ::: Ptr (SomeStruct PhysicalDeviceFeatures2)) -> IO ())
[$sel:pVkGetPhysicalDeviceProperties2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pProperties" ::: Ptr (SomeStruct PhysicalDeviceProperties2)) -> IO ())
[$sel:pVkGetPhysicalDeviceFormatProperties2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> Format -> ("pFormatProperties" ::: Ptr (SomeStruct FormatProperties2)) -> IO ())
[$sel:pVkGetPhysicalDeviceImageFormatProperties2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pImageFormatInfo" ::: Ptr (SomeStruct PhysicalDeviceImageFormatInfo2)) -> ("pImageFormatProperties" ::: Ptr (SomeStruct ImageFormatProperties2)) -> IO Result)
[$sel:pVkGetPhysicalDeviceQueueFamilyProperties2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pQueueFamilyPropertyCount" ::: Ptr Word32) -> ("pQueueFamilyProperties" ::: Ptr (SomeStruct QueueFamilyProperties2)) -> IO ())
[$sel:pVkGetPhysicalDeviceMemoryProperties2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pMemoryProperties" ::: Ptr (SomeStruct PhysicalDeviceMemoryProperties2)) -> IO ())
[$sel:pVkGetPhysicalDeviceSparseImageFormatProperties2:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pFormatInfo" ::: Ptr PhysicalDeviceSparseImageFormatInfo2) -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr SparseImageFormatProperties2) -> IO ())
[$sel:pVkGetPhysicalDeviceExternalBufferProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pExternalBufferInfo" ::: Ptr PhysicalDeviceExternalBufferInfo) -> ("pExternalBufferProperties" ::: Ptr ExternalBufferProperties) -> IO ())
[$sel:pVkGetPhysicalDeviceExternalSemaphoreProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pExternalSemaphoreInfo" ::: Ptr (SomeStruct PhysicalDeviceExternalSemaphoreInfo)) -> ("pExternalSemaphoreProperties" ::: Ptr ExternalSemaphoreProperties) -> IO ())
[$sel:pVkGetPhysicalDeviceExternalFenceProperties:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pExternalFenceInfo" ::: Ptr PhysicalDeviceExternalFenceInfo) -> ("pExternalFenceProperties" ::: Ptr ExternalFenceProperties) -> IO ())
[$sel:pVkReleaseDisplayEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> IO Result)
[$sel:pVkAcquireXlibDisplayEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> DisplayKHR -> IO Result)
[$sel:pVkGetRandROutputDisplayEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("dpy" ::: Ptr Display) -> RROutput -> ("pDisplay" ::: Ptr DisplayKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceSurfaceCapabilities2EXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pSurfaceCapabilities" ::: Ptr SurfaceCapabilities2EXT) -> IO Result)
[$sel:pVkEnumeratePhysicalDeviceGroups:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pPhysicalDeviceGroupCount" ::: Ptr Word32) -> ("pPhysicalDeviceGroupProperties" ::: Ptr PhysicalDeviceGroupProperties) -> IO Result)
[$sel:pVkGetPhysicalDevicePresentRectanglesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> SurfaceKHR -> ("pRectCount" ::: Ptr Word32) -> ("pRects" ::: Ptr Rect2D) -> IO Result)
[$sel:pVkCreateIOSSurfaceMVK:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr IOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkCreateMacOSSurfaceMVK:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr MacOSSurfaceCreateInfoMVK) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkCreateMetalSurfaceEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr MetalSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceMultisamplePropertiesEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("samples" ::: SampleCountFlagBits) -> ("pMultisampleProperties" ::: Ptr MultisamplePropertiesEXT) -> IO ())
[$sel:pVkGetPhysicalDeviceSurfaceCapabilities2KHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pSurfaceCapabilities" ::: Ptr (SomeStruct SurfaceCapabilities2KHR)) -> IO Result)
[$sel:pVkGetPhysicalDeviceSurfaceFormats2KHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pSurfaceFormatCount" ::: Ptr Word32) -> ("pSurfaceFormats" ::: Ptr SurfaceFormat2KHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceDisplayProperties2KHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayProperties2KHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceDisplayPlaneProperties2KHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayPlaneProperties2KHR) -> IO Result)
[$sel:pVkGetDisplayModeProperties2KHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> DisplayKHR -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr DisplayModeProperties2KHR) -> IO Result)
[$sel:pVkGetDisplayPlaneCapabilities2KHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pDisplayPlaneInfo" ::: Ptr DisplayPlaneInfo2KHR) -> ("pCapabilities" ::: Ptr DisplayPlaneCapabilities2KHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceCalibrateableTimeDomainsEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pTimeDomainCount" ::: Ptr Word32) -> ("pTimeDomains" ::: Ptr TimeDomainEXT) -> IO Result)
[$sel:pVkCreateDebugUtilsMessengerEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr DebugUtilsMessengerCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMessenger" ::: Ptr DebugUtilsMessengerEXT) -> IO Result)
[$sel:pVkDestroyDebugUtilsMessengerEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> DebugUtilsMessengerEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkSubmitDebugUtilsMessageEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> IO ())
[$sel:pVkGetPhysicalDeviceCooperativeMatrixPropertiesNV:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPropertyCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr CooperativeMatrixPropertiesNV) -> IO Result)
[$sel:pVkGetPhysicalDeviceSurfacePresentModes2EXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pPresentModeCount" ::: Ptr Word32) -> ("pPresentModes" ::: Ptr PresentModeKHR) -> IO Result)
[$sel:pVkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("queueFamilyIndex" ::: Word32) -> ("pCounterCount" ::: Ptr Word32) -> ("pCounters" ::: Ptr PerformanceCounterKHR) -> ("pCounterDescriptions" ::: Ptr PerformanceCounterDescriptionKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pPerformanceQueryCreateInfo" ::: Ptr QueryPoolPerformanceCreateInfoKHR) -> ("pNumPasses" ::: Ptr Word32) -> IO ())
[$sel:pVkCreateHeadlessSurfaceEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr Instance_T -> ("pCreateInfo" ::: Ptr HeadlessSurfaceCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSurface" ::: Ptr SurfaceKHR) -> IO Result)
[$sel:pVkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pCombinationCount" ::: Ptr Word32) -> ("pCombinations" ::: Ptr FramebufferMixedSamplesCombinationNV) -> IO Result)
[$sel:pVkGetPhysicalDeviceToolPropertiesEXT:InstanceCmds] :: InstanceCmds -> FunPtr (Ptr PhysicalDevice_T -> ("pToolCount" ::: Ptr Word32) -> ("pToolProperties" ::: Ptr PhysicalDeviceToolPropertiesEXT) -> IO Result)
-- | A version of getInstanceProcAddr which can be called with a
-- null pointer for the instance.
getInstanceProcAddr' :: Ptr Instance_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction
initInstanceCmds :: Ptr Instance_T -> IO InstanceCmds
data DeviceCmds
DeviceCmds :: Ptr Device_T -> FunPtr (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction) -> FunPtr (Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("queueFamilyIndex" ::: Word32) -> ("queueIndex" ::: Word32) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ()) -> FunPtr (Ptr Queue_T -> ("submitCount" ::: Word32) -> ("pSubmits" ::: Ptr (SomeStruct SubmitInfo)) -> Fence -> IO Result) -> FunPtr (Ptr Queue_T -> IO Result) -> FunPtr (Ptr Device_T -> IO Result) -> FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr (SomeStruct MemoryAllocateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMemory" ::: Ptr DeviceMemory) -> IO Result) -> FunPtr (Ptr Device_T -> DeviceMemory -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> DeviceMemory -> ("offset" ::: DeviceSize) -> DeviceSize -> MemoryMapFlags -> ("ppData" ::: Ptr (Ptr ())) -> IO Result) -> FunPtr (Ptr Device_T -> DeviceMemory -> IO ()) -> FunPtr (Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result) -> FunPtr (Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result) -> FunPtr (Ptr Device_T -> DeviceMemory -> ("pCommittedMemoryInBytes" ::: Ptr DeviceSize) -> IO ()) -> FunPtr (Ptr Device_T -> Buffer -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ()) -> FunPtr (Ptr Device_T -> Buffer -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result) -> FunPtr (Ptr Device_T -> Image -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ()) -> FunPtr (Ptr Device_T -> Image -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result) -> FunPtr (Ptr Device_T -> Image -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements) -> IO ()) -> FunPtr (Ptr Queue_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfo" ::: Ptr (SomeStruct BindSparseInfo)) -> Fence -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct FenceCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result) -> FunPtr (Ptr Device_T -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> IO Result) -> FunPtr (Ptr Device_T -> Fence -> IO Result) -> FunPtr (Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> ("waitAll" ::: Bool32) -> ("timeout" ::: Word64) -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SemaphoreCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSemaphore" ::: Ptr Semaphore) -> IO Result) -> FunPtr (Ptr Device_T -> Semaphore -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr EventCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pEvent" ::: Ptr Event) -> IO Result) -> FunPtr (Ptr Device_T -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> Event -> IO Result) -> FunPtr (Ptr Device_T -> Event -> IO Result) -> FunPtr (Ptr Device_T -> Event -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct QueryPoolCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pQueryPool" ::: Ptr QueryPool) -> IO Result) -> FunPtr (Ptr Device_T -> QueryPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO Result) -> FunPtr (Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct BufferCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pBuffer" ::: Ptr Buffer) -> IO Result) -> FunPtr (Ptr Device_T -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr BufferView) -> IO Result) -> FunPtr (Ptr Device_T -> BufferView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct ImageCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pImage" ::: Ptr Image) -> IO Result) -> FunPtr (Ptr Device_T -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> Image -> ("pSubresource" ::: Ptr ImageSubresource) -> ("pLayout" ::: Ptr SubresourceLayout) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct ImageViewCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr ImageView) -> IO Result) -> FunPtr (Ptr Device_T -> ImageView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct ShaderModuleCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pShaderModule" ::: Ptr ShaderModule) -> IO Result) -> FunPtr (Ptr Device_T -> ShaderModule -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineCache" ::: Ptr PipelineCache) -> IO Result) -> FunPtr (Ptr Device_T -> PipelineCache -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> PipelineCache -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result) -> FunPtr (Ptr Device_T -> ("dstCache" ::: PipelineCache) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr PipelineCache) -> IO Result) -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct GraphicsPipelineCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct ComputePipelineCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) -> FunPtr (Ptr Device_T -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineLayout" ::: Ptr PipelineLayout) -> IO Result) -> FunPtr (Ptr Device_T -> PipelineLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SamplerCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSampler" ::: Ptr Sampler) -> IO Result) -> FunPtr (Ptr Device_T -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct DescriptorSetLayoutCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSetLayout" ::: Ptr DescriptorSetLayout) -> IO Result) -> FunPtr (Ptr Device_T -> DescriptorSetLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct DescriptorPoolCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorPool" ::: Ptr DescriptorPool) -> IO Result) -> FunPtr (Ptr Device_T -> DescriptorPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result) -> FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr (SomeStruct DescriptorSetAllocateInfo)) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result) -> FunPtr (Ptr Device_T -> DescriptorPool -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result) -> FunPtr (Ptr Device_T -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (SomeStruct WriteDescriptorSet)) -> ("descriptorCopyCount" ::: Word32) -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct FramebufferCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFramebuffer" ::: Ptr Framebuffer) -> IO Result) -> FunPtr (Ptr Device_T -> Framebuffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct RenderPassCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result) -> FunPtr (Ptr Device_T -> RenderPass -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCommandPool" ::: Ptr CommandPool) -> IO Result) -> FunPtr (Ptr Device_T -> CommandPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result) -> FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO Result) -> FunPtr (Ptr Device_T -> CommandPool -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pBeginInfo" ::: Ptr (SomeStruct CommandBufferBeginInfo)) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewports" ::: Ptr Viewport) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstScissor" ::: Word32) -> ("scissorCount" ::: Word32) -> ("pScissors" ::: Ptr Rect2D) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("depthBiasConstantFactor" ::: CFloat) -> ("depthBiasClamp" ::: CFloat) -> ("depthBiasSlopeFactor" ::: CFloat) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("blendConstants" ::: Ptr (FixedArray 4 CFloat)) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("minDepthBounds" ::: CFloat) -> ("maxDepthBounds" ::: CFloat) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("compareMask" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("writeMask" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("reference" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("firstSet" ::: Word32) -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> ("dynamicOffsetCount" ::: Word32) -> ("pDynamicOffsets" ::: Ptr Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IndexType -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("vertexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstVertex" ::: Word32) -> ("firstInstance" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("indexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstIndex" ::: Word32) -> ("vertexOffset" ::: Int32) -> ("firstInstance" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferCopy) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageCopy) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageBlit) -> Filter -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("dataSize" ::: DeviceSize) -> ("pData" ::: Ptr ()) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> DeviceSize -> ("data" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pColor" ::: Ptr ClearColorValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("attachmentCount" ::: Word32) -> ("pAttachments" ::: Ptr ClearAttachment) -> ("rectCount" ::: Word32) -> ("pRects" ::: Ptr ClearRect) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageResolve) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("eventCount" ::: Word32) -> ("pEvents" ::: Ptr Event) -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (SomeStruct ImageMemoryBarrier)) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> DependencyFlags -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (SomeStruct ImageMemoryBarrier)) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pConditionalRenderingBegin" ::: Ptr ConditionalRenderingBeginInfoEXT) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> PipelineStageFlagBits -> QueryPool -> ("query" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> PipelineLayout -> ShaderStageFlags -> ("offset" ::: Word32) -> ("size" ::: Word32) -> ("pValues" ::: Ptr ()) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (SomeStruct RenderPassBeginInfo)) -> SubpassContents -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ()) -> FunPtr (Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct SwapchainCreateInfoKHR)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SwapchainCreateInfoKHR)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchain" ::: Ptr SwapchainKHR) -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pSwapchainImageCount" ::: Ptr Word32) -> ("pSwapchainImages" ::: Ptr Image) -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("timeout" ::: Word64) -> Semaphore -> Fence -> ("pImageIndex" ::: Ptr Word32) -> IO Result) -> FunPtr (Ptr Queue_T -> ("pPresentInfo" ::: Ptr (SomeStruct PresentInfoKHR)) -> IO Result) -> FunPtr (Ptr Device_T -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result) -> FunPtr (Ptr Device_T -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ()) -> FunPtr (Ptr Device_T -> DeviceMemory -> ExternalMemoryHandleTypeFlagsNV -> ("pHandle" ::: Ptr HANDLE) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("isPreprocessed" ::: Bool32) -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> ("groupIndex" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV) -> IO Result) -> FunPtr (Ptr Device_T -> IndirectCommandsLayoutNV -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("set" ::: Word32) -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (SomeStruct WriteDescriptorSet)) -> IO ()) -> FunPtr (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ()) -> FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result) -> FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> HANDLE -> ("pMemoryWin32HandleProperties" ::: Ptr MemoryWin32HandlePropertiesKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result) -> FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("fd" ::: CInt) -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result) -> FunPtr (Ptr Device_T -> ("pImportSemaphoreWin32HandleInfo" ::: Ptr ImportSemaphoreWin32HandleInfoKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result) -> FunPtr (Ptr Device_T -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result) -> FunPtr (Ptr Device_T -> ("pImportFenceWin32HandleInfo" ::: Ptr ImportFenceWin32HandleInfoKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result) -> FunPtr (Ptr Device_T -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR) -> IO Result) -> FunPtr (Ptr Device_T -> DisplayKHR -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT) -> IO Result) -> FunPtr (Ptr Device_T -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result) -> FunPtr (Ptr Device_T -> DisplayKHR -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> ("pCounterValue" ::: Ptr Word64) -> IO Result) -> FunPtr (Ptr Device_T -> ("heapIndex" ::: Word32) -> ("localDeviceIndex" ::: Word32) -> ("remoteDeviceIndex" ::: Word32) -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags) -> IO ()) -> FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (SomeStruct BindBufferMemoryInfo)) -> IO Result) -> FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (SomeStruct BindImageMemoryInfo)) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("deviceMask" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> ("pDeviceGroupPresentCapabilities" ::: Ptr DeviceGroupPresentCapabilitiesKHR) -> IO Result) -> FunPtr (Ptr Device_T -> SurfaceKHR -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR) -> ("pImageIndex" ::: Ptr Word32) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("baseGroupX" ::: Word32) -> ("baseGroupY" ::: Word32) -> ("baseGroupZ" ::: Word32) -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate) -> IO Result) -> FunPtr (Ptr Device_T -> DescriptorUpdateTemplate -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> DescriptorSet -> DescriptorUpdateTemplate -> ("pData" ::: Ptr ()) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> DescriptorUpdateTemplate -> PipelineLayout -> ("set" ::: Word32) -> ("pData" ::: Ptr ()) -> IO ()) -> FunPtr (Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> ("pMetadata" ::: Ptr HdrMetadataEXT) -> IO ()) -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE) -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pPresentationTimingCount" ::: Ptr Word32) -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstDiscardRectangle" ::: Word32) -> ("discardRectangleCount" ::: Word32) -> ("pDiscardRectangles" ::: Ptr Rect2D) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct ImageMemoryRequirementsInfo2)) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2) -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements2) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SamplerYcbcrConversionCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion) -> IO Result) -> FunPtr (Ptr Device_T -> SamplerYcbcrConversion -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pValidationCache" ::: Ptr ValidationCacheEXT) -> IO Result) -> FunPtr (Ptr Device_T -> ValidationCacheEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ValidationCacheEXT -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result) -> FunPtr (Ptr Device_T -> ("dstCache" ::: ValidationCacheEXT) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr ValidationCacheEXT) -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct DescriptorSetLayoutCreateInfo)) -> ("pSupport" ::: Ptr (SomeStruct DescriptorSetLayoutSupport)) -> IO ()) -> FunPtr (Ptr Device_T -> Pipeline -> ShaderStageFlagBits -> ShaderInfoTypeAMD -> ("pInfoSize" ::: Ptr CSize) -> ("pInfo" ::: Ptr ()) -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("localDimmingEnable" ::: Bool32) -> IO ()) -> FunPtr (Ptr Device_T -> ("timestampCount" ::: Word32) -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT) -> ("pTimestamps" ::: Ptr Word64) -> ("pMaxDeviation" ::: Ptr Word64) -> IO Result) -> FunPtr (Ptr Device_T -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result) -> FunPtr (Ptr Device_T -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result) -> FunPtr (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) -> FunPtr (Ptr Queue_T -> IO ()) -> FunPtr (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ()) -> FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("pHostPointer" ::: Ptr ()) -> ("pMemoryHostPointerProperties" ::: Ptr MemoryHostPointerPropertiesEXT) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> PipelineStageFlagBits -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("marker" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct RenderPassCreateInfo2)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (SomeStruct RenderPassBeginInfo)) -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ()) -> FunPtr (Ptr Device_T -> Semaphore -> ("pValue" ::: Ptr Word64) -> IO Result) -> FunPtr (Ptr Device_T -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo) -> ("timeout" ::: Word64) -> IO Result) -> FunPtr (Ptr Device_T -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result) -> FunPtr (Ptr Device_T -> Ptr AHardwareBuffer -> ("pProperties" ::: Ptr (SomeStruct AndroidHardwareBufferPropertiesANDROID)) -> IO Result) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID) -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer)) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pCheckpointMarker" ::: Ptr ()) -> IO ()) -> FunPtr (Ptr Queue_T -> ("pCheckpointDataCount" ::: Ptr Word32) -> ("pCheckpointData" ::: Ptr CheckpointDataNV) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> ("pSizes" ::: Ptr DeviceSize) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> ("index" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> ("index" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("instanceCount" ::: Word32) -> ("firstInstance" ::: Word32) -> ("counterBuffer" ::: Buffer) -> ("counterBufferOffset" ::: DeviceSize) -> ("counterOffset" ::: Word32) -> ("vertexStride" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissorCount" ::: Word32) -> ("pExclusiveScissors" ::: Ptr Rect2D) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ImageView -> ImageLayout -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> CoarseSampleOrderTypeNV -> ("customSampleOrderCount" ::: Word32) -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("taskCount" ::: Word32) -> ("firstTask" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> Pipeline -> ("shader" ::: Word32) -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV) -> IO Result) -> FunPtr (Ptr Device_T -> AccelerationStructureKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2KHR)) -> IO ()) -> FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> CopyAccelerationStructureModeKHR -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureInfoKHR)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureInfoKHR)) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureToMemoryInfoKHR)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureToMemoryInfoKHR)) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct CopyMemoryToAccelerationStructureInfoKHR)) -> IO ()) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct CopyMemoryToAccelerationStructureInfoKHR)) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr AccelerationStructureInfoNV) -> ("instanceData" ::: Buffer) -> ("instanceOffset" ::: DeviceSize) -> ("update" ::: Bool32) -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> ("scratch" ::: Buffer) -> ("scratchOffset" ::: DeviceSize) -> IO ()) -> FunPtr (Ptr Device_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: CSize) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("raygenShaderBindingTableBuffer" ::: Buffer) -> ("raygenShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingTableBuffer" ::: Buffer) -> ("missShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingStride" ::: DeviceSize) -> ("hitShaderBindingTableBuffer" ::: Buffer) -> ("hitShaderBindingOffset" ::: DeviceSize) -> ("hitShaderBindingStride" ::: DeviceSize) -> ("callableShaderBindingTableBuffer" ::: Buffer) -> ("callableShaderBindingOffset" ::: DeviceSize) -> ("callableShaderBindingStride" ::: DeviceSize) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result) -> FunPtr (Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result) -> FunPtr (Ptr Device_T -> AccelerationStructureKHR -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result) -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct RayTracingPipelineCreateInfoNV)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct RayTracingPipelineCreateInfoKHR)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> Buffer -> ("offset" ::: DeviceSize) -> IO ()) -> FunPtr (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32) -> FunPtr (Ptr Device_T -> ImageView -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX) -> IO Result) -> FunPtr (Ptr Device_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result) -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result) -> FunPtr (Ptr Device_T -> IO ()) -> FunPtr (Ptr Device_T -> Image -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT) -> IO Result) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO Word64) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO DeviceAddress) -> FunPtr (Ptr Device_T -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL) -> IO Result) -> FunPtr (Ptr Device_T -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL) -> IO Result) -> FunPtr (Ptr Device_T -> ("pAcquireInfo" ::: Ptr PerformanceConfigurationAcquireInfoINTEL) -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL) -> IO Result) -> FunPtr (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result) -> FunPtr (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result) -> FunPtr (Ptr Device_T -> PerformanceParameterTypeINTEL -> ("pValue" ::: Ptr PerformanceValueINTEL) -> IO Result) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo) -> IO Word64) -> FunPtr (Ptr Device_T -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR) -> ("pExecutableCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pStatisticCount" ::: Ptr Word32) -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR) -> IO Result) -> FunPtr (Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pInternalRepresentationCount" ::: Ptr Word32) -> ("pInternalRepresentations" ::: Ptr PipelineExecutableInternalRepresentationKHR) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("lineStippleFactor" ::: Word32) -> ("lineStipplePattern" ::: Word16) -> IO ()) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureKHR) -> IO Result) -> FunPtr (Ptr CommandBuffer_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO ()) -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("indirectBuffer" ::: Buffer) -> ("indirectOffset" ::: DeviceSize) -> ("indirectStride" ::: Word32) -> IO ()) -> FunPtr (Ptr Device_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO Result) -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR) -> IO DeviceAddress) -> FunPtr (Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR) -> IO Result) -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32) -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result) -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result) -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT) -> IO Result) -> FunPtr (Ptr Device_T -> PrivateDataSlotEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ()) -> FunPtr (Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("data" ::: Word64) -> IO Result) -> FunPtr (Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("pData" ::: Ptr Word64) -> IO ()) -> DeviceCmds
[$sel:deviceCmdsHandle:DeviceCmds] :: DeviceCmds -> Ptr Device_T
[$sel:pVkGetDeviceProcAddr:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pName" ::: Ptr CChar) -> IO PFN_vkVoidFunction)
[$sel:pVkDestroyDevice:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetDeviceQueue:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("queueFamilyIndex" ::: Word32) -> ("queueIndex" ::: Word32) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
[$sel:pVkQueueSubmit:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> ("submitCount" ::: Word32) -> ("pSubmits" ::: Ptr (SomeStruct SubmitInfo)) -> Fence -> IO Result)
[$sel:pVkQueueWaitIdle:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> IO Result)
[$sel:pVkDeviceWaitIdle:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> IO Result)
[$sel:pVkAllocateMemory:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr (SomeStruct MemoryAllocateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pMemory" ::: Ptr DeviceMemory) -> IO Result)
[$sel:pVkFreeMemory:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeviceMemory -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkMapMemory:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeviceMemory -> ("offset" ::: DeviceSize) -> DeviceSize -> MemoryMapFlags -> ("ppData" ::: Ptr (Ptr ())) -> IO Result)
[$sel:pVkUnmapMemory:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeviceMemory -> IO ())
[$sel:pVkFlushMappedMemoryRanges:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result)
[$sel:pVkInvalidateMappedMemoryRanges:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("memoryRangeCount" ::: Word32) -> ("pMemoryRanges" ::: Ptr MappedMemoryRange) -> IO Result)
[$sel:pVkGetDeviceMemoryCommitment:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeviceMemory -> ("pCommittedMemoryInBytes" ::: Ptr DeviceSize) -> IO ())
[$sel:pVkGetBufferMemoryRequirements:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Buffer -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ())
[$sel:pVkBindBufferMemory:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Buffer -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result)
[$sel:pVkGetImageMemoryRequirements:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Image -> ("pMemoryRequirements" ::: Ptr MemoryRequirements) -> IO ())
[$sel:pVkBindImageMemory:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Image -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> IO Result)
[$sel:pVkGetImageSparseMemoryRequirements:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Image -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements) -> IO ())
[$sel:pVkQueueBindSparse:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfo" ::: Ptr (SomeStruct BindSparseInfo)) -> Fence -> IO Result)
[$sel:pVkCreateFence:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct FenceCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result)
[$sel:pVkDestroyFence:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Fence -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkResetFences:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> IO Result)
[$sel:pVkGetFenceStatus:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Fence -> IO Result)
[$sel:pVkWaitForFences:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("fenceCount" ::: Word32) -> ("pFences" ::: Ptr Fence) -> ("waitAll" ::: Bool32) -> ("timeout" ::: Word64) -> IO Result)
[$sel:pVkCreateSemaphore:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SemaphoreCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSemaphore" ::: Ptr Semaphore) -> IO Result)
[$sel:pVkDestroySemaphore:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Semaphore -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateEvent:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr EventCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pEvent" ::: Ptr Event) -> IO Result)
[$sel:pVkDestroyEvent:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Event -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetEventStatus:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Event -> IO Result)
[$sel:pVkSetEvent:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Event -> IO Result)
[$sel:pVkResetEvent:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Event -> IO Result)
[$sel:pVkCreateQueryPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct QueryPoolCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pQueryPool" ::: Ptr QueryPool) -> IO Result)
[$sel:pVkDestroyQueryPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> QueryPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetQueryPoolResults:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO Result)
[$sel:pVkResetQueryPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ())
[$sel:pVkCreateBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct BufferCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pBuffer" ::: Ptr Buffer) -> IO Result)
[$sel:pVkDestroyBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Buffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateBufferView:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr BufferViewCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr BufferView) -> IO Result)
[$sel:pVkDestroyBufferView:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> BufferView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct ImageCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pImage" ::: Ptr Image) -> IO Result)
[$sel:pVkDestroyImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Image -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetImageSubresourceLayout:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Image -> ("pSubresource" ::: Ptr ImageSubresource) -> ("pLayout" ::: Ptr SubresourceLayout) -> IO ())
[$sel:pVkCreateImageView:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct ImageViewCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pView" ::: Ptr ImageView) -> IO Result)
[$sel:pVkDestroyImageView:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ImageView -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateShaderModule:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct ShaderModuleCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pShaderModule" ::: Ptr ShaderModule) -> IO Result)
[$sel:pVkDestroyShaderModule:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ShaderModule -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreatePipelineCache:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineCacheCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineCache" ::: Ptr PipelineCache) -> IO Result)
[$sel:pVkDestroyPipelineCache:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineCache -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetPipelineCacheData:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineCache -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result)
[$sel:pVkMergePipelineCaches:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("dstCache" ::: PipelineCache) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr PipelineCache) -> IO Result)
[$sel:pVkCreateGraphicsPipelines:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct GraphicsPipelineCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
[$sel:pVkCreateComputePipelines:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct ComputePipelineCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
[$sel:pVkDestroyPipeline:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Pipeline -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreatePipelineLayout:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PipelineLayoutCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelineLayout" ::: Ptr PipelineLayout) -> IO Result)
[$sel:pVkDestroyPipelineLayout:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateSampler:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SamplerCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSampler" ::: Ptr Sampler) -> IO Result)
[$sel:pVkDestroySampler:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Sampler -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateDescriptorSetLayout:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct DescriptorSetLayoutCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSetLayout" ::: Ptr DescriptorSetLayout) -> IO Result)
[$sel:pVkDestroyDescriptorSetLayout:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DescriptorSetLayout -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateDescriptorPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct DescriptorPoolCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorPool" ::: Ptr DescriptorPool) -> IO Result)
[$sel:pVkDestroyDescriptorPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DescriptorPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkResetDescriptorPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DescriptorPool -> DescriptorPoolResetFlags -> IO Result)
[$sel:pVkAllocateDescriptorSets:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr (SomeStruct DescriptorSetAllocateInfo)) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result)
[$sel:pVkFreeDescriptorSets:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DescriptorPool -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> IO Result)
[$sel:pVkUpdateDescriptorSets:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (SomeStruct WriteDescriptorSet)) -> ("descriptorCopyCount" ::: Word32) -> ("pDescriptorCopies" ::: Ptr CopyDescriptorSet) -> IO ())
[$sel:pVkCreateFramebuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct FramebufferCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFramebuffer" ::: Ptr Framebuffer) -> IO Result)
[$sel:pVkDestroyFramebuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Framebuffer -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCreateRenderPass:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct RenderPassCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result)
[$sel:pVkDestroyRenderPass:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> RenderPass -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetRenderAreaGranularity:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> RenderPass -> ("pGranularity" ::: Ptr Extent2D) -> IO ())
[$sel:pVkCreateCommandPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr CommandPoolCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pCommandPool" ::: Ptr CommandPool) -> IO Result)
[$sel:pVkDestroyCommandPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> CommandPool -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkResetCommandPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> CommandPool -> CommandPoolResetFlags -> IO Result)
[$sel:pVkAllocateCommandBuffers:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAllocateInfo" ::: Ptr CommandBufferAllocateInfo) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO Result)
[$sel:pVkFreeCommandBuffers:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> CommandPool -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ())
[$sel:pVkBeginCommandBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pBeginInfo" ::: Ptr (SomeStruct CommandBufferBeginInfo)) -> IO Result)
[$sel:pVkEndCommandBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO Result)
[$sel:pVkResetCommandBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> CommandBufferResetFlags -> IO Result)
[$sel:pVkCmdBindPipeline:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> IO ())
[$sel:pVkCmdSetViewport:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewports" ::: Ptr Viewport) -> IO ())
[$sel:pVkCmdSetScissor:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstScissor" ::: Word32) -> ("scissorCount" ::: Word32) -> ("pScissors" ::: Ptr Rect2D) -> IO ())
[$sel:pVkCmdSetLineWidth:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("lineWidth" ::: CFloat) -> IO ())
[$sel:pVkCmdSetDepthBias:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("depthBiasConstantFactor" ::: CFloat) -> ("depthBiasClamp" ::: CFloat) -> ("depthBiasSlopeFactor" ::: CFloat) -> IO ())
[$sel:pVkCmdSetBlendConstants:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("blendConstants" ::: Ptr (FixedArray 4 CFloat)) -> IO ())
[$sel:pVkCmdSetDepthBounds:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("minDepthBounds" ::: CFloat) -> ("maxDepthBounds" ::: CFloat) -> IO ())
[$sel:pVkCmdSetStencilCompareMask:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("compareMask" ::: Word32) -> IO ())
[$sel:pVkCmdSetStencilWriteMask:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("writeMask" ::: Word32) -> IO ())
[$sel:pVkCmdSetStencilReference:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("faceMask" ::: StencilFaceFlags) -> ("reference" ::: Word32) -> IO ())
[$sel:pVkCmdBindDescriptorSets:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("firstSet" ::: Word32) -> ("descriptorSetCount" ::: Word32) -> ("pDescriptorSets" ::: Ptr DescriptorSet) -> ("dynamicOffsetCount" ::: Word32) -> ("pDynamicOffsets" ::: Ptr Word32) -> IO ())
[$sel:pVkCmdBindIndexBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IndexType -> IO ())
[$sel:pVkCmdBindVertexBuffers:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> IO ())
[$sel:pVkCmdDraw:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("vertexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstVertex" ::: Word32) -> ("firstInstance" ::: Word32) -> IO ())
[$sel:pVkCmdDrawIndexed:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("indexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstIndex" ::: Word32) -> ("vertexOffset" ::: Int32) -> ("firstInstance" ::: Word32) -> IO ())
[$sel:pVkCmdDrawIndirect:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
[$sel:pVkCmdDrawIndexedIndirect:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
[$sel:pVkCmdDispatch:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ())
[$sel:pVkCmdDispatchIndirect:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> IO ())
[$sel:pVkCmdCopyBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferCopy) -> IO ())
[$sel:pVkCmdCopyImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageCopy) -> IO ())
[$sel:pVkCmdBlitImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageBlit) -> Filter -> IO ())
[$sel:pVkCmdCopyBufferToImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcBuffer" ::: Buffer) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ())
[$sel:pVkCmdCopyImageToBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstBuffer" ::: Buffer) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr BufferImageCopy) -> IO ())
[$sel:pVkCmdUpdateBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("dataSize" ::: DeviceSize) -> ("pData" ::: Ptr ()) -> IO ())
[$sel:pVkCmdFillBuffer:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> DeviceSize -> ("data" ::: Word32) -> IO ())
[$sel:pVkCmdClearColorImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pColor" ::: Ptr ClearColorValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ())
[$sel:pVkCmdClearDepthStencilImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Image -> ImageLayout -> ("pDepthStencil" ::: Ptr ClearDepthStencilValue) -> ("rangeCount" ::: Word32) -> ("pRanges" ::: Ptr ImageSubresourceRange) -> IO ())
[$sel:pVkCmdClearAttachments:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("attachmentCount" ::: Word32) -> ("pAttachments" ::: Ptr ClearAttachment) -> ("rectCount" ::: Word32) -> ("pRects" ::: Ptr ClearRect) -> IO ())
[$sel:pVkCmdResolveImage:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regionCount" ::: Word32) -> ("pRegions" ::: Ptr ImageResolve) -> IO ())
[$sel:pVkCmdSetEvent:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
[$sel:pVkCmdResetEvent:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Event -> ("stageMask" ::: PipelineStageFlags) -> IO ())
[$sel:pVkCmdWaitEvents:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("eventCount" ::: Word32) -> ("pEvents" ::: Ptr Event) -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (SomeStruct ImageMemoryBarrier)) -> IO ())
[$sel:pVkCmdPipelineBarrier:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> DependencyFlags -> ("memoryBarrierCount" ::: Word32) -> ("pMemoryBarriers" ::: Ptr MemoryBarrier) -> ("bufferMemoryBarrierCount" ::: Word32) -> ("pBufferMemoryBarriers" ::: Ptr BufferMemoryBarrier) -> ("imageMemoryBarrierCount" ::: Word32) -> ("pImageMemoryBarriers" ::: Ptr (SomeStruct ImageMemoryBarrier)) -> IO ())
[$sel:pVkCmdBeginQuery:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> IO ())
[$sel:pVkCmdEndQuery:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> IO ())
[$sel:pVkCmdBeginConditionalRenderingEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pConditionalRenderingBegin" ::: Ptr ConditionalRenderingBeginInfoEXT) -> IO ())
[$sel:pVkCmdEndConditionalRenderingEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
[$sel:pVkCmdResetQueryPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> IO ())
[$sel:pVkCmdWriteTimestamp:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineStageFlagBits -> QueryPool -> ("query" ::: Word32) -> IO ())
[$sel:pVkCmdCopyQueryPoolResults:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> IO ())
[$sel:pVkCmdPushConstants:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineLayout -> ShaderStageFlags -> ("offset" ::: Word32) -> ("size" ::: Word32) -> ("pValues" ::: Ptr ()) -> IO ())
[$sel:pVkCmdBeginRenderPass:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (SomeStruct RenderPassBeginInfo)) -> SubpassContents -> IO ())
[$sel:pVkCmdNextSubpass:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> SubpassContents -> IO ())
[$sel:pVkCmdEndRenderPass:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
[$sel:pVkCmdExecuteCommands:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("commandBufferCount" ::: Word32) -> ("pCommandBuffers" ::: Ptr (Ptr CommandBuffer_T)) -> IO ())
[$sel:pVkCreateSharedSwapchainsKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct SwapchainCreateInfoKHR)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> IO Result)
[$sel:pVkCreateSwapchainKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SwapchainCreateInfoKHR)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pSwapchain" ::: Ptr SwapchainKHR) -> IO Result)
[$sel:pVkDestroySwapchainKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetSwapchainImagesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pSwapchainImageCount" ::: Ptr Word32) -> ("pSwapchainImages" ::: Ptr Image) -> IO Result)
[$sel:pVkAcquireNextImageKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("timeout" ::: Word64) -> Semaphore -> Fence -> ("pImageIndex" ::: Ptr Word32) -> IO Result)
[$sel:pVkQueuePresentKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> ("pPresentInfo" ::: Ptr (SomeStruct PresentInfoKHR)) -> IO Result)
[$sel:pVkDebugMarkerSetObjectNameEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pNameInfo" ::: Ptr DebugMarkerObjectNameInfoEXT) -> IO Result)
[$sel:pVkDebugMarkerSetObjectTagEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pTagInfo" ::: Ptr DebugMarkerObjectTagInfoEXT) -> IO Result)
[$sel:pVkCmdDebugMarkerBeginEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
[$sel:pVkCmdDebugMarkerEndEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
[$sel:pVkCmdDebugMarkerInsertEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr DebugMarkerMarkerInfoEXT) -> IO ())
[$sel:pVkGetMemoryWin32HandleNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeviceMemory -> ExternalMemoryHandleTypeFlagsNV -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
[$sel:pVkCmdExecuteGeneratedCommandsNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("isPreprocessed" ::: Bool32) -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ())
[$sel:pVkCmdPreprocessGeneratedCommandsNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pGeneratedCommandsInfo" ::: Ptr GeneratedCommandsInfoNV) -> IO ())
[$sel:pVkCmdBindPipelineShaderGroupNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> Pipeline -> ("groupIndex" ::: Word32) -> IO ())
[$sel:pVkGetGeneratedCommandsMemoryRequirementsNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr GeneratedCommandsMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ())
[$sel:pVkCreateIndirectCommandsLayoutNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr IndirectCommandsLayoutCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pIndirectCommandsLayout" ::: Ptr IndirectCommandsLayoutNV) -> IO Result)
[$sel:pVkDestroyIndirectCommandsLayoutNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> IndirectCommandsLayoutNV -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkCmdPushDescriptorSetKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineBindPoint -> PipelineLayout -> ("set" ::: Word32) -> ("descriptorWriteCount" ::: Word32) -> ("pDescriptorWrites" ::: Ptr (SomeStruct WriteDescriptorSet)) -> IO ())
[$sel:pVkTrimCommandPool:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> CommandPool -> CommandPoolTrimFlags -> IO ())
[$sel:pVkGetMemoryWin32HandleKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr MemoryGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
[$sel:pVkGetMemoryWin32HandlePropertiesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> HANDLE -> ("pMemoryWin32HandleProperties" ::: Ptr MemoryWin32HandlePropertiesKHR) -> IO Result)
[$sel:pVkGetMemoryFdKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr MemoryGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result)
[$sel:pVkGetMemoryFdPropertiesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("fd" ::: CInt) -> ("pMemoryFdProperties" ::: Ptr MemoryFdPropertiesKHR) -> IO Result)
[$sel:pVkGetSemaphoreWin32HandleKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr SemaphoreGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
[$sel:pVkImportSemaphoreWin32HandleKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pImportSemaphoreWin32HandleInfo" ::: Ptr ImportSemaphoreWin32HandleInfoKHR) -> IO Result)
[$sel:pVkGetSemaphoreFdKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr SemaphoreGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result)
[$sel:pVkImportSemaphoreFdKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pImportSemaphoreFdInfo" ::: Ptr ImportSemaphoreFdInfoKHR) -> IO Result)
[$sel:pVkGetFenceWin32HandleKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pGetWin32HandleInfo" ::: Ptr FenceGetWin32HandleInfoKHR) -> ("pHandle" ::: Ptr HANDLE) -> IO Result)
[$sel:pVkImportFenceWin32HandleKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pImportFenceWin32HandleInfo" ::: Ptr ImportFenceWin32HandleInfoKHR) -> IO Result)
[$sel:pVkGetFenceFdKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pGetFdInfo" ::: Ptr FenceGetFdInfoKHR) -> ("pFd" ::: Ptr CInt) -> IO Result)
[$sel:pVkImportFenceFdKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pImportFenceFdInfo" ::: Ptr ImportFenceFdInfoKHR) -> IO Result)
[$sel:pVkDisplayPowerControlEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DisplayKHR -> ("pDisplayPowerInfo" ::: Ptr DisplayPowerInfoEXT) -> IO Result)
[$sel:pVkRegisterDeviceEventEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pDeviceEventInfo" ::: Ptr DeviceEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result)
[$sel:pVkRegisterDisplayEventEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DisplayKHR -> ("pDisplayEventInfo" ::: Ptr DisplayEventInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pFence" ::: Ptr Fence) -> IO Result)
[$sel:pVkGetSwapchainCounterEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> ("pCounterValue" ::: Ptr Word64) -> IO Result)
[$sel:pVkGetDeviceGroupPeerMemoryFeatures:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("heapIndex" ::: Word32) -> ("localDeviceIndex" ::: Word32) -> ("remoteDeviceIndex" ::: Word32) -> ("pPeerMemoryFeatures" ::: Ptr PeerMemoryFeatureFlags) -> IO ())
[$sel:pVkBindBufferMemory2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (SomeStruct BindBufferMemoryInfo)) -> IO Result)
[$sel:pVkBindImageMemory2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr (SomeStruct BindImageMemoryInfo)) -> IO Result)
[$sel:pVkCmdSetDeviceMask:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("deviceMask" ::: Word32) -> IO ())
[$sel:pVkGetDeviceGroupPresentCapabilitiesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pDeviceGroupPresentCapabilities" ::: Ptr DeviceGroupPresentCapabilitiesKHR) -> IO Result)
[$sel:pVkGetDeviceGroupSurfacePresentModesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SurfaceKHR -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result)
[$sel:pVkAcquireNextImage2KHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAcquireInfo" ::: Ptr AcquireNextImageInfoKHR) -> ("pImageIndex" ::: Ptr Word32) -> IO Result)
[$sel:pVkCmdDispatchBase:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("baseGroupX" ::: Word32) -> ("baseGroupY" ::: Word32) -> ("baseGroupZ" ::: Word32) -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> IO ())
[$sel:pVkCreateDescriptorUpdateTemplate:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr DescriptorUpdateTemplateCreateInfo) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDescriptorUpdateTemplate" ::: Ptr DescriptorUpdateTemplate) -> IO Result)
[$sel:pVkDestroyDescriptorUpdateTemplate:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DescriptorUpdateTemplate -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkUpdateDescriptorSetWithTemplate:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DescriptorSet -> DescriptorUpdateTemplate -> ("pData" ::: Ptr ()) -> IO ())
[$sel:pVkCmdPushDescriptorSetWithTemplateKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> DescriptorUpdateTemplate -> PipelineLayout -> ("set" ::: Word32) -> ("pData" ::: Ptr ()) -> IO ())
[$sel:pVkSetHdrMetadataEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("swapchainCount" ::: Word32) -> ("pSwapchains" ::: Ptr SwapchainKHR) -> ("pMetadata" ::: Ptr HdrMetadataEXT) -> IO ())
[$sel:pVkGetSwapchainStatusKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
[$sel:pVkGetRefreshCycleDurationGOOGLE:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pDisplayTimingProperties" ::: Ptr RefreshCycleDurationGOOGLE) -> IO Result)
[$sel:pVkGetPastPresentationTimingGOOGLE:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("pPresentationTimingCount" ::: Ptr Word32) -> ("pPresentationTimings" ::: Ptr PastPresentationTimingGOOGLE) -> IO Result)
[$sel:pVkCmdSetViewportWScalingNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pViewportWScalings" ::: Ptr ViewportWScalingNV) -> IO ())
[$sel:pVkCmdSetDiscardRectangleEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstDiscardRectangle" ::: Word32) -> ("discardRectangleCount" ::: Word32) -> ("pDiscardRectangles" ::: Ptr Rect2D) -> IO ())
[$sel:pVkCmdSetSampleLocationsEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pSampleLocationsInfo" ::: Ptr SampleLocationsInfoEXT) -> IO ())
[$sel:pVkGetBufferMemoryRequirements2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferMemoryRequirementsInfo2) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ())
[$sel:pVkGetImageMemoryRequirements2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct ImageMemoryRequirementsInfo2)) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ())
[$sel:pVkGetImageSparseMemoryRequirements2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr ImageSparseMemoryRequirementsInfo2) -> ("pSparseMemoryRequirementCount" ::: Ptr Word32) -> ("pSparseMemoryRequirements" ::: Ptr SparseImageMemoryRequirements2) -> IO ())
[$sel:pVkCreateSamplerYcbcrConversion:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct SamplerYcbcrConversionCreateInfo)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pYcbcrConversion" ::: Ptr SamplerYcbcrConversion) -> IO Result)
[$sel:pVkDestroySamplerYcbcrConversion:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SamplerYcbcrConversion -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetDeviceQueue2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pQueueInfo" ::: Ptr DeviceQueueInfo2) -> ("pQueue" ::: Ptr (Ptr Queue_T)) -> IO ())
[$sel:pVkCreateValidationCacheEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr ValidationCacheCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pValidationCache" ::: Ptr ValidationCacheEXT) -> IO Result)
[$sel:pVkDestroyValidationCacheEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ValidationCacheEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetValidationCacheDataEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ValidationCacheEXT -> ("pDataSize" ::: Ptr CSize) -> ("pData" ::: Ptr ()) -> IO Result)
[$sel:pVkMergeValidationCachesEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("dstCache" ::: ValidationCacheEXT) -> ("srcCacheCount" ::: Word32) -> ("pSrcCaches" ::: Ptr ValidationCacheEXT) -> IO Result)
[$sel:pVkGetDescriptorSetLayoutSupport:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct DescriptorSetLayoutCreateInfo)) -> ("pSupport" ::: Ptr (SomeStruct DescriptorSetLayoutSupport)) -> IO ())
[$sel:pVkGetShaderInfoAMD:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Pipeline -> ShaderStageFlagBits -> ShaderInfoTypeAMD -> ("pInfoSize" ::: Ptr CSize) -> ("pInfo" ::: Ptr ()) -> IO Result)
[$sel:pVkSetLocalDimmingAMD:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> ("localDimmingEnable" ::: Bool32) -> IO ())
[$sel:pVkGetCalibratedTimestampsEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("timestampCount" ::: Word32) -> ("pTimestampInfos" ::: Ptr CalibratedTimestampInfoEXT) -> ("pTimestamps" ::: Ptr Word64) -> ("pMaxDeviation" ::: Ptr Word64) -> IO Result)
[$sel:pVkSetDebugUtilsObjectNameEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pNameInfo" ::: Ptr DebugUtilsObjectNameInfoEXT) -> IO Result)
[$sel:pVkSetDebugUtilsObjectTagEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pTagInfo" ::: Ptr DebugUtilsObjectTagInfoEXT) -> IO Result)
[$sel:pVkQueueBeginDebugUtilsLabelEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
[$sel:pVkQueueEndDebugUtilsLabelEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> IO ())
[$sel:pVkQueueInsertDebugUtilsLabelEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
[$sel:pVkCmdBeginDebugUtilsLabelEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
[$sel:pVkCmdEndDebugUtilsLabelEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> IO ())
[$sel:pVkCmdInsertDebugUtilsLabelEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pLabelInfo" ::: Ptr DebugUtilsLabelEXT) -> IO ())
[$sel:pVkGetMemoryHostPointerPropertiesEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ExternalMemoryHandleTypeFlagBits -> ("pHostPointer" ::: Ptr ()) -> ("pMemoryHostPointerProperties" ::: Ptr MemoryHostPointerPropertiesEXT) -> IO Result)
[$sel:pVkCmdWriteBufferMarkerAMD:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> PipelineStageFlagBits -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("marker" ::: Word32) -> IO ())
[$sel:pVkCreateRenderPass2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr (SomeStruct RenderPassCreateInfo2)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pRenderPass" ::: Ptr RenderPass) -> IO Result)
[$sel:pVkCmdBeginRenderPass2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pRenderPassBegin" ::: Ptr (SomeStruct RenderPassBeginInfo)) -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> IO ())
[$sel:pVkCmdNextSubpass2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pSubpassBeginInfo" ::: Ptr SubpassBeginInfo) -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
[$sel:pVkCmdEndRenderPass2:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pSubpassEndInfo" ::: Ptr SubpassEndInfo) -> IO ())
[$sel:pVkGetSemaphoreCounterValue:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Semaphore -> ("pValue" ::: Ptr Word64) -> IO Result)
[$sel:pVkWaitSemaphores:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pWaitInfo" ::: Ptr SemaphoreWaitInfo) -> ("timeout" ::: Word64) -> IO Result)
[$sel:pVkSignalSemaphore:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pSignalInfo" ::: Ptr SemaphoreSignalInfo) -> IO Result)
[$sel:pVkGetAndroidHardwareBufferPropertiesANDROID:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Ptr AHardwareBuffer -> ("pProperties" ::: Ptr (SomeStruct AndroidHardwareBufferPropertiesANDROID)) -> IO Result)
[$sel:pVkGetMemoryAndroidHardwareBufferANDROID:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr MemoryGetAndroidHardwareBufferInfoANDROID) -> ("pBuffer" ::: Ptr (Ptr AHardwareBuffer)) -> IO Result)
[$sel:pVkCmdDrawIndirectCount:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
[$sel:pVkCmdDrawIndexedIndirectCount:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
[$sel:pVkCmdSetCheckpointNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pCheckpointMarker" ::: Ptr ()) -> IO ())
[$sel:pVkGetQueueCheckpointDataNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> ("pCheckpointDataCount" ::: Ptr Word32) -> ("pCheckpointData" ::: Ptr CheckpointDataNV) -> IO ())
[$sel:pVkCmdBindTransformFeedbackBuffersEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstBinding" ::: Word32) -> ("bindingCount" ::: Word32) -> ("pBuffers" ::: Ptr Buffer) -> ("pOffsets" ::: Ptr DeviceSize) -> ("pSizes" ::: Ptr DeviceSize) -> IO ())
[$sel:pVkCmdBeginTransformFeedbackEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ())
[$sel:pVkCmdEndTransformFeedbackEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstCounterBuffer" ::: Word32) -> ("counterBufferCount" ::: Word32) -> ("pCounterBuffers" ::: Ptr Buffer) -> ("pCounterBufferOffsets" ::: Ptr DeviceSize) -> IO ())
[$sel:pVkCmdBeginQueryIndexedEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> ("index" ::: Word32) -> IO ())
[$sel:pVkCmdEndQueryIndexedEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> QueryPool -> ("query" ::: Word32) -> ("index" ::: Word32) -> IO ())
[$sel:pVkCmdDrawIndirectByteCountEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("instanceCount" ::: Word32) -> ("firstInstance" ::: Word32) -> ("counterBuffer" ::: Buffer) -> ("counterBufferOffset" ::: DeviceSize) -> ("counterOffset" ::: Word32) -> ("vertexStride" ::: Word32) -> IO ())
[$sel:pVkCmdSetExclusiveScissorNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissorCount" ::: Word32) -> ("pExclusiveScissors" ::: Ptr Rect2D) -> IO ())
[$sel:pVkCmdBindShadingRateImageNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ImageView -> ImageLayout -> IO ())
[$sel:pVkCmdSetViewportShadingRatePaletteNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("firstViewport" ::: Word32) -> ("viewportCount" ::: Word32) -> ("pShadingRatePalettes" ::: Ptr ShadingRatePaletteNV) -> IO ())
[$sel:pVkCmdSetCoarseSampleOrderNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> CoarseSampleOrderTypeNV -> ("customSampleOrderCount" ::: Word32) -> ("pCustomSampleOrders" ::: Ptr CoarseSampleOrderCustomNV) -> IO ())
[$sel:pVkCmdDrawMeshTasksNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("taskCount" ::: Word32) -> ("firstTask" ::: Word32) -> IO ())
[$sel:pVkCmdDrawMeshTasksIndirectNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
[$sel:pVkCmdDrawMeshTasksIndirectCountNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> IO ())
[$sel:pVkCompileDeferredNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Pipeline -> ("shader" ::: Word32) -> IO Result)
[$sel:pVkCreateAccelerationStructureNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoNV) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureNV) -> IO Result)
[$sel:pVkDestroyAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> AccelerationStructureKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetAccelerationStructureMemoryRequirementsKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoKHR) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2)) -> IO ())
[$sel:pVkGetAccelerationStructureMemoryRequirementsNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureMemoryRequirementsInfoNV) -> ("pMemoryRequirements" ::: Ptr (SomeStruct MemoryRequirements2KHR)) -> IO ())
[$sel:pVkBindAccelerationStructureMemoryKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("bindInfoCount" ::: Word32) -> ("pBindInfos" ::: Ptr BindAccelerationStructureMemoryInfoKHR) -> IO Result)
[$sel:pVkCmdCopyAccelerationStructureNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> CopyAccelerationStructureModeKHR -> IO ())
[$sel:pVkCmdCopyAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureInfoKHR)) -> IO ())
[$sel:pVkCopyAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureInfoKHR)) -> IO Result)
[$sel:pVkCmdCopyAccelerationStructureToMemoryKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureToMemoryInfoKHR)) -> IO ())
[$sel:pVkCopyAccelerationStructureToMemoryKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct CopyAccelerationStructureToMemoryInfoKHR)) -> IO Result)
[$sel:pVkCmdCopyMemoryToAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct CopyMemoryToAccelerationStructureInfoKHR)) -> IO ())
[$sel:pVkCopyMemoryToAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr (SomeStruct CopyMemoryToAccelerationStructureInfoKHR)) -> IO Result)
[$sel:pVkCmdWriteAccelerationStructuresPropertiesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> IO ())
[$sel:pVkCmdBuildAccelerationStructureNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr AccelerationStructureInfoNV) -> ("instanceData" ::: Buffer) -> ("instanceOffset" ::: DeviceSize) -> ("update" ::: Bool32) -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> ("scratch" ::: Buffer) -> ("scratchOffset" ::: DeviceSize) -> IO ())
[$sel:pVkWriteAccelerationStructuresPropertiesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("accelerationStructureCount" ::: Word32) -> ("pAccelerationStructures" ::: Ptr AccelerationStructureKHR) -> QueryType -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> ("stride" ::: CSize) -> IO Result)
[$sel:pVkCmdTraceRaysKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ())
[$sel:pVkCmdTraceRaysNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("raygenShaderBindingTableBuffer" ::: Buffer) -> ("raygenShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingTableBuffer" ::: Buffer) -> ("missShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingStride" ::: DeviceSize) -> ("hitShaderBindingTableBuffer" ::: Buffer) -> ("hitShaderBindingOffset" ::: DeviceSize) -> ("hitShaderBindingStride" ::: DeviceSize) -> ("callableShaderBindingTableBuffer" ::: Buffer) -> ("callableShaderBindingOffset" ::: DeviceSize) -> ("callableShaderBindingStride" ::: DeviceSize) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> IO ())
[$sel:pVkGetRayTracingShaderGroupHandlesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result)
[$sel:pVkGetRayTracingCaptureReplayShaderGroupHandlesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result)
[$sel:pVkGetAccelerationStructureHandleNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> AccelerationStructureKHR -> ("dataSize" ::: CSize) -> ("pData" ::: Ptr ()) -> IO Result)
[$sel:pVkCreateRayTracingPipelinesNV:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct RayTracingPipelineCreateInfoNV)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
[$sel:pVkCreateRayTracingPipelinesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PipelineCache -> ("createInfoCount" ::: Word32) -> ("pCreateInfos" ::: Ptr (SomeStruct RayTracingPipelineCreateInfoKHR)) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPipelines" ::: Ptr Pipeline) -> IO Result)
[$sel:pVkCmdTraceRaysIndirectKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pRaygenShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pMissShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pHitShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> ("pCallableShaderBindingTable" ::: Ptr StridedBufferRegionKHR) -> Buffer -> ("offset" ::: DeviceSize) -> IO ())
[$sel:pVkGetDeviceAccelerationStructureCompatibilityKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Ptr AccelerationStructureVersionKHR -> IO Result)
[$sel:pVkGetImageViewHandleNVX:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr ImageViewHandleInfoNVX) -> IO Word32)
[$sel:pVkGetImageViewAddressNVX:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ImageView -> ("pProperties" ::: Ptr ImageViewAddressPropertiesNVX) -> IO Result)
[$sel:pVkGetDeviceGroupSurfacePresentModes2EXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pSurfaceInfo" ::: Ptr (SomeStruct PhysicalDeviceSurfaceInfo2KHR)) -> ("pModes" ::: Ptr DeviceGroupPresentModeFlagsKHR) -> IO Result)
[$sel:pVkAcquireFullScreenExclusiveModeEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
[$sel:pVkReleaseFullScreenExclusiveModeEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> SwapchainKHR -> IO Result)
[$sel:pVkAcquireProfilingLockKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AcquireProfilingLockInfoKHR) -> IO Result)
[$sel:pVkReleaseProfilingLockKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> IO ())
[$sel:pVkGetImageDrmFormatModifierPropertiesEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> Image -> ("pProperties" ::: Ptr ImageDrmFormatModifierPropertiesEXT) -> IO Result)
[$sel:pVkGetBufferOpaqueCaptureAddress:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO Word64)
[$sel:pVkGetBufferDeviceAddress:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr BufferDeviceAddressInfo) -> IO DeviceAddress)
[$sel:pVkInitializePerformanceApiINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInitializeInfo" ::: Ptr InitializePerformanceApiInfoINTEL) -> IO Result)
[$sel:pVkUninitializePerformanceApiINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> IO ())
[$sel:pVkCmdSetPerformanceMarkerINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceMarkerInfoINTEL) -> IO Result)
[$sel:pVkCmdSetPerformanceStreamMarkerINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pMarkerInfo" ::: Ptr PerformanceStreamMarkerInfoINTEL) -> IO Result)
[$sel:pVkCmdSetPerformanceOverrideINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pOverrideInfo" ::: Ptr PerformanceOverrideInfoINTEL) -> IO Result)
[$sel:pVkAcquirePerformanceConfigurationINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAcquireInfo" ::: Ptr PerformanceConfigurationAcquireInfoINTEL) -> ("pConfiguration" ::: Ptr PerformanceConfigurationINTEL) -> IO Result)
[$sel:pVkReleasePerformanceConfigurationINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PerformanceConfigurationINTEL -> IO Result)
[$sel:pVkQueueSetPerformanceConfigurationINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Queue_T -> PerformanceConfigurationINTEL -> IO Result)
[$sel:pVkGetPerformanceParameterINTEL:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PerformanceParameterTypeINTEL -> ("pValue" ::: Ptr PerformanceValueINTEL) -> IO Result)
[$sel:pVkGetDeviceMemoryOpaqueCaptureAddress:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr DeviceMemoryOpaqueCaptureAddressInfo) -> IO Word64)
[$sel:pVkGetPipelineExecutablePropertiesKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pPipelineInfo" ::: Ptr PipelineInfoKHR) -> ("pExecutableCount" ::: Ptr Word32) -> ("pProperties" ::: Ptr PipelineExecutablePropertiesKHR) -> IO Result)
[$sel:pVkGetPipelineExecutableStatisticsKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pStatisticCount" ::: Ptr Word32) -> ("pStatistics" ::: Ptr PipelineExecutableStatisticKHR) -> IO Result)
[$sel:pVkGetPipelineExecutableInternalRepresentationsKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pExecutableInfo" ::: Ptr PipelineExecutableInfoKHR) -> ("pInternalRepresentationCount" ::: Ptr Word32) -> ("pInternalRepresentations" ::: Ptr PipelineExecutableInternalRepresentationKHR) -> IO Result)
[$sel:pVkCmdSetLineStippleEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("lineStippleFactor" ::: Word32) -> ("lineStipplePattern" ::: Word16) -> IO ())
[$sel:pVkCreateAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr AccelerationStructureCreateInfoKHR) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pAccelerationStructure" ::: Ptr AccelerationStructureKHR) -> IO Result)
[$sel:pVkCmdBuildAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO ())
[$sel:pVkCmdBuildAccelerationStructureIndirectKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr CommandBuffer_T -> ("pInfo" ::: Ptr (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("indirectBuffer" ::: Buffer) -> ("indirectOffset" ::: DeviceSize) -> ("indirectStride" ::: Word32) -> IO ())
[$sel:pVkBuildAccelerationStructureKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("infoCount" ::: Word32) -> ("pInfos" ::: Ptr (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("ppOffsetInfos" ::: Ptr (Ptr AccelerationStructureBuildOffsetInfoKHR)) -> IO Result)
[$sel:pVkGetAccelerationStructureDeviceAddressKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pInfo" ::: Ptr AccelerationStructureDeviceAddressInfoKHR) -> IO DeviceAddress)
[$sel:pVkCreateDeferredOperationKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pDeferredOperation" ::: Ptr DeferredOperationKHR) -> IO Result)
[$sel:pVkDestroyDeferredOperationKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkGetDeferredOperationMaxConcurrencyKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Word32)
[$sel:pVkGetDeferredOperationResultKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
[$sel:pVkDeferredOperationJoinKHR:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> DeferredOperationKHR -> IO Result)
[$sel:pVkCreatePrivateDataSlotEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ("pCreateInfo" ::: Ptr PrivateDataSlotCreateInfoEXT) -> ("pAllocator" ::: Ptr AllocationCallbacks) -> ("pPrivateDataSlot" ::: Ptr PrivateDataSlotEXT) -> IO Result)
[$sel:pVkDestroyPrivateDataSlotEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> PrivateDataSlotEXT -> ("pAllocator" ::: Ptr AllocationCallbacks) -> IO ())
[$sel:pVkSetPrivateDataEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("data" ::: Word64) -> IO Result)
[$sel:pVkGetPrivateDataEXT:DeviceCmds] :: DeviceCmds -> FunPtr (Ptr Device_T -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("pData" ::: Ptr Word64) -> IO ())
initDeviceCmds :: InstanceCmds -> Ptr Device_T -> IO DeviceCmds
instance GHC.Classes.Eq Vulkan.Dynamic.InstanceCmds
instance GHC.Show.Show Vulkan.Dynamic.InstanceCmds
instance GHC.Classes.Eq Vulkan.Dynamic.DeviceCmds
instance GHC.Show.Show Vulkan.Dynamic.DeviceCmds
instance Vulkan.Zero.Zero Vulkan.Dynamic.DeviceCmds
instance Vulkan.Zero.Zero Vulkan.Dynamic.InstanceCmds
module Vulkan.Core11.DeviceInitialization
-- | vkEnumerateInstanceVersion - Query instance-level version before
-- instance creation
--
-- Description
--
-- Note
--
-- The intended behaviour of enumerateInstanceVersion is that an
-- implementation should not need to perform memory allocations
-- and should unconditionally return SUCCESS. The loader,
-- and any enabled layers, may return
-- ERROR_OUT_OF_HOST_MEMORY in the case of a failed memory
-- allocation.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- No cross-references are available
enumerateInstanceVersion :: forall io. MonadIO io => io ("apiVersion" ::: Word32)
module Vulkan.Core10.Handles
-- | VkInstance - Opaque handle to an instance object
--
-- See Also
--
-- createAndroidSurfaceKHR, createDebugReportCallbackEXT,
-- createDebugUtilsMessengerEXT,
-- createDisplayPlaneSurfaceKHR, createHeadlessSurfaceEXT,
-- createIOSSurfaceMVK, createImagePipeSurfaceFUCHSIA,
-- createInstance, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, debugReportMessageEXT,
-- destroyDebugReportCallbackEXT,
-- destroyDebugUtilsMessengerEXT, destroyInstance,
-- destroySurfaceKHR, enumeratePhysicalDeviceGroups,
-- enumeratePhysicalDeviceGroupsKHR,
-- enumeratePhysicalDevices, getInstanceProcAddr,
-- submitDebugUtilsMessageEXT
data Instance
Instance :: Ptr Instance_T -> InstanceCmds -> Instance
[$sel:instanceHandle:Instance] :: Instance -> Ptr Instance_T
[$sel:instanceCmds:Instance] :: Instance -> InstanceCmds
-- | An opaque type for representing pointers to VkInstance handles
data Instance_T
-- | VkPhysicalDevice - Opaque handle to a physical device object
--
-- See Also
--
-- DeviceGroupDeviceCreateInfo,
-- PhysicalDeviceGroupProperties, acquireXlibDisplayEXT,
-- createDevice, createDisplayModeKHR,
-- enumerateDeviceExtensionProperties,
-- enumerateDeviceLayerProperties,
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR,
-- enumeratePhysicalDevices, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneCapabilities2KHR,
-- getDisplayPlaneCapabilitiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getPhysicalDeviceCalibrateableTimeDomainsEXT,
-- getPhysicalDeviceCooperativeMatrixPropertiesNV,
-- getPhysicalDeviceDisplayPlaneProperties2KHR,
-- getPhysicalDeviceDisplayPlanePropertiesKHR,
-- getPhysicalDeviceDisplayProperties2KHR,
-- getPhysicalDeviceDisplayPropertiesKHR,
-- getPhysicalDeviceExternalBufferProperties,
-- getPhysicalDeviceExternalBufferPropertiesKHR,
-- getPhysicalDeviceExternalFenceProperties,
-- getPhysicalDeviceExternalFencePropertiesKHR,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceExternalSemaphoreProperties,
-- getPhysicalDeviceExternalSemaphorePropertiesKHR,
-- getPhysicalDeviceFeatures, getPhysicalDeviceFeatures2,
-- getPhysicalDeviceFeatures2KHR,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceImageFormatProperties2,
-- getPhysicalDeviceImageFormatProperties2KHR,
-- getPhysicalDeviceMemoryProperties,
-- getPhysicalDeviceMemoryProperties2,
-- getPhysicalDeviceMemoryProperties2KHR,
-- getPhysicalDeviceMultisamplePropertiesEXT,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceProperties,
-- getPhysicalDeviceProperties2,
-- getPhysicalDeviceProperties2KHR,
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR,
-- getPhysicalDeviceQueueFamilyProperties,
-- getPhysicalDeviceQueueFamilyProperties2,
-- getPhysicalDeviceQueueFamilyProperties2KHR,
-- getPhysicalDeviceSparseImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties2,
-- getPhysicalDeviceSparseImageFormatProperties2KHR,
-- getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilities2KHR,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormats2KHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR,
-- getPhysicalDeviceToolPropertiesEXT,
-- getPhysicalDeviceWaylandPresentationSupportKHR,
-- getPhysicalDeviceWin32PresentationSupportKHR,
-- getPhysicalDeviceXcbPresentationSupportKHR,
-- getPhysicalDeviceXlibPresentationSupportKHR,
-- getRandROutputDisplayEXT, releaseDisplayEXT
data PhysicalDevice
PhysicalDevice :: Ptr PhysicalDevice_T -> InstanceCmds -> PhysicalDevice
[$sel:physicalDeviceHandle:PhysicalDevice] :: PhysicalDevice -> Ptr PhysicalDevice_T
[$sel:instanceCmds:PhysicalDevice] :: PhysicalDevice -> InstanceCmds
-- | An opaque type for representing pointers to VkPhysicalDevice handles
data PhysicalDevice_T
-- | VkDevice - Opaque handle to a device object
--
-- See Also
--
-- acquireFullScreenExclusiveModeEXT, acquireNextImage2KHR,
-- acquireNextImageKHR,
-- acquirePerformanceConfigurationINTEL,
-- acquireProfilingLockKHR, allocateCommandBuffers,
-- allocateDescriptorSets, allocateMemory,
-- bindAccelerationStructureMemoryKHR,
-- bindAccelerationStructureMemoryNV, bindBufferMemory,
-- bindBufferMemory2, bindBufferMemory2KHR,
-- bindImageMemory, bindImageMemory2,
-- bindImageMemory2KHR, buildAccelerationStructureKHR,
-- compileDeferredNV, copyAccelerationStructureKHR,
-- copyAccelerationStructureToMemoryKHR,
-- copyMemoryToAccelerationStructureKHR,
-- createAccelerationStructureKHR,
-- createAccelerationStructureNV, createBuffer,
-- createBufferView, createCommandPool,
-- createComputePipelines, createDeferredOperationKHR,
-- createDescriptorPool, createDescriptorSetLayout,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR, createDevice,
-- createEvent, createFence, createFramebuffer,
-- createGraphicsPipelines, createImage,
-- createImageView, createIndirectCommandsLayoutNV,
-- createPipelineCache, createPipelineLayout,
-- createPrivateDataSlotEXT, createQueryPool,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, createRenderPass,
-- createRenderPass2, createRenderPass2KHR,
-- createSampler, createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR, createSemaphore,
-- createShaderModule, createSharedSwapchainsKHR,
-- createSwapchainKHR, createValidationCacheEXT,
-- debugMarkerSetObjectNameEXT, debugMarkerSetObjectTagEXT,
-- deferredOperationJoinKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV, destroyBuffer,
-- destroyBufferView, destroyCommandPool,
-- destroyDeferredOperationKHR, destroyDescriptorPool,
-- destroyDescriptorSetLayout,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR, destroyDevice,
-- destroyEvent, destroyFence, destroyFramebuffer,
-- destroyImage, destroyImageView,
-- destroyIndirectCommandsLayoutNV, destroyPipeline,
-- destroyPipelineCache, destroyPipelineLayout,
-- destroyPrivateDataSlotEXT, destroyQueryPool,
-- destroyRenderPass, destroySampler,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR, destroySemaphore,
-- destroyShaderModule, destroySwapchainKHR,
-- destroyValidationCacheEXT, deviceWaitIdle,
-- displayPowerControlEXT, flushMappedMemoryRanges,
-- freeCommandBuffers, freeDescriptorSets,
-- freeMemory, getAccelerationStructureDeviceAddressKHR,
-- getAccelerationStructureHandleNV,
-- getAccelerationStructureMemoryRequirementsKHR,
-- getAccelerationStructureMemoryRequirementsNV,
-- getAndroidHardwareBufferPropertiesANDROID,
-- getBufferDeviceAddress, getBufferDeviceAddressEXT,
-- getBufferDeviceAddressKHR, getBufferMemoryRequirements,
-- getBufferMemoryRequirements2,
-- getBufferMemoryRequirements2KHR,
-- getBufferOpaqueCaptureAddress,
-- getBufferOpaqueCaptureAddressKHR,
-- getCalibratedTimestampsEXT,
-- getDeferredOperationMaxConcurrencyKHR,
-- getDeferredOperationResultKHR,
-- getDescriptorSetLayoutSupport,
-- getDescriptorSetLayoutSupportKHR,
-- getDeviceAccelerationStructureCompatibilityKHR,
-- getDeviceGroupPeerMemoryFeatures,
-- getDeviceGroupPeerMemoryFeaturesKHR,
-- getDeviceGroupPresentCapabilitiesKHR,
-- getDeviceGroupSurfacePresentModes2EXT,
-- getDeviceGroupSurfacePresentModesKHR,
-- getDeviceMemoryCommitment,
-- getDeviceMemoryOpaqueCaptureAddress,
-- getDeviceMemoryOpaqueCaptureAddressKHR,
-- getDeviceProcAddr, getDeviceQueue,
-- getDeviceQueue2, getEventStatus, getFenceFdKHR,
-- getFenceStatus, getFenceWin32HandleKHR,
-- getGeneratedCommandsMemoryRequirementsNV,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements, getImageMemoryRequirements2,
-- getImageMemoryRequirements2KHR,
-- getImageSparseMemoryRequirements,
-- getImageSparseMemoryRequirements2,
-- getImageSparseMemoryRequirements2KHR,
-- getImageSubresourceLayout, getImageViewAddressNVX,
-- getImageViewHandleNVX,
-- getMemoryAndroidHardwareBufferANDROID, getMemoryFdKHR,
-- getMemoryFdPropertiesKHR,
-- getMemoryHostPointerPropertiesEXT,
-- getMemoryWin32HandleKHR, getMemoryWin32HandleNV,
-- getMemoryWin32HandlePropertiesKHR,
-- getPastPresentationTimingGOOGLE,
-- getPerformanceParameterINTEL, getPipelineCacheData,
-- getPipelineExecutableInternalRepresentationsKHR,
-- getPipelineExecutablePropertiesKHR,
-- getPipelineExecutableStatisticsKHR, getPrivateDataEXT,
-- getQueryPoolResults,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV,
-- getRefreshCycleDurationGOOGLE, getRenderAreaGranularity,
-- getSemaphoreCounterValue, getSemaphoreCounterValueKHR,
-- getSemaphoreFdKHR, getSemaphoreWin32HandleKHR,
-- getShaderInfoAMD, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- getValidationCacheDataEXT, importFenceFdKHR,
-- importFenceWin32HandleKHR, importSemaphoreFdKHR,
-- importSemaphoreWin32HandleKHR,
-- initializePerformanceApiINTEL,
-- invalidateMappedMemoryRanges, mapMemory,
-- mergePipelineCaches, mergeValidationCachesEXT,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- releaseFullScreenExclusiveModeEXT,
-- releasePerformanceConfigurationINTEL,
-- releaseProfilingLockKHR, resetCommandPool,
-- resetDescriptorPool, resetEvent, resetFences,
-- resetQueryPool, resetQueryPoolEXT,
-- setDebugUtilsObjectNameEXT, setDebugUtilsObjectTagEXT,
-- setEvent, setHdrMetadataEXT, setLocalDimmingAMD,
-- setPrivateDataEXT, signalSemaphore,
-- signalSemaphoreKHR, trimCommandPool,
-- trimCommandPoolKHR, uninitializePerformanceApiINTEL,
-- unmapMemory, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR,
-- updateDescriptorSets, waitForFences,
-- waitSemaphores, waitSemaphoresKHR,
-- writeAccelerationStructuresPropertiesKHR
data Device
Device :: Ptr Device_T -> DeviceCmds -> Device
[$sel:deviceHandle:Device] :: Device -> Ptr Device_T
[$sel:deviceCmds:Device] :: Device -> DeviceCmds
-- | An opaque type for representing pointers to VkDevice handles
data Device_T
-- | VkQueue - Opaque handle to a queue object
--
-- See Also
--
-- getDeviceQueue, getDeviceQueue2,
-- getQueueCheckpointDataNV, queueBeginDebugUtilsLabelEXT,
-- queueBindSparse, queueEndDebugUtilsLabelEXT,
-- queueInsertDebugUtilsLabelEXT, queuePresentKHR,
-- queueSetPerformanceConfigurationINTEL, queueSubmit,
-- queueWaitIdle
data Queue
Queue :: Ptr Queue_T -> DeviceCmds -> Queue
[$sel:queueHandle:Queue] :: Queue -> Ptr Queue_T
[$sel:deviceCmds:Queue] :: Queue -> DeviceCmds
-- | An opaque type for representing pointers to VkQueue handles
data Queue_T
-- | VkCommandBuffer - Opaque handle to a command buffer object
--
-- See Also
--
-- SubmitInfo, allocateCommandBuffers,
-- beginCommandBuffer, cmdBeginConditionalRenderingEXT,
-- cmdBeginDebugUtilsLabelEXT, cmdBeginQuery,
-- cmdBeginQueryIndexedEXT, cmdBeginRenderPass,
-- cmdBeginRenderPass2, cmdBeginRenderPass2KHR,
-- cmdBeginTransformFeedbackEXT, cmdBindDescriptorSets,
-- cmdBindIndexBuffer, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, cmdBindShadingRateImageNV,
-- cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers, cmdBlitImage,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV, cmdClearAttachments,
-- cmdClearColorImage, cmdClearDepthStencilImage,
-- cmdCopyAccelerationStructureKHR,
-- cmdCopyAccelerationStructureNV,
-- cmdCopyAccelerationStructureToMemoryKHR, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImage,
-- cmdCopyImageToBuffer,
-- cmdCopyMemoryToAccelerationStructureKHR,
-- cmdCopyQueryPoolResults, cmdDebugMarkerBeginEXT,
-- cmdDebugMarkerEndEXT, cmdDebugMarkerInsertEXT,
-- cmdDispatch, cmdDispatchBase, cmdDispatchBaseKHR,
-- cmdDispatchIndirect, cmdDraw, cmdDrawIndexed,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdDrawMeshTasksNV,
-- cmdEndConditionalRenderingEXT, cmdEndDebugUtilsLabelEXT,
-- cmdEndQuery, cmdEndQueryIndexedEXT,
-- cmdEndRenderPass, cmdEndRenderPass2,
-- cmdEndRenderPass2KHR, cmdEndTransformFeedbackEXT,
-- cmdExecuteCommands, cmdExecuteGeneratedCommandsNV,
-- cmdFillBuffer, cmdInsertDebugUtilsLabelEXT,
-- cmdNextSubpass, cmdNextSubpass2,
-- cmdNextSubpass2KHR, cmdPipelineBarrier,
-- cmdPreprocessGeneratedCommandsNV, cmdPushConstants,
-- cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR, cmdResetEvent,
-- cmdResetQueryPool, cmdResolveImage,
-- cmdSetBlendConstants, cmdSetCheckpointNV,
-- cmdSetCoarseSampleOrderNV, cmdSetDepthBias,
-- cmdSetDepthBounds, cmdSetDeviceMask,
-- cmdSetDeviceMaskKHR, cmdSetDiscardRectangleEXT,
-- cmdSetEvent, cmdSetExclusiveScissorNV,
-- cmdSetLineStippleEXT, cmdSetLineWidth,
-- cmdSetPerformanceMarkerINTEL,
-- cmdSetPerformanceOverrideINTEL,
-- cmdSetPerformanceStreamMarkerINTEL,
-- cmdSetSampleLocationsEXT, cmdSetScissor,
-- cmdSetStencilCompareMask, cmdSetStencilReference,
-- cmdSetStencilWriteMask, cmdSetViewport,
-- cmdSetViewportShadingRatePaletteNV,
-- cmdSetViewportWScalingNV, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysKHR, cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWaitEvents,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteBufferMarkerAMD, cmdWriteTimestamp,
-- endCommandBuffer, freeCommandBuffers,
-- resetCommandBuffer
data CommandBuffer
CommandBuffer :: Ptr CommandBuffer_T -> DeviceCmds -> CommandBuffer
[$sel:commandBufferHandle:CommandBuffer] :: CommandBuffer -> Ptr CommandBuffer_T
[$sel:deviceCmds:CommandBuffer] :: CommandBuffer -> DeviceCmds
-- | An opaque type for representing pointers to VkCommandBuffer handles
data CommandBuffer_T
-- | VkDeviceMemory - Opaque handle to a device memory object
--
-- See Also
--
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryInfo, BindImageMemoryInfo,
-- DeviceMemoryOpaqueCaptureAddressInfo, MappedMemoryRange,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- SparseImageMemoryBind, SparseMemoryBind,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV, allocateMemory,
-- bindBufferMemory, bindImageMemory, freeMemory,
-- getDeviceMemoryCommitment, getMemoryWin32HandleNV,
-- mapMemory, unmapMemory
newtype DeviceMemory
DeviceMemory :: Word64 -> DeviceMemory
-- | VkCommandPool - Opaque handle to a command pool object
--
-- See Also
--
-- CommandBufferAllocateInfo, createCommandPool,
-- destroyCommandPool, freeCommandBuffers,
-- resetCommandPool, trimCommandPool,
-- trimCommandPoolKHR
newtype CommandPool
CommandPool :: Word64 -> CommandPool
-- | VkBuffer - Opaque handle to a buffer object
--
-- See Also
--
-- BindBufferMemoryInfo, BufferDeviceAddressInfo,
-- BufferMemoryBarrier, BufferMemoryRequirementsInfo2,
-- BufferViewCreateInfo, ConditionalRenderingBeginInfoEXT,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DescriptorBufferInfo, GeneratedCommandsInfoNV,
-- GeometryAABBNV, GeometryTrianglesNV,
-- IndirectCommandsStreamNV, MemoryDedicatedAllocateInfo,
-- SparseBufferMemoryBindInfo, StridedBufferRegionKHR,
-- bindBufferMemory, cmdBeginTransformFeedbackEXT,
-- cmdBindIndexBuffer, cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureNV, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImageToBuffer,
-- cmdCopyQueryPoolResults, cmdDispatchIndirect,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdEndTransformFeedbackEXT,
-- cmdFillBuffer, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWriteBufferMarkerAMD, createBuffer,
-- destroyBuffer, getBufferMemoryRequirements
newtype Buffer
Buffer :: Word64 -> Buffer
-- | VkBufferView - Opaque handle to a buffer view object
--
-- See Also
--
-- WriteDescriptorSet, createBufferView,
-- destroyBufferView
newtype BufferView
BufferView :: Word64 -> BufferView
-- | VkImage - Opaque handle to an image object
--
-- See Also
--
-- BindImageMemoryInfo,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImageSparseMemoryRequirementsInfo2, ImageViewCreateInfo,
-- MemoryDedicatedAllocateInfo, SparseImageMemoryBindInfo,
-- SparseImageOpaqueMemoryBindInfo, bindImageMemory,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage, createImage, destroyImage,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements,
-- getImageSparseMemoryRequirements,
-- getImageSubresourceLayout, getSwapchainImagesKHR
newtype Image
Image :: Word64 -> Image
-- | VkImageView - Opaque handle to an image view object
--
-- See Also
--
-- DescriptorImageInfo, FramebufferCreateInfo,
-- ImageViewHandleInfoNVX, RenderPassAttachmentBeginInfo,
-- cmdBindShadingRateImageNV, createImageView,
-- destroyImageView, getImageViewAddressNVX
newtype ImageView
ImageView :: Word64 -> ImageView
-- | VkShaderModule - Opaque handle to a shader module object
--
-- See Also
--
-- PipelineShaderStageCreateInfo, createShaderModule,
-- destroyShaderModule
newtype ShaderModule
ShaderModule :: Word64 -> ShaderModule
-- | VkPipeline - Opaque handle to a pipeline object
--
-- See Also
--
-- ComputePipelineCreateInfo, GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- PipelineExecutableInfoKHR, PipelineInfoKHR,
-- PipelineLibraryCreateInfoKHR,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, compileDeferredNV,
-- createComputePipelines, createGraphicsPipelines,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, destroyPipeline,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV, getShaderInfoAMD
newtype Pipeline
Pipeline :: Word64 -> Pipeline
-- | VkPipelineLayout - Opaque handle to a pipeline layout object
--
-- See Also
--
-- ComputePipelineCreateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- GraphicsPipelineCreateInfo,
-- IndirectCommandsLayoutTokenNV,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindDescriptorSets,
-- cmdPushConstants, cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR,
-- createPipelineLayout, destroyPipelineLayout
newtype PipelineLayout
PipelineLayout :: Word64 -> PipelineLayout
-- | VkSampler - Opaque handle to a sampler object
--
-- See Also
--
-- DescriptorImageInfo, DescriptorSetLayoutBinding,
-- ImageViewHandleInfoNVX, createSampler,
-- destroySampler
newtype Sampler
Sampler :: Word64 -> Sampler
-- | VkDescriptorSet - Opaque handle to a descriptor set object
--
-- See Also
--
-- CopyDescriptorSet, WriteDescriptorSet,
-- allocateDescriptorSets, cmdBindDescriptorSets,
-- freeDescriptorSets, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorSet
DescriptorSet :: Word64 -> DescriptorSet
-- | VkDescriptorSetLayout - Opaque handle to a descriptor set layout
-- object
--
-- See Also
--
-- DescriptorSetAllocateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- PipelineLayoutCreateInfo, createDescriptorSetLayout,
-- destroyDescriptorSetLayout
newtype DescriptorSetLayout
DescriptorSetLayout :: Word64 -> DescriptorSetLayout
-- | VkDescriptorPool - Opaque handle to a descriptor pool object
--
-- See Also
--
-- DescriptorSetAllocateInfo, createDescriptorPool,
-- destroyDescriptorPool, freeDescriptorSets,
-- resetDescriptorPool
newtype DescriptorPool
DescriptorPool :: Word64 -> DescriptorPool
-- | VkFence - Opaque handle to a fence object
--
-- See Also
--
-- AcquireNextImageInfoKHR, FenceGetFdInfoKHR,
-- FenceGetWin32HandleInfoKHR, ImportFenceFdInfoKHR,
-- ImportFenceWin32HandleInfoKHR, acquireNextImageKHR,
-- createFence, destroyFence, getFenceStatus,
-- queueBindSparse, queueSubmit,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- resetFences, waitForFences
newtype Fence
Fence :: Word64 -> Fence
-- | VkSemaphore - Opaque handle to a semaphore object
--
-- See Also
--
-- AcquireNextImageInfoKHR, BindSparseInfo,
-- ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR, PresentInfoKHR,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreWaitInfo,
-- SubmitInfo, acquireNextImageKHR, createSemaphore,
-- destroySemaphore, getSemaphoreCounterValue,
-- getSemaphoreCounterValueKHR
newtype Semaphore
Semaphore :: Word64 -> Semaphore
-- | VkEvent - Opaque handle to an event object
--
-- See Also
--
-- cmdResetEvent, cmdSetEvent, cmdWaitEvents,
-- createEvent, destroyEvent, getEventStatus,
-- resetEvent, setEvent
newtype Event
Event :: Word64 -> Event
-- | VkQueryPool - Opaque handle to a query pool object
--
-- See Also
--
-- cmdBeginQuery, cmdBeginQueryIndexedEXT,
-- cmdCopyQueryPoolResults, cmdEndQuery,
-- cmdEndQueryIndexedEXT, cmdResetQueryPool,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteTimestamp, createQueryPool,
-- destroyQueryPool, getQueryPoolResults,
-- resetQueryPool, resetQueryPoolEXT
newtype QueryPool
QueryPool :: Word64 -> QueryPool
-- | VkFramebuffer - Opaque handle to a framebuffer object
--
-- See Also
--
-- CommandBufferInheritanceInfo, RenderPassBeginInfo,
-- createFramebuffer, destroyFramebuffer
newtype Framebuffer
Framebuffer :: Word64 -> Framebuffer
-- | VkRenderPass - Opaque handle to a render pass object
--
-- See Also
--
-- CommandBufferInheritanceInfo, FramebufferCreateInfo,
-- GraphicsPipelineCreateInfo, RenderPassBeginInfo,
-- createRenderPass, createRenderPass2,
-- createRenderPass2KHR, destroyRenderPass,
-- getRenderAreaGranularity
newtype RenderPass
RenderPass :: Word64 -> RenderPass
-- | VkPipelineCache - Opaque handle to a pipeline cache object
--
-- See Also
--
-- createComputePipelines, createGraphicsPipelines,
-- createPipelineCache, createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, destroyPipelineCache,
-- getPipelineCacheData, mergePipelineCaches
newtype PipelineCache
PipelineCache :: Word64 -> PipelineCache
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.PipelineCache
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.PipelineCache
instance Foreign.Storable.Storable Vulkan.Core10.Handles.PipelineCache
instance GHC.Classes.Ord Vulkan.Core10.Handles.PipelineCache
instance GHC.Classes.Eq Vulkan.Core10.Handles.PipelineCache
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.RenderPass
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.RenderPass
instance Foreign.Storable.Storable Vulkan.Core10.Handles.RenderPass
instance GHC.Classes.Ord Vulkan.Core10.Handles.RenderPass
instance GHC.Classes.Eq Vulkan.Core10.Handles.RenderPass
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Framebuffer
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Framebuffer
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Framebuffer
instance GHC.Classes.Ord Vulkan.Core10.Handles.Framebuffer
instance GHC.Classes.Eq Vulkan.Core10.Handles.Framebuffer
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.QueryPool
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.QueryPool
instance Foreign.Storable.Storable Vulkan.Core10.Handles.QueryPool
instance GHC.Classes.Ord Vulkan.Core10.Handles.QueryPool
instance GHC.Classes.Eq Vulkan.Core10.Handles.QueryPool
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Event
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Event
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Event
instance GHC.Classes.Ord Vulkan.Core10.Handles.Event
instance GHC.Classes.Eq Vulkan.Core10.Handles.Event
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Semaphore
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Semaphore
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Semaphore
instance GHC.Classes.Ord Vulkan.Core10.Handles.Semaphore
instance GHC.Classes.Eq Vulkan.Core10.Handles.Semaphore
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Fence
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Fence
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Fence
instance GHC.Classes.Ord Vulkan.Core10.Handles.Fence
instance GHC.Classes.Eq Vulkan.Core10.Handles.Fence
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.DescriptorPool
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.DescriptorPool
instance Foreign.Storable.Storable Vulkan.Core10.Handles.DescriptorPool
instance GHC.Classes.Ord Vulkan.Core10.Handles.DescriptorPool
instance GHC.Classes.Eq Vulkan.Core10.Handles.DescriptorPool
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.DescriptorSetLayout
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.DescriptorSetLayout
instance Foreign.Storable.Storable Vulkan.Core10.Handles.DescriptorSetLayout
instance GHC.Classes.Ord Vulkan.Core10.Handles.DescriptorSetLayout
instance GHC.Classes.Eq Vulkan.Core10.Handles.DescriptorSetLayout
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.DescriptorSet
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.DescriptorSet
instance Foreign.Storable.Storable Vulkan.Core10.Handles.DescriptorSet
instance GHC.Classes.Ord Vulkan.Core10.Handles.DescriptorSet
instance GHC.Classes.Eq Vulkan.Core10.Handles.DescriptorSet
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Sampler
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Sampler
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Sampler
instance GHC.Classes.Ord Vulkan.Core10.Handles.Sampler
instance GHC.Classes.Eq Vulkan.Core10.Handles.Sampler
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.PipelineLayout
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.PipelineLayout
instance Foreign.Storable.Storable Vulkan.Core10.Handles.PipelineLayout
instance GHC.Classes.Ord Vulkan.Core10.Handles.PipelineLayout
instance GHC.Classes.Eq Vulkan.Core10.Handles.PipelineLayout
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Pipeline
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Pipeline
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Pipeline
instance GHC.Classes.Ord Vulkan.Core10.Handles.Pipeline
instance GHC.Classes.Eq Vulkan.Core10.Handles.Pipeline
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.ShaderModule
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.ShaderModule
instance Foreign.Storable.Storable Vulkan.Core10.Handles.ShaderModule
instance GHC.Classes.Ord Vulkan.Core10.Handles.ShaderModule
instance GHC.Classes.Eq Vulkan.Core10.Handles.ShaderModule
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.ImageView
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.ImageView
instance Foreign.Storable.Storable Vulkan.Core10.Handles.ImageView
instance GHC.Classes.Ord Vulkan.Core10.Handles.ImageView
instance GHC.Classes.Eq Vulkan.Core10.Handles.ImageView
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Image
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Image
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Image
instance GHC.Classes.Ord Vulkan.Core10.Handles.Image
instance GHC.Classes.Eq Vulkan.Core10.Handles.Image
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.BufferView
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.BufferView
instance Foreign.Storable.Storable Vulkan.Core10.Handles.BufferView
instance GHC.Classes.Ord Vulkan.Core10.Handles.BufferView
instance GHC.Classes.Eq Vulkan.Core10.Handles.BufferView
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Buffer
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Buffer
instance Foreign.Storable.Storable Vulkan.Core10.Handles.Buffer
instance GHC.Classes.Ord Vulkan.Core10.Handles.Buffer
instance GHC.Classes.Eq Vulkan.Core10.Handles.Buffer
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.CommandPool
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.CommandPool
instance Foreign.Storable.Storable Vulkan.Core10.Handles.CommandPool
instance GHC.Classes.Ord Vulkan.Core10.Handles.CommandPool
instance GHC.Classes.Eq Vulkan.Core10.Handles.CommandPool
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.DeviceMemory
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.DeviceMemory
instance Foreign.Storable.Storable Vulkan.Core10.Handles.DeviceMemory
instance GHC.Classes.Ord Vulkan.Core10.Handles.DeviceMemory
instance GHC.Classes.Eq Vulkan.Core10.Handles.DeviceMemory
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.CommandBuffer
instance GHC.Show.Show Vulkan.Core10.Handles.CommandBuffer
instance GHC.Classes.Eq Vulkan.Core10.Handles.CommandBuffer
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Queue
instance GHC.Show.Show Vulkan.Core10.Handles.Queue
instance GHC.Classes.Eq Vulkan.Core10.Handles.Queue
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Device
instance GHC.Show.Show Vulkan.Core10.Handles.Device
instance GHC.Classes.Eq Vulkan.Core10.Handles.Device
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.PhysicalDevice
instance GHC.Show.Show Vulkan.Core10.Handles.PhysicalDevice
instance GHC.Classes.Eq Vulkan.Core10.Handles.PhysicalDevice
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core10.Handles.Instance
instance GHC.Show.Show Vulkan.Core10.Handles.Instance
instance GHC.Classes.Eq Vulkan.Core10.Handles.Instance
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.PipelineCache
instance GHC.Show.Show Vulkan.Core10.Handles.PipelineCache
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.RenderPass
instance GHC.Show.Show Vulkan.Core10.Handles.RenderPass
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Framebuffer
instance GHC.Show.Show Vulkan.Core10.Handles.Framebuffer
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.QueryPool
instance GHC.Show.Show Vulkan.Core10.Handles.QueryPool
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Event
instance GHC.Show.Show Vulkan.Core10.Handles.Event
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Semaphore
instance GHC.Show.Show Vulkan.Core10.Handles.Semaphore
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Fence
instance GHC.Show.Show Vulkan.Core10.Handles.Fence
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.DescriptorPool
instance GHC.Show.Show Vulkan.Core10.Handles.DescriptorPool
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.DescriptorSetLayout
instance GHC.Show.Show Vulkan.Core10.Handles.DescriptorSetLayout
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.DescriptorSet
instance GHC.Show.Show Vulkan.Core10.Handles.DescriptorSet
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Sampler
instance GHC.Show.Show Vulkan.Core10.Handles.Sampler
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.PipelineLayout
instance GHC.Show.Show Vulkan.Core10.Handles.PipelineLayout
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Pipeline
instance GHC.Show.Show Vulkan.Core10.Handles.Pipeline
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.ShaderModule
instance GHC.Show.Show Vulkan.Core10.Handles.ShaderModule
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.ImageView
instance GHC.Show.Show Vulkan.Core10.Handles.ImageView
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Image
instance GHC.Show.Show Vulkan.Core10.Handles.Image
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.BufferView
instance GHC.Show.Show Vulkan.Core10.Handles.BufferView
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Buffer
instance GHC.Show.Show Vulkan.Core10.Handles.Buffer
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.CommandPool
instance GHC.Show.Show Vulkan.Core10.Handles.CommandPool
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.DeviceMemory
instance GHC.Show.Show Vulkan.Core10.Handles.DeviceMemory
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.CommandBuffer
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.CommandBuffer
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Queue
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Queue
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Device
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Device
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.PhysicalDevice
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.PhysicalDevice
instance Vulkan.Zero.Zero Vulkan.Core10.Handles.Instance
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core10.Handles.Instance
module Vulkan.Extensions.VK_NV_win32_keyed_mutex
-- | VkWin32KeyedMutexAcquireReleaseInfoNV - use Windows keyex mutex
-- mechanism to synchronize work
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If acquireCount is not 0, pAcquireSyncs
-- must be a valid pointer to an array of acquireCount
-- valid DeviceMemory handles
-- - If acquireCount is not 0, pAcquireKeys
-- must be a valid pointer to an array of acquireCount
-- uint64_t values
-- - If acquireCount is not 0,
-- pAcquireTimeoutMilliseconds must be a valid pointer to
-- an array of acquireCount uint32_t values
-- - If releaseCount is not 0, pReleaseSyncs
-- must be a valid pointer to an array of releaseCount
-- valid DeviceMemory handles
-- - If releaseCount is not 0, pReleaseKeys
-- must be a valid pointer to an array of releaseCount
-- uint64_t values
-- - Both of the elements of pAcquireSyncs, and the elements
-- of pReleaseSyncs that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- See Also
--
-- DeviceMemory, StructureType
data Win32KeyedMutexAcquireReleaseInfoNV
Win32KeyedMutexAcquireReleaseInfoNV :: Vector DeviceMemory -> Vector Word64 -> Vector Word32 -> Vector DeviceMemory -> Vector Word64 -> Win32KeyedMutexAcquireReleaseInfoNV
-- | pAcquireSyncs is a pointer to an array of DeviceMemory
-- objects which were imported from Direct3D 11 resources.
[$sel:acquireSyncs:Win32KeyedMutexAcquireReleaseInfoNV] :: Win32KeyedMutexAcquireReleaseInfoNV -> Vector DeviceMemory
-- | pAcquireKeys is a pointer to an array of mutex key values to
-- wait for prior to beginning the submitted work. Entries refer to the
-- keyed mutex associated with the corresponding entries in
-- pAcquireSyncs.
[$sel:acquireKeys:Win32KeyedMutexAcquireReleaseInfoNV] :: Win32KeyedMutexAcquireReleaseInfoNV -> Vector Word64
-- | pAcquireTimeoutMilliseconds is a pointer to an array of
-- timeout values, in millisecond units, for each acquire specified in
-- pAcquireKeys.
[$sel:acquireTimeoutMilliseconds:Win32KeyedMutexAcquireReleaseInfoNV] :: Win32KeyedMutexAcquireReleaseInfoNV -> Vector Word32
-- | pReleaseSyncs is a pointer to an array of DeviceMemory
-- objects which were imported from Direct3D 11 resources.
[$sel:releaseSyncs:Win32KeyedMutexAcquireReleaseInfoNV] :: Win32KeyedMutexAcquireReleaseInfoNV -> Vector DeviceMemory
-- | pReleaseKeys is a pointer to an array of mutex key values to
-- set when the submitted work has completed. Entries refer to the keyed
-- mutex associated with the corresponding entries in
-- pReleaseSyncs.
[$sel:releaseKeys:Win32KeyedMutexAcquireReleaseInfoNV] :: Win32KeyedMutexAcquireReleaseInfoNV -> Vector Word64
type NV_WIN32_KEYED_MUTEX_SPEC_VERSION = 2
pattern NV_WIN32_KEYED_MUTEX_SPEC_VERSION :: forall a. Integral a => a
type NV_WIN32_KEYED_MUTEX_EXTENSION_NAME = "VK_NV_win32_keyed_mutex"
pattern NV_WIN32_KEYED_MUTEX_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoNV
module Vulkan.Extensions.VK_NV_shading_rate_image
-- | vkCmdBindShadingRateImageNV - Bind a shading rate image on a command
-- buffer
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If imageView is not NULL_HANDLE,
-- imageView must be a valid ImageView handle
-- - imageLayout must be a valid ImageLayout
-- value
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - Both of commandBuffer, and imageView that are
-- valid handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, ImageLayout, ImageView
cmdBindShadingRateImageNV :: forall io. MonadIO io => CommandBuffer -> ImageView -> ImageLayout -> io ()
-- | vkCmdSetViewportShadingRatePaletteNV - Set shading rate image palettes
-- on a command buffer
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pShadingRatePalettes must be a valid pointer to an
-- array of viewportCount valid ShadingRatePaletteNV
-- structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - viewportCount must be greater than 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, ShadingRatePaletteNV
cmdSetViewportShadingRatePaletteNV :: forall io. MonadIO io => CommandBuffer -> ("firstViewport" ::: Word32) -> ("shadingRatePalettes" ::: Vector ShadingRatePaletteNV) -> io ()
-- | vkCmdSetCoarseSampleOrderNV - Set sample order for coarse fragments on
-- a command buffer
--
-- Description
--
-- If sampleOrderType is
-- COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV, the coverage sample order
-- used for any combination of fragment area and coverage sample count
-- not enumerated in pCustomSampleOrders will be identical to
-- that used for COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV.
--
-- Valid Usage
--
--
--
--
-- - The array pCustomSampleOrders must not contain two
-- structures with matching values for both the shadingRate and
-- sampleCount members
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - sampleOrderType must be a valid
-- CoarseSampleOrderTypeNV value
-- - If customSampleOrderCount is not 0,
-- pCustomSampleOrders must be a valid pointer to an
-- array of customSampleOrderCount valid
-- CoarseSampleOrderCustomNV structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CoarseSampleOrderCustomNV, CoarseSampleOrderTypeNV,
-- CommandBuffer
cmdSetCoarseSampleOrderNV :: forall io. MonadIO io => CommandBuffer -> CoarseSampleOrderTypeNV -> ("customSampleOrders" ::: Vector CoarseSampleOrderCustomNV) -> io ()
-- | VkShadingRatePaletteNV - Structure specifying a single shading rate
-- palette
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- ShadingRatePaletteEntryNV,
-- cmdSetViewportShadingRatePaletteNV
data ShadingRatePaletteNV
ShadingRatePaletteNV :: Vector ShadingRatePaletteEntryNV -> ShadingRatePaletteNV
-- | pShadingRatePaletteEntries is a pointer to an array of
-- ShadingRatePaletteEntryNV enums defining the shading rate for
-- each palette entry.
--
-- pShadingRatePaletteEntries must be a valid pointer to
-- an array of shadingRatePaletteEntryCount valid
-- ShadingRatePaletteEntryNV values
[$sel:shadingRatePaletteEntries:ShadingRatePaletteNV] :: ShadingRatePaletteNV -> Vector ShadingRatePaletteEntryNV
-- | VkPipelineViewportShadingRateImageStateCreateInfoNV - Structure
-- specifying parameters controlling shading rate image usage
--
-- Description
--
-- If this structure is not present, shadingRateImageEnable is
-- considered to be FALSE, and the shading rate image and palettes
-- are not used.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - viewportCount must be greater than 0
--
--
-- See Also
--
-- Bool32, ShadingRatePaletteNV, StructureType
data PipelineViewportShadingRateImageStateCreateInfoNV
PipelineViewportShadingRateImageStateCreateInfoNV :: Bool -> Vector ShadingRatePaletteNV -> PipelineViewportShadingRateImageStateCreateInfoNV
-- | shadingRateImageEnable specifies whether shading rate image
-- and palettes are used during rasterization.
[$sel:shadingRateImageEnable:PipelineViewportShadingRateImageStateCreateInfoNV] :: PipelineViewportShadingRateImageStateCreateInfoNV -> Bool
-- | pShadingRatePalettes is a pointer to an array of
-- ShadingRatePaletteNV structures defining the palette for each
-- viewport. If the shading rate palette state is dynamic, this member is
-- ignored.
[$sel:shadingRatePalettes:PipelineViewportShadingRateImageStateCreateInfoNV] :: PipelineViewportShadingRateImageStateCreateInfoNV -> Vector ShadingRatePaletteNV
-- | VkPhysicalDeviceShadingRateImageFeaturesNV - Structure describing
-- shading rate image features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceShadingRateImageFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- See Shading Rate Image for more information.
--
-- If the PhysicalDeviceShadingRateImageFeaturesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceShadingRateImageFeaturesNV can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceShadingRateImageFeaturesNV
PhysicalDeviceShadingRateImageFeaturesNV :: Bool -> Bool -> PhysicalDeviceShadingRateImageFeaturesNV
-- | shadingRateImage indicates that the implementation supports
-- the use of a shading rate image to derive an effective shading rate
-- for fragment processing. It also indicates that the implementation
-- supports the ShadingRateNV SPIR-V execution mode.
[$sel:shadingRateImage:PhysicalDeviceShadingRateImageFeaturesNV] :: PhysicalDeviceShadingRateImageFeaturesNV -> Bool
-- | shadingRateCoarseSampleOrder indicates that the
-- implementation supports a user-configurable ordering of coverage
-- samples in fragments larger than one pixel.
[$sel:shadingRateCoarseSampleOrder:PhysicalDeviceShadingRateImageFeaturesNV] :: PhysicalDeviceShadingRateImageFeaturesNV -> Bool
-- | VkPhysicalDeviceShadingRateImagePropertiesNV - Structure describing
-- shading rate image limits that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceShadingRateImagePropertiesNV
-- structure describe the following implementation-dependent properties
-- related to the shading rate image feature:
--
-- Description
--
-- If the PhysicalDeviceShadingRateImagePropertiesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Extent2D, StructureType
data PhysicalDeviceShadingRateImagePropertiesNV
PhysicalDeviceShadingRateImagePropertiesNV :: Extent2D -> Word32 -> Word32 -> PhysicalDeviceShadingRateImagePropertiesNV
-- | shadingRateTexelSize indicates the width and height of the
-- portion of the framebuffer corresponding to each texel in the shading
-- rate image.
[$sel:shadingRateTexelSize:PhysicalDeviceShadingRateImagePropertiesNV] :: PhysicalDeviceShadingRateImagePropertiesNV -> Extent2D
-- | shadingRatePaletteSize indicates the maximum number of
-- palette entries supported for the shading rate image.
[$sel:shadingRatePaletteSize:PhysicalDeviceShadingRateImagePropertiesNV] :: PhysicalDeviceShadingRateImagePropertiesNV -> Word32
-- | shadingRateMaxCoarseSamples specifies the maximum number of
-- coverage samples supported in a single fragment. If the product of the
-- fragment size derived from the base shading rate and the number of
-- coverage samples per pixel exceeds this limit, the final shading rate
-- will be adjusted so that its product does not exceed the limit.
[$sel:shadingRateMaxCoarseSamples:PhysicalDeviceShadingRateImagePropertiesNV] :: PhysicalDeviceShadingRateImagePropertiesNV -> Word32
-- | VkCoarseSampleLocationNV - Structure specifying parameters controlling
-- shading rate image usage
--
-- Valid Usage
--
-- See Also
--
-- CoarseSampleOrderCustomNV
data CoarseSampleLocationNV
CoarseSampleLocationNV :: Word32 -> Word32 -> Word32 -> CoarseSampleLocationNV
-- | pixelX is added to the x coordinate of the upper-leftmost
-- pixel of each fragment to identify the pixel containing the coverage
-- sample.
--
-- pixelX must be less than the width (in pixels) of the
-- fragment
[$sel:pixelX:CoarseSampleLocationNV] :: CoarseSampleLocationNV -> Word32
-- | pixelY is added to the y coordinate of the upper-leftmost
-- pixel of each fragment to identify the pixel containing the coverage
-- sample.
--
-- pixelY must be less than the height (in pixels) of the
-- fragment
[$sel:pixelY:CoarseSampleLocationNV] :: CoarseSampleLocationNV -> Word32
-- | sample is the number of the coverage sample in the pixel
-- identified by pixelX and pixelY.
--
-- sample must be less than the number of coverage
-- samples in each pixel belonging to the fragment
[$sel:sample:CoarseSampleLocationNV] :: CoarseSampleLocationNV -> Word32
-- | VkCoarseSampleOrderCustomNV - Structure specifying parameters
-- controlling shading rate image usage
--
-- Description
--
-- When using a custom sample ordering, element j in
-- pSampleLocations specifies a specific pixel location and
-- sample index that corresponds to coverage index j
-- in the multi-pixel fragment.
--
-- Valid Usage
--
--
-- - shadingRate must be a shading rate that generates
-- fragments with more than one pixel
--
--
--
-- - sampleCount must correspond to a sample count
-- enumerated in SampleCountFlags whose corresponding bit is set
-- in
-- PhysicalDeviceLimits::framebufferNoAttachmentsSampleCounts
-- - sampleLocationCount must be equal to the product
-- of sampleCount, the fragment width for shadingRate,
-- and the fragment height for shadingRate
-- - sampleLocationCount must be less than or equal to
-- the value of
-- PhysicalDeviceShadingRateImagePropertiesNV::shadingRateMaxCoarseSamples
-- - The array pSampleLocations must contain exactly
-- one entry for every combination of valid values for pixelX,
-- pixelY, and sample in the structure
-- CoarseSampleOrderCustomNV
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pSampleLocations must be a valid pointer to an
-- array of sampleLocationCount CoarseSampleLocationNV
-- structures
-- - sampleLocationCount must be greater than
-- 0
--
--
-- See Also
--
-- CoarseSampleLocationNV,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- ShadingRatePaletteEntryNV, cmdSetCoarseSampleOrderNV
data CoarseSampleOrderCustomNV
CoarseSampleOrderCustomNV :: ShadingRatePaletteEntryNV -> Word32 -> Vector CoarseSampleLocationNV -> CoarseSampleOrderCustomNV
-- | shadingRate is a shading rate palette entry that identifies
-- the fragment width and height for the combination of fragment area and
-- per-pixel coverage sample count to control.
[$sel:shadingRate:CoarseSampleOrderCustomNV] :: CoarseSampleOrderCustomNV -> ShadingRatePaletteEntryNV
-- | sampleCount identifies the per-pixel coverage sample count
-- for the combination of fragment area and coverage sample count to
-- control.
[$sel:sampleCount:CoarseSampleOrderCustomNV] :: CoarseSampleOrderCustomNV -> Word32
-- | pSampleLocations is a pointer to an array of
-- CoarseSampleOrderCustomNV structures specifying the location of
-- each sample in the custom ordering.
[$sel:sampleLocations:CoarseSampleOrderCustomNV] :: CoarseSampleOrderCustomNV -> Vector CoarseSampleLocationNV
-- | VkPipelineViewportCoarseSampleOrderStateCreateInfoNV - Structure
-- specifying parameters controlling sample order in coarse fragments
--
-- Description
--
-- If this structure is not present, sampleOrderType is
-- considered to be COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV.
--
-- If sampleOrderType is
-- COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV, the coverage sample order
-- used for any combination of fragment area and coverage sample count
-- not enumerated in pCustomSampleOrders will be identical to
-- that used for COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV.
--
-- If the pipeline was created with
-- DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV, the contents of
-- this structure (if present) are ignored, and the coverage sample order
-- is instead specified by cmdSetCoarseSampleOrderNV.
--
-- Valid Usage
--
--
--
--
-- - The array pCustomSampleOrders must not contain two
-- structures with matching values for both the shadingRate and
-- sampleCount members
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - sampleOrderType must be a valid
-- CoarseSampleOrderTypeNV value
-- - If customSampleOrderCount is not 0,
-- pCustomSampleOrders must be a valid pointer to an
-- array of customSampleOrderCount valid
-- CoarseSampleOrderCustomNV structures
--
--
-- See Also
--
-- CoarseSampleOrderCustomNV, CoarseSampleOrderTypeNV,
-- StructureType
data PipelineViewportCoarseSampleOrderStateCreateInfoNV
PipelineViewportCoarseSampleOrderStateCreateInfoNV :: CoarseSampleOrderTypeNV -> Vector CoarseSampleOrderCustomNV -> PipelineViewportCoarseSampleOrderStateCreateInfoNV
-- | sampleOrderType specifies the mechanism used to order
-- coverage samples in fragments larger than one pixel.
[$sel:sampleOrderType:PipelineViewportCoarseSampleOrderStateCreateInfoNV] :: PipelineViewportCoarseSampleOrderStateCreateInfoNV -> CoarseSampleOrderTypeNV
-- | pCustomSampleOrders is a pointer to an array of
-- customSampleOrderCount CoarseSampleOrderCustomNV
-- structures, each of which specifies the coverage sample order for a
-- single combination of fragment area and coverage sample count.
[$sel:customSampleOrders:PipelineViewportCoarseSampleOrderStateCreateInfoNV] :: PipelineViewportCoarseSampleOrderStateCreateInfoNV -> Vector CoarseSampleOrderCustomNV
-- | VkShadingRatePaletteEntryNV - Shading rate image palette entry types
--
-- Description
--
-- The following table indicates the width and height (in pixels) of each
-- fragment generated using the indicated shading rate, as well as the
-- maximum number of fragment shader invocations launched for each
-- fragment. When processing regions of a primitive that have a shading
-- rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no
-- fragments will be generated in that region.
--
-- TODO: table
--
-- See Also
--
-- CoarseSampleOrderCustomNV, ShadingRatePaletteNV
newtype ShadingRatePaletteEntryNV
ShadingRatePaletteEntryNV :: Int32 -> ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV :: ShadingRatePaletteEntryNV
pattern SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV :: ShadingRatePaletteEntryNV
-- | VkCoarseSampleOrderTypeNV - Shading rate image sample ordering types
--
-- See Also
--
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- cmdSetCoarseSampleOrderNV
newtype CoarseSampleOrderTypeNV
CoarseSampleOrderTypeNV :: Int32 -> CoarseSampleOrderTypeNV
-- | COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV specifies that coverage
-- samples will be ordered in an implementation-dependent manner.
pattern COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV :: CoarseSampleOrderTypeNV
-- | COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV specifies that coverage
-- samples will be ordered according to the array of custom orderings
-- provided in either the pCustomSampleOrders member of
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV or the
-- pCustomSampleOrders member of
-- cmdSetCoarseSampleOrderNV.
pattern COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV :: CoarseSampleOrderTypeNV
-- | COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV specifies that coverage
-- samples will be ordered sequentially, sorted first by pixel coordinate
-- (in row-major order) and then by sample index.
pattern COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV :: CoarseSampleOrderTypeNV
-- | COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV specifies that
-- coverage samples will be ordered sequentially, sorted first by
-- sample index and then by pixel coordinate (in row-major order).
pattern COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV :: CoarseSampleOrderTypeNV
type NV_SHADING_RATE_IMAGE_SPEC_VERSION = 3
pattern NV_SHADING_RATE_IMAGE_SPEC_VERSION :: forall a. Integral a => a
type NV_SHADING_RATE_IMAGE_EXTENSION_NAME = "VK_NV_shading_rate_image"
pattern NV_SHADING_RATE_IMAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderTypeNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderTypeNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderTypeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderTypeNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteEntryNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteEntryNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteEntryNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteEntryNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportShadingRateImageStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportShadingRateImageStateCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImagePropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImagePropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderCustomNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderCustomNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportCoarseSampleOrderStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportCoarseSampleOrderStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportCoarseSampleOrderStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportCoarseSampleOrderStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportCoarseSampleOrderStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderTypeNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderTypeNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportShadingRateImageStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportShadingRateImageStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.PipelineViewportShadingRateImageStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderCustomNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderCustomNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleOrderCustomNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteEntryNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_shading_rate_image.ShadingRatePaletteEntryNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.CoarseSampleLocationNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImagePropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImagePropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImagePropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_shading_rate_image.PhysicalDeviceShadingRateImageFeaturesNV
module Vulkan.Extensions.VK_NV_scissor_exclusive
-- | vkCmdSetExclusiveScissorNV - Set the dynamic exclusive scissor
-- rectangles on a command buffer
--
-- Description
--
-- The scissor rectangles taken from element i of
-- pExclusiveScissors replace the current state for the scissor
-- index firstExclusiveScissor + i, for i in [0,
-- exclusiveScissorCount).
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV set
-- in PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage
--
--
--
--
-- - firstExclusiveScissor must be less than
-- PhysicalDeviceLimits::maxViewports
-- - The sum of firstExclusiveScissor and
-- exclusiveScissorCount must be between 1 and
-- PhysicalDeviceLimits::maxViewports, inclusive
-- - If the multiple viewports feature is not enabled,
-- firstExclusiveScissor must be 0
-- - If the multiple viewports feature is not enabled,
-- exclusiveScissorCount must be 1
-- - The x and y members of offset in each
-- member of pExclusiveScissors must be greater than or
-- equal to 0
-- - Evaluation of (offset.x + extent.width) for each
-- member of pExclusiveScissors must not cause a signed
-- integer addition overflow
-- - Evaluation of (offset.y + extent.height) for
-- each member of pExclusiveScissors must not cause a
-- signed integer addition overflow
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pExclusiveScissors must be a valid pointer to an
-- array of exclusiveScissorCount Rect2D structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - exclusiveScissorCount must be greater than
-- 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Rect2D
cmdSetExclusiveScissorNV :: forall io. MonadIO io => CommandBuffer -> ("firstExclusiveScissor" ::: Word32) -> ("exclusiveScissors" ::: Vector Rect2D) -> io ()
-- | VkPhysicalDeviceExclusiveScissorFeaturesNV - Structure describing
-- exclusive scissor features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceExclusiveScissorFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- See Exclusive Scissor Test for more information.
--
-- If the PhysicalDeviceExclusiveScissorFeaturesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceExclusiveScissorFeaturesNV can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceExclusiveScissorFeaturesNV
PhysicalDeviceExclusiveScissorFeaturesNV :: Bool -> PhysicalDeviceExclusiveScissorFeaturesNV
-- | exclusiveScissor indicates that the implementation supports
-- the exclusive scissor test.
[$sel:exclusiveScissor:PhysicalDeviceExclusiveScissorFeaturesNV] :: PhysicalDeviceExclusiveScissorFeaturesNV -> Bool
-- | VkPipelineViewportExclusiveScissorStateCreateInfoNV - Structure
-- specifying parameters controlling exclusive scissor testing
--
-- Description
--
-- If the DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV dynamic state is
-- enabled for a pipeline, the pExclusiveScissors member is
-- ignored.
--
-- When this structure is included in the pNext chain of
-- GraphicsPipelineCreateInfo, it defines parameters of the
-- exclusive scissor test. If this structure is not included in the
-- pNext chain, it is equivalent to specifying this structure
-- with a exclusiveScissorCount of 0.
--
-- Valid Usage
--
--
-- - If the multiple viewports feature is not enabled,
-- exclusiveScissorCount must be 0 or
-- 1
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Rect2D, StructureType
data PipelineViewportExclusiveScissorStateCreateInfoNV
PipelineViewportExclusiveScissorStateCreateInfoNV :: Vector Rect2D -> PipelineViewportExclusiveScissorStateCreateInfoNV
-- | pExclusiveScissors is a pointer to an array of Rect2D
-- structures defining exclusive scissor rectangles.
[$sel:exclusiveScissors:PipelineViewportExclusiveScissorStateCreateInfoNV] :: PipelineViewportExclusiveScissorStateCreateInfoNV -> Vector Rect2D
type NV_SCISSOR_EXCLUSIVE_SPEC_VERSION = 1
pattern NV_SCISSOR_EXCLUSIVE_SPEC_VERSION :: forall a. Integral a => a
type NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME = "VK_NV_scissor_exclusive"
pattern NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_scissor_exclusive.PipelineViewportExclusiveScissorStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_scissor_exclusive.PipelineViewportExclusiveScissorStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_scissor_exclusive.PipelineViewportExclusiveScissorStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_scissor_exclusive.PipelineViewportExclusiveScissorStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_scissor_exclusive.PipelineViewportExclusiveScissorStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_scissor_exclusive.PhysicalDeviceExclusiveScissorFeaturesNV
module Vulkan.Extensions.VK_NV_mesh_shader
-- | vkCmdDrawMeshTasksNV - Draw mesh task work items
--
-- Description
--
-- When the command is executed, a global workgroup consisting of
-- taskCount local workgroups is assembled.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - taskCount must be less than or equal to
-- PhysicalDeviceMeshShaderPropertiesNV::maxDrawMeshTasksCount
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdDrawMeshTasksNV :: forall io. MonadIO io => CommandBuffer -> ("taskCount" ::: Word32) -> ("firstTask" ::: Word32) -> io ()
-- | vkCmdDrawMeshTasksIndirectNV - Issue an indirect mesh tasks draw into
-- a command buffer
--
-- Description
--
-- cmdDrawMeshTasksIndirectNV behaves similarly to
-- cmdDrawMeshTasksNV except that the parameters are read by the
-- device from a buffer during execution. drawCount draws are
-- executed by the command, with parameters taken from buffer
-- starting at offset and increasing by stride bytes
-- for each successive draw. The parameters of each draw are encoded in
-- an array of DrawMeshTasksIndirectCommandNV structures. If
-- drawCount is less than or equal to one, stride is
-- ignored.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - If the multi-draw indirect feature is not enabled,
-- drawCount must be 0 or 1
-- - drawCount must be less than or equal to
-- PhysicalDeviceLimits::maxDrawIndirectCount
-- - If drawCount is greater than 1, stride
-- must be a multiple of 4 and must be greater
-- than or equal to
-- sizeof(DrawMeshTasksIndirectCommandNV)
-- - If drawCount is equal to 1, (offset +
-- sizeof(DrawMeshTasksIndirectCommandNV)) must be
-- less than or equal to the size of buffer
-- - If drawCount is greater than 1, (stride
-- × (drawCount - 1) + offset +
-- sizeof(DrawMeshTasksIndirectCommandNV)) must be
-- less than or equal to the size of buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Both of buffer, and commandBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawMeshTasksIndirectNV :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
-- | vkCmdDrawMeshTasksIndirectCountNV - Perform an indirect mesh tasks
-- draw with the draw count sourced from a buffer
--
-- Description
--
-- cmdDrawMeshTasksIndirectCountNV behaves similarly to
-- cmdDrawMeshTasksIndirectNV except that the draw count is read
-- by the device from a buffer during execution. The command will read an
-- unsigned 32-bit integer from countBuffer located at
-- countBufferOffset and use this as the draw count.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - If countBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - countBuffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - countBufferOffset must be a multiple of
-- 4
-- - The count stored in countBuffer must be less than
-- or equal to
-- PhysicalDeviceLimits::maxDrawIndirectCount
-- - stride must be a multiple of 4 and
-- must be greater than or equal to
-- sizeof(DrawMeshTasksIndirectCommandNV)
-- - If maxDrawCount is greater than or equal to 1,
-- (stride × (maxDrawCount - 1) + offset +
-- sizeof(DrawMeshTasksIndirectCommandNV)) must be
-- less than or equal to the size of buffer
-- - If the count stored in countBuffer is equal to
-- 1, (offset +
-- sizeof(DrawMeshTasksIndirectCommandNV)) must be
-- less than or equal to the size of buffer
-- - If the count stored in countBuffer is greater than
-- 1, (stride × (drawCount - 1) +
-- offset +
-- sizeof(DrawMeshTasksIndirectCommandNV)) must be
-- less than or equal to the size of buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - countBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Each of buffer, commandBuffer, and
-- countBuffer must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawMeshTasksIndirectCountNV :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
-- | VkPhysicalDeviceMeshShaderFeaturesNV - Structure describing mesh
-- shading features that can be supported by an implementation
--
-- Description
--
-- If the PhysicalDeviceMeshShaderFeaturesNV structure is included
-- in the pNext chain of PhysicalDeviceFeatures2, it is
-- filled with a value indicating whether the feature is supported.
-- PhysicalDeviceMeshShaderFeaturesNV can also be included
-- in pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceMeshShaderFeaturesNV
PhysicalDeviceMeshShaderFeaturesNV :: Bool -> Bool -> PhysicalDeviceMeshShaderFeaturesNV
-- | taskShader indicates whether the task shader stage is
-- supported.
[$sel:taskShader:PhysicalDeviceMeshShaderFeaturesNV] :: PhysicalDeviceMeshShaderFeaturesNV -> Bool
-- | meshShader indicates whether the mesh shader stage is
-- supported.
[$sel:meshShader:PhysicalDeviceMeshShaderFeaturesNV] :: PhysicalDeviceMeshShaderFeaturesNV -> Bool
-- | VkPhysicalDeviceMeshShaderPropertiesNV - Structure describing mesh
-- shading properties
--
-- Members
--
-- The members of the PhysicalDeviceMeshShaderPropertiesNV
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceMeshShaderPropertiesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceMeshShaderPropertiesNV
PhysicalDeviceMeshShaderPropertiesNV :: Word32 -> Word32 -> (Word32, Word32, Word32) -> Word32 -> Word32 -> Word32 -> (Word32, Word32, Word32) -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDeviceMeshShaderPropertiesNV
-- | maxDrawMeshTasksCount is the maximum number of local
-- workgroups that can be launched by a single draw mesh tasks
-- command. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#drawing-mesh-shading.
[$sel:maxDrawMeshTasksCount:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxTaskWorkGroupInvocations is the maximum total number of
-- task shader invocations in a single local workgroup. The product of
-- the X, Y, and Z sizes, as specified by the LocalSize
-- execution mode in shader modules or by the object decorated by the
-- WorkgroupSize decoration, must be less than or equal
-- to this limit.
[$sel:maxTaskWorkGroupInvocations:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxTaskWorkGroupSize[3] is the maximum size of a local task
-- workgroup. These three values represent the maximum local workgroup
-- size in the X, Y, and Z dimensions, respectively. The x,
-- y, and z sizes, as specified by the
-- LocalSize execution mode or by the object decorated by the
-- WorkgroupSize decoration in shader modules, must be
-- less than or equal to the corresponding limit.
[$sel:maxTaskWorkGroupSize:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> (Word32, Word32, Word32)
-- | maxTaskTotalMemorySize is the maximum number of bytes that
-- the task shader can use in total for shared and output memory
-- combined.
[$sel:maxTaskTotalMemorySize:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxTaskOutputCount is the maximum number of output tasks a
-- single task shader workgroup can emit.
[$sel:maxTaskOutputCount:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxMeshWorkGroupInvocations is the maximum total number of
-- mesh shader invocations in a single local workgroup. The product of
-- the X, Y, and Z sizes, as specified by the LocalSize
-- execution mode in shader modules or by the object decorated by the
-- WorkgroupSize decoration, must be less than or equal
-- to this limit.
[$sel:maxMeshWorkGroupInvocations:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxMeshWorkGroupSize[3] is the maximum size of a local mesh
-- workgroup. These three values represent the maximum local workgroup
-- size in the X, Y, and Z dimensions, respectively. The x,
-- y, and z sizes, as specified by the
-- LocalSize execution mode or by the object decorated by the
-- WorkgroupSize decoration in shader modules, must be
-- less than or equal to the corresponding limit.
[$sel:maxMeshWorkGroupSize:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> (Word32, Word32, Word32)
-- | maxMeshTotalMemorySize is the maximum number of bytes that
-- the mesh shader can use in total for shared and output memory
-- combined.
[$sel:maxMeshTotalMemorySize:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxMeshOutputVertices is the maximum number of vertices a
-- mesh shader output can store.
[$sel:maxMeshOutputVertices:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxMeshOutputPrimitives is the maximum number of primitives a
-- mesh shader output can store.
[$sel:maxMeshOutputPrimitives:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | maxMeshMultiviewViewCount is the maximum number of multi-view
-- views a mesh shader can use.
[$sel:maxMeshMultiviewViewCount:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | meshOutputPerVertexGranularity is the granularity with which
-- mesh vertex outputs are allocated. The value can be used to compute
-- the memory size used by the mesh shader, which must be less than or
-- equal to maxMeshTotalMemorySize.
[$sel:meshOutputPerVertexGranularity:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | meshOutputPerPrimitiveGranularity is the granularity with
-- which mesh outputs qualified as per-primitive are allocated. The value
-- can be used to compute the memory size used by the mesh shader, which
-- must be less than or equal to maxMeshTotalMemorySize.
[$sel:meshOutputPerPrimitiveGranularity:PhysicalDeviceMeshShaderPropertiesNV] :: PhysicalDeviceMeshShaderPropertiesNV -> Word32
-- | VkDrawMeshTasksIndirectCommandNV - Structure specifying a mesh tasks
-- draw indirect command
--
-- Description
--
-- The members of DrawMeshTasksIndirectCommandNV have the same
-- meaning as the similarly named parameters of
-- cmdDrawMeshTasksNV.
--
-- Valid Usage
--
-- See Also
--
-- cmdDrawMeshTasksIndirectNV
data DrawMeshTasksIndirectCommandNV
DrawMeshTasksIndirectCommandNV :: Word32 -> Word32 -> DrawMeshTasksIndirectCommandNV
-- | taskCount is the number of local workgroups to dispatch in
-- the X dimension. Y and Z dimension are implicitly set to one.
--
-- taskCount must be less than or equal to
-- PhysicalDeviceMeshShaderPropertiesNV::maxDrawMeshTasksCount
[$sel:taskCount:DrawMeshTasksIndirectCommandNV] :: DrawMeshTasksIndirectCommandNV -> Word32
-- | firstTask is the X component of the first workgroup ID.
[$sel:firstTask:DrawMeshTasksIndirectCommandNV] :: DrawMeshTasksIndirectCommandNV -> Word32
type NV_MESH_SHADER_SPEC_VERSION = 1
pattern NV_MESH_SHADER_SPEC_VERSION :: forall a. Integral a => a
type NV_MESH_SHADER_EXTENSION_NAME = "VK_NV_mesh_shader"
pattern NV_MESH_SHADER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_mesh_shader.DrawMeshTasksIndirectCommandNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_mesh_shader.PhysicalDeviceMeshShaderFeaturesNV
module Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints
-- | vkCmdSetCheckpointNV - insert diagnostic checkpoint in command stream
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, compute, or transfer
-- operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdSetCheckpointNV :: forall io. MonadIO io => CommandBuffer -> ("checkpointMarker" ::: Ptr ()) -> io ()
-- | vkGetQueueCheckpointDataNV - retrieve diagnostic checkpoint data
--
-- Description
--
-- If pCheckpointData is NULL, then the number of
-- checkpoint markers available is returned in
-- pCheckpointDataCount.
--
-- Otherwise, pCheckpointDataCount must point to a
-- variable set by the user to the number of elements in the
-- pCheckpointData array, and on return the variable is
-- overwritten with the number of structures actually written to
-- pCheckpointData.
--
-- If pCheckpointDataCount is less than the number of checkpoint
-- markers available, at most pCheckpointDataCount structures
-- will be written.
--
-- Valid Usage
--
--
-- - The device that queue belongs to must be in the
-- lost state
--
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
--
-- - pCheckpointDataCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pCheckpointDataCount is not
-- 0, and pCheckpointData is not NULL,
-- pCheckpointData must be a valid pointer to an array of
-- pCheckpointDataCount CheckpointDataNV structures
--
--
-- See Also
--
-- CheckpointDataNV, Queue
getQueueCheckpointDataNV :: forall io. MonadIO io => Queue -> io ("checkpointData" ::: Vector CheckpointDataNV)
-- | VkQueueFamilyCheckpointPropertiesNV - return structure for queue
-- family checkpoint info query
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineStageFlags, StructureType
data QueueFamilyCheckpointPropertiesNV
QueueFamilyCheckpointPropertiesNV :: PipelineStageFlags -> QueueFamilyCheckpointPropertiesNV
-- | checkpointExecutionStageMask is a mask indicating which
-- pipeline stages the implementation can execute checkpoint markers in.
[$sel:checkpointExecutionStageMask:QueueFamilyCheckpointPropertiesNV] :: QueueFamilyCheckpointPropertiesNV -> PipelineStageFlags
-- | VkCheckpointDataNV - return structure for command buffer checkpoint
-- data
--
-- Description
--
-- The stages at which a checkpoint marker can be executed are
-- implementation-defined and can be queried by calling
-- getPhysicalDeviceQueueFamilyProperties2.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineStageFlagBits, StructureType,
-- getQueueCheckpointDataNV
data CheckpointDataNV
CheckpointDataNV :: PipelineStageFlagBits -> Ptr () -> CheckpointDataNV
-- | stage indicates which pipeline stage the checkpoint marker
-- data refers to.
[$sel:stage:CheckpointDataNV] :: CheckpointDataNV -> PipelineStageFlagBits
-- | pCheckpointMarker contains the value of the last checkpoint
-- marker executed in the stage that stage refers to.
[$sel:checkpointMarker:CheckpointDataNV] :: CheckpointDataNV -> Ptr ()
type NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION = 2
pattern NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION :: forall a. Integral a => a
type NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME = "VK_NV_device_diagnostic_checkpoints"
pattern NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.CheckpointDataNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.CheckpointDataNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.CheckpointDataNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.CheckpointDataNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.CheckpointDataNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.CheckpointDataNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_diagnostic_checkpoints.QueueFamilyCheckpointPropertiesNV
module Vulkan.Extensions.VK_NV_dedicated_allocation
-- | VkDedicatedAllocationImageCreateInfoNV - Specify that an image is
-- bound to a dedicated memory resource
--
-- Description
--
-- Note
--
-- Using a dedicated allocation for color and depth/stencil attachments
-- or other large images may improve performance on some devices.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data DedicatedAllocationImageCreateInfoNV
DedicatedAllocationImageCreateInfoNV :: Bool -> DedicatedAllocationImageCreateInfoNV
-- | dedicatedAllocation specifies whether the image will have a
-- dedicated allocation bound to it.
[$sel:dedicatedAllocation:DedicatedAllocationImageCreateInfoNV] :: DedicatedAllocationImageCreateInfoNV -> Bool
-- | VkDedicatedAllocationBufferCreateInfoNV - Specify that a buffer is
-- bound to a dedicated memory resource
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data DedicatedAllocationBufferCreateInfoNV
DedicatedAllocationBufferCreateInfoNV :: Bool -> DedicatedAllocationBufferCreateInfoNV
-- | dedicatedAllocation specifies whether the buffer will have a
-- dedicated allocation bound to it.
[$sel:dedicatedAllocation:DedicatedAllocationBufferCreateInfoNV] :: DedicatedAllocationBufferCreateInfoNV -> Bool
-- | VkDedicatedAllocationMemoryAllocateInfoNV - Specify a dedicated memory
-- allocation resource
--
-- Valid Usage
--
--
-- - At least one of image and buffer must be
-- NULL_HANDLE
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If image is not NULL_HANDLE, image
-- must be a valid Image handle
-- - If buffer is not NULL_HANDLE, buffer
-- must be a valid Buffer handle
-- - Both of buffer, and image that are valid handles
-- of non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- See Also
--
-- Buffer, Image, StructureType
data DedicatedAllocationMemoryAllocateInfoNV
DedicatedAllocationMemoryAllocateInfoNV :: Image -> Buffer -> DedicatedAllocationMemoryAllocateInfoNV
-- | image is NULL_HANDLE or a handle of an image which
-- this memory will be bound to.
[$sel:image:DedicatedAllocationMemoryAllocateInfoNV] :: DedicatedAllocationMemoryAllocateInfoNV -> Image
-- | buffer is NULL_HANDLE or a handle of a buffer which
-- this memory will be bound to.
[$sel:buffer:DedicatedAllocationMemoryAllocateInfoNV] :: DedicatedAllocationMemoryAllocateInfoNV -> Buffer
type NV_DEDICATED_ALLOCATION_SPEC_VERSION = 1
pattern NV_DEDICATED_ALLOCATION_SPEC_VERSION :: forall a. Integral a => a
type NV_DEDICATED_ALLOCATION_EXTENSION_NAME = "VK_NV_dedicated_allocation"
pattern NV_DEDICATED_ALLOCATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationMemoryAllocateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationBufferCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_dedicated_allocation.DedicatedAllocationImageCreateInfoNV
module Vulkan.Extensions.VK_NV_coverage_reduction_mode
-- | vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV -
-- Query supported sample count combinations
--
-- Description
--
-- If pCombinations is NULL, then the number of
-- supported combinations for the given physicalDevice is
-- returned in pCombinationCount. Otherwise,
-- pCombinationCount must point to a variable set by the
-- user to the number of elements in the pCombinations array,
-- and on return the variable is overwritten with the number of values
-- actually written to pCombinations. If the value of
-- pCombinationCount is less than the number of combinations
-- supported for the given physicalDevice, at most
-- pCombinationCount values will be written
-- pCombinations and INCOMPLETE will be returned instead
-- of SUCCESS to indicate that not all the supported values were
-- returned.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pCombinationCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pCombinationCount is not
-- 0, and pCombinations is not NULL,
-- pCombinations must be a valid pointer to an array of
-- pCombinationCount FramebufferMixedSamplesCombinationNV
-- structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- FramebufferMixedSamplesCombinationNV, PhysicalDevice
getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV :: forall io. MonadIO io => PhysicalDevice -> io (Result, "combinations" ::: Vector FramebufferMixedSamplesCombinationNV)
-- | VkPhysicalDeviceCoverageReductionModeFeaturesNV - Structure describing
-- the coverage reduction mode features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceCoverageReductionModeFeaturesNV structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceCoverageReductionModeFeaturesNV structure
-- is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceCoverageReductionModeFeaturesNV can also
-- be included in the pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceCoverageReductionModeFeaturesNV
PhysicalDeviceCoverageReductionModeFeaturesNV :: Bool -> PhysicalDeviceCoverageReductionModeFeaturesNV
-- | coverageReductionMode indicates whether the implementation
-- supports coverage reduction modes. See Coverage Reduction.
[$sel:coverageReductionMode:PhysicalDeviceCoverageReductionModeFeaturesNV] :: PhysicalDeviceCoverageReductionModeFeaturesNV -> Bool
-- | VkPipelineCoverageReductionStateCreateInfoNV - Structure specifying
-- parameters controlling coverage reduction
--
-- Description
--
-- If this structure is not present, the default coverage reduction mode
-- is inferred as follows:
--
--
-- - If the VK_NV_framebuffer_mixed_samples extension is
-- enabled, then it is as if the coverageReductionMode is
-- COVERAGE_REDUCTION_MODE_MERGE_NV.
-- - If the VK_AMD_mixed_attachment_samples extension is
-- enabled, then it is as if the coverageReductionMode is
-- COVERAGE_REDUCTION_MODE_TRUNCATE_NV.
-- - If both VK_NV_framebuffer_mixed_samples and
-- VK_AMD_mixed_attachment_samples are enabled, then the default
-- coverage reduction mode is implementation-dependent.
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- CoverageReductionModeNV,
-- PipelineCoverageReductionStateCreateFlagsNV,
-- StructureType
data PipelineCoverageReductionStateCreateInfoNV
PipelineCoverageReductionStateCreateInfoNV :: PipelineCoverageReductionStateCreateFlagsNV -> CoverageReductionModeNV -> PipelineCoverageReductionStateCreateInfoNV
-- | flags is reserved for future use.
[$sel:flags:PipelineCoverageReductionStateCreateInfoNV] :: PipelineCoverageReductionStateCreateInfoNV -> PipelineCoverageReductionStateCreateFlagsNV
-- | coverageReductionMode is a CoverageReductionModeNV
-- value controlling how the color sample mask is generated from
-- the coverage mask.
[$sel:coverageReductionMode:PipelineCoverageReductionStateCreateInfoNV] :: PipelineCoverageReductionStateCreateInfoNV -> CoverageReductionModeNV
-- | VkFramebufferMixedSamplesCombinationNV - Structure specifying a
-- supported sample count combination
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- CoverageReductionModeNV, SampleCountFlagBits,
-- SampleCountFlags, StructureType,
-- getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
data FramebufferMixedSamplesCombinationNV
FramebufferMixedSamplesCombinationNV :: CoverageReductionModeNV -> SampleCountFlagBits -> SampleCountFlags -> SampleCountFlags -> FramebufferMixedSamplesCombinationNV
-- | coverageReductionMode is a CoverageReductionModeNV
-- value specifying the coverage reduction mode.
[$sel:coverageReductionMode:FramebufferMixedSamplesCombinationNV] :: FramebufferMixedSamplesCombinationNV -> CoverageReductionModeNV
-- | rasterizationSamples specifies the number of rasterization
-- samples in the supported combination.
[$sel:rasterizationSamples:FramebufferMixedSamplesCombinationNV] :: FramebufferMixedSamplesCombinationNV -> SampleCountFlagBits
-- | depthStencilSamples specifies the number of samples in the
-- depth stencil attachment in the supported combination. A value of 0
-- indicates the combination does not have a depth stencil attachment.
[$sel:depthStencilSamples:FramebufferMixedSamplesCombinationNV] :: FramebufferMixedSamplesCombinationNV -> SampleCountFlags
-- | colorSamples specifies the number of color samples in a color
-- attachment in the supported combination. A value of 0 indicates the
-- combination does not have a color attachment.
[$sel:colorSamples:FramebufferMixedSamplesCombinationNV] :: FramebufferMixedSamplesCombinationNV -> SampleCountFlags
-- | VkPipelineCoverageReductionStateCreateFlagsNV - Reserved for future
-- use
--
-- Description
--
-- PipelineCoverageReductionStateCreateFlagsNV is a bitmask type
-- for setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineCoverageReductionStateCreateInfoNV
newtype PipelineCoverageReductionStateCreateFlagsNV
PipelineCoverageReductionStateCreateFlagsNV :: Flags -> PipelineCoverageReductionStateCreateFlagsNV
-- | VkCoverageReductionModeNV - Specify the coverage reduction mode
--
-- See Also
--
-- FramebufferMixedSamplesCombinationNV,
-- PipelineCoverageReductionStateCreateInfoNV
newtype CoverageReductionModeNV
CoverageReductionModeNV :: Int32 -> CoverageReductionModeNV
-- | COVERAGE_REDUCTION_MODE_MERGE_NV: In this mode, there is an
-- implementation-dependent association of each coverage sample to a
-- color sample. The reduced color sample mask is computed such that the
-- bit for each color sample is 1 if any of the associated bits in the
-- fragment’s coverage is on, and 0 otherwise.
pattern COVERAGE_REDUCTION_MODE_MERGE_NV :: CoverageReductionModeNV
-- | COVERAGE_REDUCTION_MODE_TRUNCATE_NV: In this mode, only the
-- first M coverage samples are associated with the color samples such
-- that sample index i maps to color sample index i, where M is
-- the number of color samples.
pattern COVERAGE_REDUCTION_MODE_TRUNCATE_NV :: CoverageReductionModeNV
type NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION = 1
pattern NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION :: forall a. Integral a => a
type NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME = "VK_NV_coverage_reduction_mode"
pattern NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_coverage_reduction_mode.CoverageReductionModeNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_coverage_reduction_mode.CoverageReductionModeNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_coverage_reduction_mode.CoverageReductionModeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_coverage_reduction_mode.CoverageReductionModeNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_coverage_reduction_mode.FramebufferMixedSamplesCombinationNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_coverage_reduction_mode.CoverageReductionModeNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_coverage_reduction_mode.CoverageReductionModeNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_coverage_reduction_mode.PipelineCoverageReductionStateCreateFlagsNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_coverage_reduction_mode.PhysicalDeviceCoverageReductionModeFeaturesNV
module Vulkan.Extensions.VK_NV_cooperative_matrix
-- | vkGetPhysicalDeviceCooperativeMatrixPropertiesNV - Returns properties
-- describing what cooperative matrix types are supported
--
-- Description
--
-- If pProperties is NULL, then the number of
-- cooperative matrix properties available is returned in
-- pPropertyCount. Otherwise, pPropertyCount
-- must point to a variable set by the user to the number of
-- elements in the pProperties array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pProperties. If pPropertyCount is less than the
-- number of cooperative matrix properties available, at most
-- pPropertyCount structures will be written. If
-- pPropertyCount is smaller than the number of cooperative
-- matrix properties available, INCOMPLETE will be returned
-- instead of SUCCESS, to indicate that not all the available
-- cooperative matrix properties were returned.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount CooperativeMatrixPropertiesNV
-- structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CooperativeMatrixPropertiesNV, PhysicalDevice
getPhysicalDeviceCooperativeMatrixPropertiesNV :: forall io. MonadIO io => PhysicalDevice -> io (Result, "properties" ::: Vector CooperativeMatrixPropertiesNV)
-- | VkPhysicalDeviceCooperativeMatrixFeaturesNV - Structure describing
-- cooperative matrix features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceCooperativeMatrixFeaturesNV
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceCooperativeMatrixFeaturesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceCooperativeMatrixFeaturesNV can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceCooperativeMatrixFeaturesNV
PhysicalDeviceCooperativeMatrixFeaturesNV :: Bool -> Bool -> PhysicalDeviceCooperativeMatrixFeaturesNV
-- | cooperativeMatrix indicates that the implementation supports
-- the CooperativeMatrixNV SPIR-V capability.
[$sel:cooperativeMatrix:PhysicalDeviceCooperativeMatrixFeaturesNV] :: PhysicalDeviceCooperativeMatrixFeaturesNV -> Bool
-- | cooperativeMatrixRobustBufferAccess indicates that the
-- implementation supports robust buffer access for SPIR-V
-- OpCooperativeMatrixLoadNV and
-- OpCooperativeMatrixStoreNV instructions.
[$sel:cooperativeMatrixRobustBufferAccess:PhysicalDeviceCooperativeMatrixFeaturesNV] :: PhysicalDeviceCooperativeMatrixFeaturesNV -> Bool
-- | VkPhysicalDeviceCooperativeMatrixPropertiesNV - Structure describing
-- cooperative matrix properties supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceCooperativeMatrixPropertiesNV
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceCooperativeMatrixPropertiesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ShaderStageFlags, StructureType
data PhysicalDeviceCooperativeMatrixPropertiesNV
PhysicalDeviceCooperativeMatrixPropertiesNV :: ShaderStageFlags -> PhysicalDeviceCooperativeMatrixPropertiesNV
-- | cooperativeMatrixSupportedStages is a bitfield of
-- ShaderStageFlagBits describing the shader stages that
-- cooperative matrix instructions are supported in.
-- cooperativeMatrixSupportedStages will have the
-- SHADER_STAGE_COMPUTE_BIT bit set if any of the physical
-- device’s queues support QUEUE_COMPUTE_BIT.
[$sel:cooperativeMatrixSupportedStages:PhysicalDeviceCooperativeMatrixPropertiesNV] :: PhysicalDeviceCooperativeMatrixPropertiesNV -> ShaderStageFlags
-- | VkCooperativeMatrixPropertiesNV - Structure specifying cooperative
-- matrix properties
--
-- Description
--
-- If some types are preferred over other types (e.g. for performance),
-- they should appear earlier in the list enumerated by
-- getPhysicalDeviceCooperativeMatrixPropertiesNV.
--
-- At least one entry in the list must have power of two values
-- for all of MSize, KSize, and NSize.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ComponentTypeNV, ScopeNV, StructureType,
-- getPhysicalDeviceCooperativeMatrixPropertiesNV
data CooperativeMatrixPropertiesNV
CooperativeMatrixPropertiesNV :: Word32 -> Word32 -> Word32 -> ComponentTypeNV -> ComponentTypeNV -> ComponentTypeNV -> ComponentTypeNV -> ScopeNV -> CooperativeMatrixPropertiesNV
-- | MSize is the number of rows in matrices A, C, and D.
[$sel:mSize:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> Word32
-- | NSize is the number of columns in matrices B, C, D.
[$sel:nSize:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> Word32
-- | KSize is the number of columns in matrix A and rows in matrix
-- B.
[$sel:kSize:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> Word32
-- | AType is the component type of matrix A, of type
-- ComponentTypeNV.
--
-- AType must be a valid ComponentTypeNV value
[$sel:aType:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> ComponentTypeNV
-- | BType is the component type of matrix B, of type
-- ComponentTypeNV.
--
-- BType must be a valid ComponentTypeNV value
[$sel:bType:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> ComponentTypeNV
-- | CType is the component type of matrix C, of type
-- ComponentTypeNV.
--
-- CType must be a valid ComponentTypeNV value
[$sel:cType:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> ComponentTypeNV
-- | DType is the component type of matrix D, of type
-- ComponentTypeNV.
--
-- DType must be a valid ComponentTypeNV value
[$sel:dType:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> ComponentTypeNV
-- | scope is the scope of all the matrix types, of type
-- ScopeNV.
--
-- scope must be a valid ScopeNV value
[$sel:scope:CooperativeMatrixPropertiesNV] :: CooperativeMatrixPropertiesNV -> ScopeNV
-- | VkScopeNV - Specify SPIR-V scope
--
-- Description
--
-- All enum values match the corresponding SPIR-V value.
--
-- See Also
--
-- CooperativeMatrixPropertiesNV
newtype ScopeNV
ScopeNV :: Int32 -> ScopeNV
-- | SCOPE_DEVICE_NV corresponds to SPIR-V Device scope.
pattern SCOPE_DEVICE_NV :: ScopeNV
-- | SCOPE_WORKGROUP_NV corresponds to SPIR-V Workgroup
-- scope.
pattern SCOPE_WORKGROUP_NV :: ScopeNV
-- | SCOPE_SUBGROUP_NV corresponds to SPIR-V Subgroup
-- scope.
pattern SCOPE_SUBGROUP_NV :: ScopeNV
-- | SCOPE_QUEUE_FAMILY_NV corresponds to SPIR-V
-- QueueFamily scope.
pattern SCOPE_QUEUE_FAMILY_NV :: ScopeNV
-- | VkComponentTypeNV - Specify SPIR-V cooperative matrix component type
--
-- See Also
--
-- CooperativeMatrixPropertiesNV
newtype ComponentTypeNV
ComponentTypeNV :: Int32 -> ComponentTypeNV
-- | COMPONENT_TYPE_FLOAT16_NV corresponds to SPIR-V
-- OpTypeFloat 16.
pattern COMPONENT_TYPE_FLOAT16_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_FLOAT32_NV corresponds to SPIR-V
-- OpTypeFloat 32.
pattern COMPONENT_TYPE_FLOAT32_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_FLOAT64_NV corresponds to SPIR-V
-- OpTypeFloat 64.
pattern COMPONENT_TYPE_FLOAT64_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_SINT8_NV corresponds to SPIR-V
-- OpTypeInt 8 1.
pattern COMPONENT_TYPE_SINT8_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_SINT16_NV corresponds to SPIR-V
-- OpTypeInt 16 1.
pattern COMPONENT_TYPE_SINT16_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_SINT32_NV corresponds to SPIR-V
-- OpTypeInt 32 1.
pattern COMPONENT_TYPE_SINT32_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_SINT64_NV corresponds to SPIR-V
-- OpTypeInt 64 1.
pattern COMPONENT_TYPE_SINT64_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_UINT8_NV corresponds to SPIR-V
-- OpTypeInt 8 0.
pattern COMPONENT_TYPE_UINT8_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_UINT16_NV corresponds to SPIR-V
-- OpTypeInt 16 0.
pattern COMPONENT_TYPE_UINT16_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_UINT32_NV corresponds to SPIR-V
-- OpTypeInt 32 0.
pattern COMPONENT_TYPE_UINT32_NV :: ComponentTypeNV
-- | COMPONENT_TYPE_UINT64_NV corresponds to SPIR-V
-- OpTypeInt 64 0.
pattern COMPONENT_TYPE_UINT64_NV :: ComponentTypeNV
type NV_COOPERATIVE_MATRIX_SPEC_VERSION = 1
pattern NV_COOPERATIVE_MATRIX_SPEC_VERSION :: forall a. Integral a => a
type NV_COOPERATIVE_MATRIX_EXTENSION_NAME = "VK_NV_cooperative_matrix"
pattern NV_COOPERATIVE_MATRIX_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_cooperative_matrix.ComponentTypeNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_cooperative_matrix.ComponentTypeNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_cooperative_matrix.ComponentTypeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_cooperative_matrix.ComponentTypeNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_cooperative_matrix.ScopeNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_cooperative_matrix.ScopeNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_cooperative_matrix.ScopeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_cooperative_matrix.ScopeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_cooperative_matrix.CooperativeMatrixPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_cooperative_matrix.ComponentTypeNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_cooperative_matrix.ComponentTypeNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_cooperative_matrix.ScopeNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_cooperative_matrix.ScopeNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_cooperative_matrix.PhysicalDeviceCooperativeMatrixFeaturesNV
module Vulkan.Extensions.VK_NV_clip_space_w_scaling
-- | vkCmdSetViewportWScalingNV - Set the viewport W scaling on a command
-- buffer
--
-- Description
--
-- The viewport parameters taken from element i of
-- pViewportWScalings replace the current state for the viewport
-- index firstViewport + i, for i in [0,
-- viewportCount).
--
-- Valid Usage
--
--
--
--
-- - The sum of firstViewport and viewportCount
-- must be between 1 and
-- PhysicalDeviceLimits::maxViewports, inclusive
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pViewportWScalings must be a valid pointer to an
-- array of viewportCount ViewportWScalingNV
-- structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - viewportCount must be greater than 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, ViewportWScalingNV
cmdSetViewportWScalingNV :: forall io. MonadIO io => CommandBuffer -> ("firstViewport" ::: Word32) -> ("viewportWScalings" ::: Vector ViewportWScalingNV) -> io ()
-- | VkViewportWScalingNV - Structure specifying a viewport
--
-- See Also
--
-- PipelineViewportWScalingStateCreateInfoNV,
-- cmdSetViewportWScalingNV
data ViewportWScalingNV
ViewportWScalingNV :: Float -> Float -> ViewportWScalingNV
-- | xcoeff and ycoeff are the viewport’s W scaling
-- factor for x and y respectively.
[$sel:xcoeff:ViewportWScalingNV] :: ViewportWScalingNV -> Float
[$sel:ycoeff:ViewportWScalingNV] :: ViewportWScalingNV -> Float
-- | VkPipelineViewportWScalingStateCreateInfoNV - Structure specifying
-- parameters of a newly created pipeline viewport W scaling state
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType, ViewportWScalingNV
data PipelineViewportWScalingStateCreateInfoNV
PipelineViewportWScalingStateCreateInfoNV :: Bool -> Word32 -> Vector ViewportWScalingNV -> PipelineViewportWScalingStateCreateInfoNV
-- | viewportWScalingEnable controls whether viewport W
-- scaling is enabled.
[$sel:viewportWScalingEnable:PipelineViewportWScalingStateCreateInfoNV] :: PipelineViewportWScalingStateCreateInfoNV -> Bool
-- | viewportCount is the number of viewports used by W
-- scaling, and must match the number of viewports in the pipeline
-- if viewport W scaling is enabled.
--
-- viewportCount must be greater than 0
[$sel:viewportCount:PipelineViewportWScalingStateCreateInfoNV] :: PipelineViewportWScalingStateCreateInfoNV -> Word32
-- | pViewportWScalings is a pointer to an array of
-- ViewportWScalingNV structures defining the W scaling
-- parameters for the corresponding viewports. If the viewport W
-- scaling state is dynamic, this member is ignored.
[$sel:viewportWScalings:PipelineViewportWScalingStateCreateInfoNV] :: PipelineViewportWScalingStateCreateInfoNV -> Vector ViewportWScalingNV
type NV_CLIP_SPACE_W_SCALING_SPEC_VERSION = 1
pattern NV_CLIP_SPACE_W_SCALING_SPEC_VERSION :: forall a. Integral a => a
type NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME = "VK_NV_clip_space_w_scaling"
pattern NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_clip_space_w_scaling.PipelineViewportWScalingStateCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_clip_space_w_scaling.PipelineViewportWScalingStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_clip_space_w_scaling.PipelineViewportWScalingStateCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_clip_space_w_scaling.PipelineViewportWScalingStateCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_clip_space_w_scaling.PipelineViewportWScalingStateCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_clip_space_w_scaling.ViewportWScalingNV
module Vulkan.Extensions.VK_NVX_image_view_handle
-- | vkGetImageViewHandleNVX - Get the handle for an image view for a
-- specific descriptor type
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device, ImageViewHandleInfoNVX
getImageViewHandleNVX :: forall io. MonadIO io => Device -> ImageViewHandleInfoNVX -> io Word32
-- | vkGetImageViewAddressNVX - Get the device address of an image view
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ImageView, ImageViewAddressPropertiesNVX
getImageViewAddressNVX :: forall io. MonadIO io => Device -> ImageView -> io ImageViewAddressPropertiesNVX
-- | VkImageViewHandleInfoNVX - Structure specifying the image view for
-- handle queries
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - imageView must be a valid ImageView
-- handle
-- - descriptorType must be a valid
-- DescriptorType value
-- - If sampler is not NULL_HANDLE, sampler
-- must be a valid Sampler handle
-- - Both of imageView, and sampler that are valid
-- handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Device
--
--
-- See Also
--
-- DescriptorType, ImageView, Sampler,
-- StructureType, getImageViewHandleNVX
data ImageViewHandleInfoNVX
ImageViewHandleInfoNVX :: ImageView -> DescriptorType -> Sampler -> ImageViewHandleInfoNVX
-- | imageView is the image view to query.
[$sel:imageView:ImageViewHandleInfoNVX] :: ImageViewHandleInfoNVX -> ImageView
-- | descriptorType is the type of descriptor for which to query a
-- handle.
[$sel:descriptorType:ImageViewHandleInfoNVX] :: ImageViewHandleInfoNVX -> DescriptorType
-- | sampler is the sampler to combine with the image view when
-- generating the handle.
[$sel:sampler:ImageViewHandleInfoNVX] :: ImageViewHandleInfoNVX -> Sampler
-- | VkImageViewAddressPropertiesNVX - Structure specifying the image view
-- for handle queries
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceAddress, DeviceSize, StructureType,
-- getImageViewAddressNVX
data ImageViewAddressPropertiesNVX
ImageViewAddressPropertiesNVX :: DeviceAddress -> DeviceSize -> ImageViewAddressPropertiesNVX
-- | deviceAddress is the device address of the image view.
[$sel:deviceAddress:ImageViewAddressPropertiesNVX] :: ImageViewAddressPropertiesNVX -> DeviceAddress
-- | size is the size in bytes of the image view device memory.
[$sel:size:ImageViewAddressPropertiesNVX] :: ImageViewAddressPropertiesNVX -> DeviceSize
type NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION = 2
pattern NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION :: forall a. Integral a => a
type NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME = "VK_NVX_image_view_handle"
pattern NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance GHC.Classes.Eq Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
instance GHC.Generics.Generic Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
instance GHC.Show.Show Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
instance GHC.Generics.Generic Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance GHC.Show.Show Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewAddressPropertiesNVX
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NVX_image_view_handle.ImageViewHandleInfoNVX
module Vulkan.Extensions.VK_KHR_win32_keyed_mutex
-- | VkWin32KeyedMutexAcquireReleaseInfoKHR - Use the Windows keyed mutex
-- mechanism to synchronize work
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If acquireCount is not 0, pAcquireSyncs
-- must be a valid pointer to an array of acquireCount
-- valid DeviceMemory handles
-- - If acquireCount is not 0, pAcquireKeys
-- must be a valid pointer to an array of acquireCount
-- uint64_t values
-- - If acquireCount is not 0,
-- pAcquireTimeouts must be a valid pointer to an array
-- of acquireCount uint32_t values
-- - If releaseCount is not 0, pReleaseSyncs
-- must be a valid pointer to an array of releaseCount
-- valid DeviceMemory handles
-- - If releaseCount is not 0, pReleaseKeys
-- must be a valid pointer to an array of releaseCount
-- uint64_t values
-- - Both of the elements of pAcquireSyncs, and the elements
-- of pReleaseSyncs that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- See Also
--
-- DeviceMemory, StructureType
data Win32KeyedMutexAcquireReleaseInfoKHR
Win32KeyedMutexAcquireReleaseInfoKHR :: Vector DeviceMemory -> Vector Word64 -> Vector Word32 -> Vector DeviceMemory -> Vector Word64 -> Win32KeyedMutexAcquireReleaseInfoKHR
-- | pAcquireSyncs is a pointer to an array of DeviceMemory
-- objects which were imported from Direct3D 11 resources.
[$sel:acquireSyncs:Win32KeyedMutexAcquireReleaseInfoKHR] :: Win32KeyedMutexAcquireReleaseInfoKHR -> Vector DeviceMemory
-- | pAcquireKeys is a pointer to an array of mutex key values to
-- wait for prior to beginning the submitted work. Entries refer to the
-- keyed mutex associated with the corresponding entries in
-- pAcquireSyncs.
[$sel:acquireKeys:Win32KeyedMutexAcquireReleaseInfoKHR] :: Win32KeyedMutexAcquireReleaseInfoKHR -> Vector Word64
[$sel:acquireTimeouts:Win32KeyedMutexAcquireReleaseInfoKHR] :: Win32KeyedMutexAcquireReleaseInfoKHR -> Vector Word32
-- | pReleaseSyncs is a pointer to an array of DeviceMemory
-- objects which were imported from Direct3D 11 resources.
[$sel:releaseSyncs:Win32KeyedMutexAcquireReleaseInfoKHR] :: Win32KeyedMutexAcquireReleaseInfoKHR -> Vector DeviceMemory
-- | pReleaseKeys is a pointer to an array of mutex key values to
-- set when the submitted work has completed. Entries refer to the keyed
-- mutex associated with the corresponding entries in
-- pReleaseSyncs.
[$sel:releaseKeys:Win32KeyedMutexAcquireReleaseInfoKHR] :: Win32KeyedMutexAcquireReleaseInfoKHR -> Vector Word64
type KHR_WIN32_KEYED_MUTEX_SPEC_VERSION = 1
pattern KHR_WIN32_KEYED_MUTEX_SPEC_VERSION :: forall a. Integral a => a
type KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME = "VK_KHR_win32_keyed_mutex"
pattern KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_win32_keyed_mutex.Win32KeyedMutexAcquireReleaseInfoKHR
module Vulkan.Extensions.VK_KHR_pipeline_library
-- | VkPipelineLibraryCreateInfoKHR - Structure specifying pipeline
-- libraries to use when creating a pipeline
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - If libraryCount is not 0, pLibraries
-- must be a valid pointer to an array of libraryCount
-- valid Pipeline handles
--
--
-- See Also
--
-- Pipeline, RayTracingPipelineCreateInfoKHR,
-- StructureType
data PipelineLibraryCreateInfoKHR
PipelineLibraryCreateInfoKHR :: Vector Pipeline -> PipelineLibraryCreateInfoKHR
-- | pLibraries is an array of pipeline libraries to use when
-- creating a pipeline.
[$sel:libraries:PipelineLibraryCreateInfoKHR] :: PipelineLibraryCreateInfoKHR -> Vector Pipeline
type KHR_PIPELINE_LIBRARY_SPEC_VERSION = 1
pattern KHR_PIPELINE_LIBRARY_SPEC_VERSION :: forall a. Integral a => a
type KHR_PIPELINE_LIBRARY_EXTENSION_NAME = "VK_KHR_pipeline_library"
pattern KHR_PIPELINE_LIBRARY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_library.PipelineLibraryCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_library.PipelineLibraryCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_library.PipelineLibraryCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_library.PipelineLibraryCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_library.PipelineLibraryCreateInfoKHR
module Vulkan.Extensions.VK_KHR_pipeline_executable_properties
-- | vkGetPipelineExecutablePropertiesKHR - Get the executables associated
-- with a pipeline
--
-- Description
--
-- If pProperties is NULL, then the number of
-- executables associated with the pipeline is returned in
-- pExecutableCount. Otherwise, pExecutableCount
-- must point to a variable set by the user to the number of
-- elements in the pProperties array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pProperties. If pExecutableCount is less than the
-- number of executables associated with the pipeline, at most
-- pExecutableCount structures will be written and
-- getPipelineExecutablePropertiesKHR will return
-- INCOMPLETE.
--
-- Valid Usage
--
--
--
--
-- - pipeline member of pPipelineInfo must
-- have been created with device
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pPipelineInfo must be a valid pointer to a valid
-- PipelineInfoKHR structure
-- - pExecutableCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pExecutableCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pExecutableCount PipelineExecutablePropertiesKHR
-- structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PipelineExecutablePropertiesKHR,
-- PipelineInfoKHR
getPipelineExecutablePropertiesKHR :: forall io. MonadIO io => Device -> PipelineInfoKHR -> io (Result, "properties" ::: Vector PipelineExecutablePropertiesKHR)
-- | vkGetPipelineExecutableStatisticsKHR - Get compile time statistics
-- associated with a pipeline executable
--
-- Description
--
-- If pStatistics is NULL, then the number of
-- statistics associated with the pipeline executable is returned in
-- pStatisticCount. Otherwise, pStatisticCount
-- must point to a variable set by the user to the number of
-- elements in the pStatistics array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pStatistics. If pStatisticCount is less than the
-- number of statistics associated with the pipeline executable, at most
-- pStatisticCount structures will be written and
-- getPipelineExecutableStatisticsKHR will return
-- INCOMPLETE.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pExecutableInfo must be a valid pointer to a valid
-- PipelineExecutableInfoKHR structure
-- - pStatisticCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pStatisticCount is not
-- 0, and pStatistics is not NULL,
-- pStatistics must be a valid pointer to an array of
-- pStatisticCount PipelineExecutableStatisticKHR
-- structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PipelineExecutableInfoKHR,
-- PipelineExecutableStatisticKHR
getPipelineExecutableStatisticsKHR :: forall io. MonadIO io => Device -> PipelineExecutableInfoKHR -> io (Result, "statistics" ::: Vector PipelineExecutableStatisticKHR)
-- | vkGetPipelineExecutableInternalRepresentationsKHR - Get internal
-- representations of the pipeline executable
--
-- Description
--
-- If pInternalRepresentations is NULL, then the number
-- of internal representations associated with the pipeline executable is
-- returned in pInternalRepresentationCount. Otherwise,
-- pInternalRepresentationCount must point to a variable
-- set by the user to the number of elements in the
-- pInternalRepresentations array, and on return the variable is
-- overwritten with the number of structures actually written to
-- pInternalRepresentations. If
-- pInternalRepresentationCount is less than the number of
-- internal representations associated with the pipeline executable, at
-- most pInternalRepresentationCount structures will be written
-- and getPipelineExecutableInternalRepresentationsKHR will return
-- INCOMPLETE.
--
-- 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
-- compile pipeline with the final shader assembly (if any) last.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pExecutableInfo must be a valid pointer to a valid
-- PipelineExecutableInfoKHR structure
-- - pInternalRepresentationCount must be a valid
-- pointer to a uint32_t value
-- - If the value referenced by pInternalRepresentationCount
-- is not 0, and pInternalRepresentations is not
-- NULL, pInternalRepresentations must be a
-- valid pointer to an array of pInternalRepresentationCount
-- PipelineExecutableInternalRepresentationKHR structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR
getPipelineExecutableInternalRepresentationsKHR :: forall io. MonadIO io => Device -> PipelineExecutableInfoKHR -> io (Result, "internalRepresentations" ::: Vector PipelineExecutableInternalRepresentationKHR)
-- | VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR - Structure
-- describing whether pipeline executable properties are available
--
-- Members
--
-- The members of the
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
-- can also be included in the pNext chain of
-- DeviceCreateInfo to enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
PhysicalDevicePipelineExecutablePropertiesFeaturesKHR :: Bool -> PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
-- | pipelineExecutableInfo indicates that the implementation
-- supports reporting properties and statistics about the executables
-- associated with a compiled pipeline.
[$sel:pipelineExecutableInfo:PhysicalDevicePipelineExecutablePropertiesFeaturesKHR] :: PhysicalDevicePipelineExecutablePropertiesFeaturesKHR -> Bool
-- | VkPipelineInfoKHR - Structure describing a pipeline
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Pipeline, StructureType,
-- getPipelineExecutablePropertiesKHR
data PipelineInfoKHR
PipelineInfoKHR :: Pipeline -> PipelineInfoKHR
-- | pipeline is a Pipeline handle.
--
-- pipeline must be a valid Pipeline handle
[$sel:pipeline:PipelineInfoKHR] :: PipelineInfoKHR -> Pipeline
-- | VkPipelineExecutablePropertiesKHR - Structure describing a pipeline
-- executable
--
-- Description
--
-- The stages field may be zero or it may contain
-- one or more bits describing the stages principally used to compile
-- this pipeline. Not all implementations have a 1:1 mapping between
-- shader stages and pipeline executables and some implementations
-- may reduce a given shader stage to fixed function hardware
-- programming such that no executable is available. No guarantees are
-- provided about the mapping between shader stages and pipeline
-- executables and stages should be considered a best
-- effort hint. Because the application cannot rely on the
-- stages field to provide an exact description, name
-- and description provide a human readable name and description
-- which more accurately describes the given pipeline executable.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ShaderStageFlags, StructureType,
-- getPipelineExecutablePropertiesKHR
data PipelineExecutablePropertiesKHR
PipelineExecutablePropertiesKHR :: ShaderStageFlags -> ByteString -> ByteString -> Word32 -> PipelineExecutablePropertiesKHR
-- | stages is a bitmask of ShaderStageFlagBits indicating
-- which shader stages (if any) were principally used as inputs to
-- compile this pipeline executable.
[$sel:stages:PipelineExecutablePropertiesKHR] :: PipelineExecutablePropertiesKHR -> ShaderStageFlags
-- | name is an array of MAX_DESCRIPTION_SIZE char
-- containing a null-terminated UTF-8 string which is a short human
-- readable name for this executable.
[$sel:name:PipelineExecutablePropertiesKHR] :: PipelineExecutablePropertiesKHR -> ByteString
-- | description is an array of MAX_DESCRIPTION_SIZE
-- char containing a null-terminated UTF-8 string which is a
-- human readable description for this executable.
[$sel:description:PipelineExecutablePropertiesKHR] :: PipelineExecutablePropertiesKHR -> ByteString
-- | subgroupSize is the subgroup size with which this executable
-- is dispatched.
[$sel:subgroupSize:PipelineExecutablePropertiesKHR] :: PipelineExecutablePropertiesKHR -> Word32
-- | VkPipelineExecutableInfoKHR - Structure describing a pipeline
-- executable to query for associated statistics or internal
-- representations
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Pipeline, StructureType,
-- getPipelineExecutableInternalRepresentationsKHR,
-- getPipelineExecutableStatisticsKHR
data PipelineExecutableInfoKHR
PipelineExecutableInfoKHR :: Pipeline -> Word32 -> PipelineExecutableInfoKHR
-- | pipeline is the pipeline to query.
--
-- pipeline must be a valid Pipeline handle
[$sel:pipeline:PipelineExecutableInfoKHR] :: PipelineExecutableInfoKHR -> Pipeline
-- | executableIndex is the index of the executable to query in
-- the array of executable properties returned by
-- getPipelineExecutablePropertiesKHR.
--
-- executableIndex must be less than the number of
-- executables associated with pipeline as returned in the
-- pExecutableCount parameter of
-- getPipelineExecutablePropertiesKHR
[$sel:executableIndex:PipelineExecutableInfoKHR] :: PipelineExecutableInfoKHR -> Word32
-- | VkPipelineExecutableStatisticKHR - Structure describing a compile-time
-- pipeline executable statistic
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineExecutableStatisticFormatKHR,
-- PipelineExecutableStatisticValueKHR, StructureType,
-- getPipelineExecutableStatisticsKHR
data PipelineExecutableStatisticKHR
PipelineExecutableStatisticKHR :: ByteString -> ByteString -> PipelineExecutableStatisticFormatKHR -> PipelineExecutableStatisticValueKHR -> PipelineExecutableStatisticKHR
-- | name is an array of MAX_DESCRIPTION_SIZE char
-- containing a null-terminated UTF-8 string which is a short human
-- readable name for this statistic.
[$sel:name:PipelineExecutableStatisticKHR] :: PipelineExecutableStatisticKHR -> ByteString
-- | description is an array of MAX_DESCRIPTION_SIZE
-- char containing a null-terminated UTF-8 string which is a
-- human readable description for this statistic.
[$sel:description:PipelineExecutableStatisticKHR] :: PipelineExecutableStatisticKHR -> ByteString
-- | format is a PipelineExecutableStatisticFormatKHR value
-- specifying the format of the data found in value.
[$sel:format:PipelineExecutableStatisticKHR] :: PipelineExecutableStatisticKHR -> PipelineExecutableStatisticFormatKHR
-- | value is the value of this statistic.
[$sel:value:PipelineExecutableStatisticKHR] :: PipelineExecutableStatisticKHR -> PipelineExecutableStatisticValueKHR
-- | VkPipelineExecutableInternalRepresentationKHR - Structure describing
-- the textual form of a pipeline executable internal representation
--
-- Description
--
-- If pData is NULL, then the size, in bytes, of the
-- internal representation data is returned in dataSize.
-- Otherwise, dataSize must be the size of the buffer, in bytes,
-- pointed to by pData and on return dataSize is
-- overwritten with the number of bytes of data actually written to
-- pData including any trailing null character. If
-- dataSize is less than the size, in bytes, of the internal
-- representation data, at most dataSize bytes of data will be
-- written to pData and
-- getPipelineExecutableInternalRepresentationsKHR will return
-- INCOMPLETE. If isText is TRUE and
-- pData is not NULL and dataSize is not zero,
-- the last byte written to pData will be a null character.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType,
-- getPipelineExecutableInternalRepresentationsKHR
data PipelineExecutableInternalRepresentationKHR
PipelineExecutableInternalRepresentationKHR :: ByteString -> ByteString -> Bool -> Word64 -> Ptr () -> PipelineExecutableInternalRepresentationKHR
-- | name is an array of MAX_DESCRIPTION_SIZE char
-- containing a null-terminated UTF-8 string which is a short human
-- readable name for this internal representation.
[$sel:name:PipelineExecutableInternalRepresentationKHR] :: PipelineExecutableInternalRepresentationKHR -> ByteString
-- | description is an array of MAX_DESCRIPTION_SIZE
-- char containing a null-terminated UTF-8 string which is a
-- human readable description for this internal representation.
[$sel:description:PipelineExecutableInternalRepresentationKHR] :: PipelineExecutableInternalRepresentationKHR -> ByteString
-- | isText specifies whether the returned data is text or opaque
-- data. If isText is TRUE then the data returned in
-- pData is text and is guaranteed to be a null-terminated UTF-8
-- string.
[$sel:isText:PipelineExecutableInternalRepresentationKHR] :: PipelineExecutableInternalRepresentationKHR -> Bool
-- | dataSize is an integer related to the size, in bytes, of the
-- internal representation data, as described below.
[$sel:dataSize:PipelineExecutableInternalRepresentationKHR] :: PipelineExecutableInternalRepresentationKHR -> Word64
-- | pData is either NULL or a pointer to an block of
-- data into which the implementation will write the textual form of the
-- internal representation.
[$sel:data':PipelineExecutableInternalRepresentationKHR] :: PipelineExecutableInternalRepresentationKHR -> Ptr ()
data PipelineExecutableStatisticValueKHR
B32 :: Bool -> PipelineExecutableStatisticValueKHR
I64 :: Int64 -> PipelineExecutableStatisticValueKHR
U64 :: Word64 -> PipelineExecutableStatisticValueKHR
F64 :: Double -> PipelineExecutableStatisticValueKHR
peekPipelineExecutableStatisticValueKHR :: PipelineExecutableStatisticFormatKHR -> Ptr PipelineExecutableStatisticValueKHR -> IO PipelineExecutableStatisticValueKHR
-- | VkPipelineExecutableStatisticFormatKHR - Enum describing a pipeline
-- executable statistic
--
-- See Also
--
-- PipelineExecutableStatisticKHR
newtype PipelineExecutableStatisticFormatKHR
PipelineExecutableStatisticFormatKHR :: Int32 -> PipelineExecutableStatisticFormatKHR
-- | PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR specifies that
-- the statistic is returned as a 32-bit boolean value which must
-- be either TRUE or FALSE and should be read from
-- the b32 field of PipelineExecutableStatisticValueKHR.
pattern PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR :: PipelineExecutableStatisticFormatKHR
-- | PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR specifies that
-- the statistic is returned as a signed 64-bit integer and should
-- be read from the i64 field of
-- PipelineExecutableStatisticValueKHR.
pattern PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR :: PipelineExecutableStatisticFormatKHR
-- | PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR specifies that
-- the statistic is returned as an unsigned 64-bit integer and
-- should be read from the u64 field of
-- PipelineExecutableStatisticValueKHR.
pattern PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR :: PipelineExecutableStatisticFormatKHR
-- | PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR specifies that
-- the statistic is returned as a 64-bit floating-point value and
-- should be read from the f64 field of
-- PipelineExecutableStatisticValueKHR.
pattern PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR :: PipelineExecutableStatisticFormatKHR
type KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION = 1
pattern KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION :: forall a. Integral a => a
type KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME = "VK_KHR_pipeline_executable_properties"
pattern KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticFormatKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticFormatKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticFormatKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticFormatKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticValueKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutablePropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutablePropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInternalRepresentationKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInternalRepresentationKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticFormatKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticFormatKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticValueKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableStatisticValueKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInternalRepresentationKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInternalRepresentationKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInternalRepresentationKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInternalRepresentationKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutableInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutablePropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutablePropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutablePropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineExecutablePropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PipelineInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_pipeline_executable_properties.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
module Vulkan.Extensions.VK_KHR_performance_query
-- | vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR -
-- Reports properties of the performance query counters available on a
-- queue family of a device
--
-- Description
--
-- If pCounters is NULL and
-- pCounterDescriptions is NULL, then the number of
-- counters available is returned in pCounterCount. Otherwise,
-- pCounterCount must point to a variable set by the user
-- to the number of elements in the pCounters,
-- pCounterDescriptions, or both arrays and on return the
-- variable is overwritten with the number of structures actually written
-- out. If pCounterCount is less than the number of counters
-- available, at most pCounterCount structures will be written
-- and INCOMPLETE will be returned instead of SUCCESS.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pCounterCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pCounterCount is not
-- 0, and pCounters is not NULL,
-- pCounters must be a valid pointer to an array of
-- pCounterCount PerformanceCounterKHR structures
-- - If the value referenced by pCounterCount is not
-- 0, and pCounterDescriptions is not NULL,
-- pCounterDescriptions must be a valid pointer to an
-- array of pCounterCount
-- PerformanceCounterDescriptionKHR structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PhysicalDevice
enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> io (Result, "counters" ::: Vector PerformanceCounterKHR, "counterDescriptions" ::: Vector PerformanceCounterDescriptionKHR)
-- | vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR - Reports the
-- number of passes require for a performance query pool type
--
-- Description
--
-- The pPerformanceQueryCreateInfo member
-- QueryPoolPerformanceCreateInfoKHR::queueFamilyIndex
-- must be a queue family of physicalDevice. The number
-- of passes required to capture the counters specified in the
-- pPerformanceQueryCreateInfo member
-- QueryPoolPerformanceCreateInfoKHR::pCounters is
-- returned in pNumPasses.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, QueryPoolPerformanceCreateInfoKHR
getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: forall io. MonadIO io => PhysicalDevice -> ("performanceQueryCreateInfo" ::: QueryPoolPerformanceCreateInfoKHR) -> io ("numPasses" ::: Word32)
-- | vkAcquireProfilingLockKHR - Acquires the profiling lock
--
-- Description
--
-- Implementations may allow multiple actors to hold the profiling
-- lock concurrently.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AcquireProfilingLockInfoKHR, Device
acquireProfilingLockKHR :: forall io. MonadIO io => Device -> AcquireProfilingLockInfoKHR -> io ()
-- | vkReleaseProfilingLockKHR - Releases the profiling lock
--
-- Valid Usage
--
--
-- - The profiling lock of device must have been held
-- via a previous successful call to acquireProfilingLockKHR
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
-- See Also
--
-- Device
releaseProfilingLockKHR :: forall io. MonadIO io => Device -> io ()
-- | VkPhysicalDevicePerformanceQueryFeaturesKHR - Structure describing
-- performance query support for an implementation
--
-- Members
--
-- The members of the PhysicalDevicePerformanceQueryFeaturesKHR
-- structure describe the following implementation-dependent features:
--
-- Valid Usage (Implicit)
--
-- To query supported performance counter query pool features, call
-- getPhysicalDeviceFeatures2 with a
-- PhysicalDevicePerformanceQueryFeaturesKHR structure included in
-- the pNext chain of its pFeatures parameter. The
-- PhysicalDevicePerformanceQueryFeaturesKHR structure can
-- also be included in the pNext chain of a
-- DeviceCreateInfo structure, in which case it controls which
-- additional features are enabled in the device.
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevicePerformanceQueryFeaturesKHR
PhysicalDevicePerformanceQueryFeaturesKHR :: Bool -> Bool -> PhysicalDevicePerformanceQueryFeaturesKHR
-- | performanceCounterQueryPools is TRUE if the physical
-- device supports performance counter query pools.
[$sel:performanceCounterQueryPools:PhysicalDevicePerformanceQueryFeaturesKHR] :: PhysicalDevicePerformanceQueryFeaturesKHR -> Bool
-- | performanceCounterMultipleQueryPools is TRUE` if the
-- physical device supports using multiple performance query pools in a
-- primary command buffer and secondary command buffers executed within
-- it.
[$sel:performanceCounterMultipleQueryPools:PhysicalDevicePerformanceQueryFeaturesKHR] :: PhysicalDevicePerformanceQueryFeaturesKHR -> Bool
-- | VkPhysicalDevicePerformanceQueryPropertiesKHR - Structure describing
-- performance query properties for an implementation
--
-- Members
--
-- The members of the PhysicalDevicePerformanceQueryPropertiesKHR
-- structure describe the following implementation-dependent properties:
--
-- Valid Usage (Implicit)
--
-- If the PhysicalDevicePerformanceQueryPropertiesKHR structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent properties.
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevicePerformanceQueryPropertiesKHR
PhysicalDevicePerformanceQueryPropertiesKHR :: Bool -> PhysicalDevicePerformanceQueryPropertiesKHR
-- | allowCommandBufferQueryCopies is TRUE if the
-- performance query pools are allowed to be used with
-- cmdCopyQueryPoolResults.
[$sel:allowCommandBufferQueryCopies:PhysicalDevicePerformanceQueryPropertiesKHR] :: PhysicalDevicePerformanceQueryPropertiesKHR -> Bool
-- | VkPerformanceCounterKHR - Structure providing information about a
-- counter
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PerformanceCounterScopeKHR,
-- PerformanceCounterStorageKHR, PerformanceCounterUnitKHR,
-- StructureType,
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
data PerformanceCounterKHR
PerformanceCounterKHR :: PerformanceCounterUnitKHR -> PerformanceCounterScopeKHR -> PerformanceCounterStorageKHR -> ByteString -> PerformanceCounterKHR
-- | unit is a PerformanceCounterUnitKHR specifying the
-- unit that the counter data will record.
[$sel:unit:PerformanceCounterKHR] :: PerformanceCounterKHR -> PerformanceCounterUnitKHR
-- | scope is a PerformanceCounterScopeKHR specifying the
-- scope that the counter belongs to.
[$sel:scope:PerformanceCounterKHR] :: PerformanceCounterKHR -> PerformanceCounterScopeKHR
-- | storage is a PerformanceCounterStorageKHR specifying
-- the storage type that the counter’s data uses.
[$sel:storage:PerformanceCounterKHR] :: PerformanceCounterKHR -> PerformanceCounterStorageKHR
-- | uuid is an array of size UUID_SIZE, containing 8-bit
-- values that represent a universally unique identifier for the counter
-- of the physical device.
[$sel:uuid:PerformanceCounterKHR] :: PerformanceCounterKHR -> ByteString
-- | VkPerformanceCounterDescriptionKHR - Structure providing more detailed
-- information about a counter
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PerformanceCounterDescriptionFlagsKHR, StructureType,
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
data PerformanceCounterDescriptionKHR
PerformanceCounterDescriptionKHR :: PerformanceCounterDescriptionFlagsKHR -> ByteString -> ByteString -> ByteString -> PerformanceCounterDescriptionKHR
-- | flags is a bitmask of
-- PerformanceCounterDescriptionFlagBitsKHR indicating the usage
-- behavior for the counter.
[$sel:flags:PerformanceCounterDescriptionKHR] :: PerformanceCounterDescriptionKHR -> PerformanceCounterDescriptionFlagsKHR
-- | name is an array of size MAX_DESCRIPTION_SIZE,
-- containing a null-terminated UTF-8 string specifying the name of the
-- counter.
[$sel:name:PerformanceCounterDescriptionKHR] :: PerformanceCounterDescriptionKHR -> ByteString
-- | category is an array of size MAX_DESCRIPTION_SIZE,
-- containing a null-terminated UTF-8 string specifying the category of
-- the counter.
[$sel:category:PerformanceCounterDescriptionKHR] :: PerformanceCounterDescriptionKHR -> ByteString
-- | description is an array of size MAX_DESCRIPTION_SIZE,
-- containing a null-terminated UTF-8 string specifying the description
-- of the counter.
[$sel:description:PerformanceCounterDescriptionKHR] :: PerformanceCounterDescriptionKHR -> ByteString
-- | VkQueryPoolPerformanceCreateInfoKHR - Structure specifying parameters
-- of a newly created performance query pool
--
-- Valid Usage
--
--
-- - queueFamilyIndex must be a valid queue family
-- index of the device
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pCounterIndices must be a valid pointer to an
-- array of counterIndexCount uint32_t values
-- - counterIndexCount must be greater than
-- 0
--
--
-- See Also
--
-- StructureType,
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
data QueryPoolPerformanceCreateInfoKHR
QueryPoolPerformanceCreateInfoKHR :: Word32 -> Vector Word32 -> QueryPoolPerformanceCreateInfoKHR
-- | queueFamilyIndex is the queue family index to create this
-- performance query pool for.
[$sel:queueFamilyIndex:QueryPoolPerformanceCreateInfoKHR] :: QueryPoolPerformanceCreateInfoKHR -> Word32
-- | pCounterIndices is the array of indices into the
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR::pCounters
-- to enable in this performance query pool.
[$sel:counterIndices:QueryPoolPerformanceCreateInfoKHR] :: QueryPoolPerformanceCreateInfoKHR -> Vector Word32
-- | VkAcquireProfilingLockInfoKHR - Structure specifying parameters to
-- acquire the profiling lock
--
-- Valid Usage (Implicit)
--
-- If timeout is 0, acquireProfilingLockKHR will not
-- block while attempting to acquire the profling lock. If
-- timeout is UINT64_MAX, the function will not return
-- until the profiling lock was acquired.
--
-- See Also
--
-- AcquireProfilingLockFlagsKHR, StructureType,
-- acquireProfilingLockKHR
data AcquireProfilingLockInfoKHR
AcquireProfilingLockInfoKHR :: AcquireProfilingLockFlagsKHR -> Word64 -> AcquireProfilingLockInfoKHR
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:AcquireProfilingLockInfoKHR] :: AcquireProfilingLockInfoKHR -> AcquireProfilingLockFlagsKHR
-- | timeout indicates how long the function waits, in
-- nanoseconds, if the profiling lock is not available.
[$sel:timeout:AcquireProfilingLockInfoKHR] :: AcquireProfilingLockInfoKHR -> Word64
-- | VkPerformanceQuerySubmitInfoKHR - Structure indicating which counter
-- pass index is active for performance queries
--
-- Description
--
-- If the SubmitInfo::pNext chain does not include this
-- structure, the batch defaults to use counter pass index 0.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PerformanceQuerySubmitInfoKHR
PerformanceQuerySubmitInfoKHR :: Word32 -> PerformanceQuerySubmitInfoKHR
-- | counterPassIndex specifies which counter pass index is
-- active.
--
-- counterPassIndex must be less than the number of
-- counter passes required by any queries within the batch. The required
-- number of counter passes for a performance query is obtained by
-- calling getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
[$sel:counterPassIndex:PerformanceQuerySubmitInfoKHR] :: PerformanceQuerySubmitInfoKHR -> Word32
data PerformanceCounterResultKHR
Int32Counter :: Int32 -> PerformanceCounterResultKHR
Int64Counter :: Int64 -> PerformanceCounterResultKHR
Uint32Counter :: Word32 -> PerformanceCounterResultKHR
Uint64Counter :: Word64 -> PerformanceCounterResultKHR
Float32Counter :: Float -> PerformanceCounterResultKHR
Float64Counter :: Double -> PerformanceCounterResultKHR
-- | VkPerformanceCounterScopeKHR - Supported counter scope types
--
-- See Also
--
-- PerformanceCounterKHR
newtype PerformanceCounterScopeKHR
PerformanceCounterScopeKHR :: Int32 -> PerformanceCounterScopeKHR
-- | PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR - the performance
-- counter scope is a single complete command buffer.
pattern PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR :: PerformanceCounterScopeKHR
-- | PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR - the performance
-- counter scope is zero or more complete render passes. The performance
-- query containing the performance counter must begin and end
-- outside a render pass instance.
pattern PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR :: PerformanceCounterScopeKHR
-- | PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR - the performance counter
-- scope is zero or more commands.
pattern PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR :: PerformanceCounterScopeKHR
-- | VkPerformanceCounterUnitKHR - Supported counter unit types
--
-- See Also
--
-- PerformanceCounterKHR
newtype PerformanceCounterUnitKHR
PerformanceCounterUnitKHR :: Int32 -> PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_GENERIC_KHR - the performance counter
-- unit is a generic data point.
pattern PERFORMANCE_COUNTER_UNIT_GENERIC_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR - the performance
-- counter unit is a percentage (%).
pattern PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR - the performance
-- counter unit is a value of nanoseconds (ns).
pattern PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_BYTES_KHR - the performance counter
-- unit is a value of bytes.
pattern PERFORMANCE_COUNTER_UNIT_BYTES_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR - the performance
-- counter unit is a value of bytes/s.
pattern PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_KELVIN_KHR - the performance counter
-- unit is a temperature reported in Kelvin.
pattern PERFORMANCE_COUNTER_UNIT_KELVIN_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_WATTS_KHR - the performance counter
-- unit is a value of watts (W).
pattern PERFORMANCE_COUNTER_UNIT_WATTS_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_VOLTS_KHR - the performance counter
-- unit is a value of volts (V).
pattern PERFORMANCE_COUNTER_UNIT_VOLTS_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_AMPS_KHR - the performance counter
-- unit is a value of amps (A).
pattern PERFORMANCE_COUNTER_UNIT_AMPS_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_HERTZ_KHR - the performance counter
-- unit is a value of hertz (Hz).
pattern PERFORMANCE_COUNTER_UNIT_HERTZ_KHR :: PerformanceCounterUnitKHR
-- | PERFORMANCE_COUNTER_UNIT_CYCLES_KHR - the performance counter
-- unit is a value of cycles.
pattern PERFORMANCE_COUNTER_UNIT_CYCLES_KHR :: PerformanceCounterUnitKHR
-- | VkPerformanceCounterStorageKHR - Supported counter storage types
--
-- See Also
--
-- PerformanceCounterKHR
newtype PerformanceCounterStorageKHR
PerformanceCounterStorageKHR :: Int32 -> PerformanceCounterStorageKHR
-- | PERFORMANCE_COUNTER_STORAGE_INT32_KHR - the performance counter
-- storage is a 32-bit signed integer.
pattern PERFORMANCE_COUNTER_STORAGE_INT32_KHR :: PerformanceCounterStorageKHR
-- | PERFORMANCE_COUNTER_STORAGE_INT64_KHR - the performance counter
-- storage is a 64-bit signed integer.
pattern PERFORMANCE_COUNTER_STORAGE_INT64_KHR :: PerformanceCounterStorageKHR
-- | PERFORMANCE_COUNTER_STORAGE_UINT32_KHR - the performance
-- counter storage is a 32-bit unsigned integer.
pattern PERFORMANCE_COUNTER_STORAGE_UINT32_KHR :: PerformanceCounterStorageKHR
-- | PERFORMANCE_COUNTER_STORAGE_UINT64_KHR - the performance
-- counter storage is a 64-bit unsigned integer.
pattern PERFORMANCE_COUNTER_STORAGE_UINT64_KHR :: PerformanceCounterStorageKHR
-- | PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR - the performance
-- counter storage is a 32-bit floating-point.
pattern PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR :: PerformanceCounterStorageKHR
-- | PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR - the performance
-- counter storage is a 64-bit floating-point.
pattern PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR :: PerformanceCounterStorageKHR
-- | VkPerformanceCounterDescriptionFlagBitsKHR - Bitmask specifying usage
-- behavior for a counter
--
-- See Also
--
-- PerformanceCounterDescriptionFlagsKHR
newtype PerformanceCounterDescriptionFlagBitsKHR
PerformanceCounterDescriptionFlagBitsKHR :: Flags -> PerformanceCounterDescriptionFlagBitsKHR
-- | PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR
-- specifies that recording the counter may have a noticeable
-- performance impact.
pattern PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR :: PerformanceCounterDescriptionFlagBitsKHR
-- | PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR
-- specifies that concurrently recording the counter while other
-- submitted command buffers are running may impact the accuracy
-- of the recording.
pattern PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR :: PerformanceCounterDescriptionFlagBitsKHR
type PerformanceCounterDescriptionFlagsKHR = PerformanceCounterDescriptionFlagBitsKHR
-- | VkAcquireProfilingLockFlagBitsKHR - Reserved for future use
--
-- See Also
--
-- AcquireProfilingLockFlagsKHR
newtype AcquireProfilingLockFlagBitsKHR
AcquireProfilingLockFlagBitsKHR :: Flags -> AcquireProfilingLockFlagBitsKHR
type AcquireProfilingLockFlagsKHR = AcquireProfilingLockFlagBitsKHR
type KHR_PERFORMANCE_QUERY_SPEC_VERSION = 1
pattern KHR_PERFORMANCE_QUERY_SPEC_VERSION :: forall a. Integral a => a
type KHR_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_KHR_performance_query"
pattern KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterStorageKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterStorageKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterStorageKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterStorageKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterUnitKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterUnitKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterUnitKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterUnitKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterScopeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterScopeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterScopeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterScopeKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterResultKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.QueryPoolPerformanceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.QueryPoolPerformanceCreateInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_performance_query.AcquireProfilingLockFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterDescriptionFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterStorageKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterStorageKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterUnitKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterUnitKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterScopeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterScopeKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterResultKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceCounterResultKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PerformanceQuerySubmitInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.QueryPoolPerformanceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.QueryPoolPerformanceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.QueryPoolPerformanceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryPropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_performance_query.PhysicalDevicePerformanceQueryFeaturesKHR
module Vulkan.Extensions.VK_KHR_external_semaphore_fd
-- | vkGetSemaphoreFdKHR - Get a POSIX file descriptor handle for a
-- semaphore
--
-- Description
--
-- Each call to getSemaphoreFdKHR must create a new file
-- descriptor and transfer ownership of it to the application. To avoid
-- leaking resources, the application must release ownership of
-- the file descriptor when it is no longer needed.
--
-- Note
--
-- Ownership can be released in many ways. For example, the application
-- can call close() on the file descriptor, or transfer
-- ownership back to Vulkan by using the file descriptor to import a
-- semaphore payload.
--
-- Where supported by the operating system, the implementation
-- must set the file descriptor to be closed automatically when an
-- execve system call is made.
--
-- Exporting a file descriptor from a semaphore may have side
-- effects depending on the transference of the specified handle type, as
-- described in Importing Semaphore State.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SemaphoreGetFdInfoKHR
getSemaphoreFdKHR :: forall io. MonadIO io => Device -> SemaphoreGetFdInfoKHR -> io ("fd" ::: Int32)
-- | vkImportSemaphoreFdKHR - Import a semaphore from a POSIX file
-- descriptor
--
-- Description
--
-- Importing a semaphore payload from a file descriptor transfers
-- ownership of the file descriptor from the application to the Vulkan
-- implementation. The application must not perform any operations
-- on the file descriptor after a successful import.
--
-- Applications can import the same semaphore payload into
-- multiple instances of Vulkan, into the same instance from which it was
-- exported, and multiple times into a given Vulkan instance.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ImportSemaphoreFdInfoKHR
importSemaphoreFdKHR :: forall io. MonadIO io => Device -> ImportSemaphoreFdInfoKHR -> io ()
-- | VkImportSemaphoreFdInfoKHR - Structure specifying POSIX file
-- descriptor to import to a semaphore
--
-- Description
--
-- The handle types supported by handleType are:
--
-- TODO: table
--
-- Handle Types Supported by ImportSemaphoreFdInfoKHR
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to semaphore must be externally
-- synchronized
--
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlagBits, Semaphore,
-- SemaphoreImportFlags, StructureType,
-- importSemaphoreFdKHR
data ImportSemaphoreFdInfoKHR
ImportSemaphoreFdInfoKHR :: Semaphore -> SemaphoreImportFlags -> ExternalSemaphoreHandleTypeFlagBits -> Int32 -> ImportSemaphoreFdInfoKHR
-- | semaphore is the semaphore into which the payload will be
-- imported.
[$sel:semaphore:ImportSemaphoreFdInfoKHR] :: ImportSemaphoreFdInfoKHR -> Semaphore
-- | flags is a bitmask of SemaphoreImportFlagBits
-- specifying additional parameters for the semaphore payload import
-- operation.
[$sel:flags:ImportSemaphoreFdInfoKHR] :: ImportSemaphoreFdInfoKHR -> SemaphoreImportFlags
-- | handleType specifies the type of fd.
[$sel:handleType:ImportSemaphoreFdInfoKHR] :: ImportSemaphoreFdInfoKHR -> ExternalSemaphoreHandleTypeFlagBits
-- | fd is the external handle to import.
[$sel:fd:ImportSemaphoreFdInfoKHR] :: ImportSemaphoreFdInfoKHR -> Int32
-- | VkSemaphoreGetFdInfoKHR - Structure describing a POSIX FD semaphore
-- export operation
--
-- Description
--
-- The properties of the file descriptor returned depend on the value of
-- handleType. See ExternalSemaphoreHandleTypeFlagBits
-- for a description of the properties of the defined external semaphore
-- handle types.
--
-- Valid Usage
--
--
-- - handleType must have been included in
-- ExportSemaphoreCreateInfo::handleTypes when
-- semaphore’s current payload was created
--
--
--
-- - semaphore must not currently have its payload
-- replaced by an imported payload as described below in Importing
-- Semaphore Payloads unless that imported payload’s handle type was
-- included in
-- ExternalSemaphoreProperties::exportFromImportedHandleTypes
-- for handleType
-- - If handleType refers to a handle type with copy payload
-- transference semantics, as defined below in Importing Semaphore
-- Payloads, there must be no queue waiting on
-- semaphore
-- - If handleType refers to a handle type with copy payload
-- transference semantics, semaphore must be signaled, or
-- have an associated semaphore signal operation pending
-- execution
-- - handleType must be defined as a POSIX file
-- descriptor handle
-- - If handleType refers to a handle type with copy payload
-- transference semantics, semaphore must have been
-- created with a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY
-- - If handleType refers to a handle type with copy payload
-- transference semantics, semaphore must have an
-- associated semaphore signal operation that has been submitted for
-- execution and any semaphore signal operations on which it depends (if
-- any) must have also been submitted for execution
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlagBits, Semaphore,
-- StructureType, getSemaphoreFdKHR
data SemaphoreGetFdInfoKHR
SemaphoreGetFdInfoKHR :: Semaphore -> ExternalSemaphoreHandleTypeFlagBits -> SemaphoreGetFdInfoKHR
-- | semaphore is the semaphore from which state will be exported.
[$sel:semaphore:SemaphoreGetFdInfoKHR] :: SemaphoreGetFdInfoKHR -> Semaphore
-- | handleType is the type of handle requested.
[$sel:handleType:SemaphoreGetFdInfoKHR] :: SemaphoreGetFdInfoKHR -> ExternalSemaphoreHandleTypeFlagBits
type KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION = 1
pattern KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = "VK_KHR_external_semaphore_fd"
pattern KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_semaphore_fd.SemaphoreGetFdInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_semaphore_fd.ImportSemaphoreFdInfoKHR
module Vulkan.Extensions.VK_KHR_external_memory_fd
-- | vkGetMemoryFdKHR - Get a POSIX file descriptor for a memory object
--
-- Description
--
-- Each call to getMemoryFdKHR must create a new file
-- descriptor and transfer ownership of it to the application. To avoid
-- leaking resources, the application must release ownership of
-- the file descriptor using the close system call when it is no
-- longer needed, or by importing a Vulkan memory object from it. Where
-- supported by the operating system, the implementation must set
-- the file descriptor to be closed automatically when an execve
-- system call is made.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, MemoryGetFdInfoKHR
getMemoryFdKHR :: forall io. MonadIO io => Device -> MemoryGetFdInfoKHR -> io ("fd" ::: Int32)
-- | vkGetMemoryFdPropertiesKHR - Get Properties of External Memory File
-- Descriptors
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ExternalMemoryHandleTypeFlagBits,
-- MemoryFdPropertiesKHR
getMemoryFdPropertiesKHR :: forall io. MonadIO io => Device -> ExternalMemoryHandleTypeFlagBits -> ("fd" ::: Int32) -> io MemoryFdPropertiesKHR
-- | VkImportMemoryFdInfoKHR - import memory created on the same physical
-- device from a file descriptor
--
-- Description
--
-- Importing memory from a file descriptor transfers ownership of the
-- file descriptor from the application to the Vulkan implementation. The
-- application must not perform any operations on the file
-- descriptor after a successful import.
--
-- Applications can import the same underlying memory into
-- multiple instances of Vulkan, into the same instance from which it was
-- exported, and multiple times into a given Vulkan instance. In all
-- cases, each import operation must create a distinct
-- DeviceMemory object.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagBits, StructureType
data ImportMemoryFdInfoKHR
ImportMemoryFdInfoKHR :: ExternalMemoryHandleTypeFlagBits -> Int32 -> ImportMemoryFdInfoKHR
-- | handleType specifies the handle type of fd.
[$sel:handleType:ImportMemoryFdInfoKHR] :: ImportMemoryFdInfoKHR -> ExternalMemoryHandleTypeFlagBits
-- | fd is the external handle to import.
[$sel:fd:ImportMemoryFdInfoKHR] :: ImportMemoryFdInfoKHR -> Int32
-- | VkMemoryFdPropertiesKHR - Properties of External Memory File
-- Descriptors
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, getMemoryFdPropertiesKHR
data MemoryFdPropertiesKHR
MemoryFdPropertiesKHR :: Word32 -> MemoryFdPropertiesKHR
-- | memoryTypeBits is a bitmask containing one bit set for every
-- memory type which the specified file descriptor can be imported
-- as.
[$sel:memoryTypeBits:MemoryFdPropertiesKHR] :: MemoryFdPropertiesKHR -> Word32
-- | VkMemoryGetFdInfoKHR - Structure describing a POSIX FD semaphore
-- export operation
--
-- Description
--
-- The properties of the file descriptor exported depend on the value of
-- handleType. See ExternalMemoryHandleTypeFlagBits for a
-- description of the properties of the defined external memory handle
-- types.
--
-- Note
--
-- The size of the exported file may be larger than the size
-- requested by MemoryAllocateInfo::allocationSize. If
-- handleType is
-- EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT, then the
-- application can query the file’s actual size with
-- lseek(2).
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceMemory, ExternalMemoryHandleTypeFlagBits,
-- StructureType, getMemoryFdKHR
data MemoryGetFdInfoKHR
MemoryGetFdInfoKHR :: DeviceMemory -> ExternalMemoryHandleTypeFlagBits -> MemoryGetFdInfoKHR
-- | memory is the memory object from which the handle will be
-- exported.
--
-- memory must be a valid DeviceMemory handle
[$sel:memory:MemoryGetFdInfoKHR] :: MemoryGetFdInfoKHR -> DeviceMemory
-- | handleType is the type of handle requested.
--
-- handleType must have been included in
-- ExportMemoryAllocateInfo::handleTypes when
-- memory was created
--
-- handleType must be defined as a POSIX file descriptor
-- handle
--
-- handleType must be a valid
-- ExternalMemoryHandleTypeFlagBits value
[$sel:handleType:MemoryGetFdInfoKHR] :: MemoryGetFdInfoKHR -> ExternalMemoryHandleTypeFlagBits
type KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION = 1
pattern KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME = "VK_KHR_external_memory_fd"
pattern KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryGetFdInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_fd.MemoryFdPropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_fd.ImportMemoryFdInfoKHR
module Vulkan.Extensions.VK_KHR_external_fence_fd
-- | vkGetFenceFdKHR - Get a POSIX file descriptor handle for a fence
--
-- Description
--
-- Each call to getFenceFdKHR must create a new file
-- descriptor and transfer ownership of it to the application. To avoid
-- leaking resources, the application must release ownership of
-- the file descriptor when it is no longer needed.
--
-- Note
--
-- Ownership can be released in many ways. For example, the application
-- can call close() on the file descriptor, or transfer
-- ownership back to Vulkan by using the file descriptor to import a
-- fence payload.
--
-- If pGetFdInfo->handleType is
-- EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT and the fence is
-- signaled at the time getFenceFdKHR is called, pFd
-- may return the value -1 instead of a valid file
-- descriptor.
--
-- Where supported by the operating system, the implementation
-- must set the file descriptor to be closed automatically when an
-- execve system call is made.
--
-- Exporting a file descriptor from a fence may have side effects
-- depending on the transference of the specified handle type, as
-- described in Importing Fence State.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, FenceGetFdInfoKHR
getFenceFdKHR :: forall io. MonadIO io => Device -> FenceGetFdInfoKHR -> io ("fd" ::: Int32)
-- | vkImportFenceFdKHR - Import a fence from a POSIX file descriptor
--
-- Description
--
-- Importing a fence payload from a file descriptor transfers ownership
-- of the file descriptor from the application to the Vulkan
-- implementation. The application must not perform any operations
-- on the file descriptor after a successful import.
--
-- Applications can import the same fence payload into multiple
-- instances of Vulkan, into the same instance from which it was
-- exported, and multiple times into a given Vulkan instance.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ImportFenceFdInfoKHR
importFenceFdKHR :: forall io. MonadIO io => Device -> ImportFenceFdInfoKHR -> io ()
-- | VkImportFenceFdInfoKHR - (None)
--
-- Description
--
-- The handle types supported by handleType are:
--
-- TODO: table
--
-- Handle Types Supported by ImportFenceFdInfoKHR
--
-- Valid Usage
--
--
--
--
--
-- If handleType is
-- EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT, the special value
-- -1 for fd is treated like a valid sync file
-- descriptor referring to an object that has already signaled. The
-- import operation will succeed and the Fence will have a
-- temporarily imported payload as if a valid file descriptor had been
-- provided.
--
-- Note
--
-- This special behavior for importing an invalid sync file descriptor
-- allows easier interoperability with other system APIs which use the
-- convention that an invalid sync file descriptor represents work that
-- has already completed and does not need to be waited for. It is
-- consistent with the option for implementations to return a -1
-- file descriptor when exporting a
-- EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT from a Fence
-- which is signaled.
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to fence must be externally
-- synchronized
--
--
-- See Also
--
-- ExternalFenceHandleTypeFlagBits, Fence,
-- FenceImportFlags, StructureType, importFenceFdKHR
data ImportFenceFdInfoKHR
ImportFenceFdInfoKHR :: Fence -> FenceImportFlags -> ExternalFenceHandleTypeFlagBits -> Int32 -> ImportFenceFdInfoKHR
-- | fence is the fence into which the payload will be imported.
[$sel:fence:ImportFenceFdInfoKHR] :: ImportFenceFdInfoKHR -> Fence
-- | flags is a bitmask of FenceImportFlagBits specifying
-- additional parameters for the fence payload import operation.
[$sel:flags:ImportFenceFdInfoKHR] :: ImportFenceFdInfoKHR -> FenceImportFlags
-- | handleType specifies the type of fd.
[$sel:handleType:ImportFenceFdInfoKHR] :: ImportFenceFdInfoKHR -> ExternalFenceHandleTypeFlagBits
-- | fd is the external handle to import.
[$sel:fd:ImportFenceFdInfoKHR] :: ImportFenceFdInfoKHR -> Int32
-- | VkFenceGetFdInfoKHR - Structure describing a POSIX FD fence export
-- operation
--
-- Description
--
-- The properties of the file descriptor returned depend on the value of
-- handleType. See ExternalFenceHandleTypeFlagBits for a
-- description of the properties of the defined external fence handle
-- types.
--
-- Valid Usage
--
--
-- - handleType must have been included in
-- ExportFenceCreateInfo::handleTypes when
-- fence’s current payload was created
--
--
--
-- - If handleType refers to a handle type with copy payload
-- transference semantics, fence must be signaled, or
-- have an associated fence signal operation pending
-- execution
-- - fence must not currently have its payload replaced
-- by an imported payload as described below in Importing Fence
-- Payloads unless that imported payload’s handle type was included
-- in
-- ExternalFenceProperties::exportFromImportedHandleTypes
-- for handleType
-- - handleType must be defined as a POSIX file
-- descriptor handle
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalFenceHandleTypeFlagBits, Fence,
-- StructureType, getFenceFdKHR
data FenceGetFdInfoKHR
FenceGetFdInfoKHR :: Fence -> ExternalFenceHandleTypeFlagBits -> FenceGetFdInfoKHR
-- | fence is the fence from which state will be exported.
[$sel:fence:FenceGetFdInfoKHR] :: FenceGetFdInfoKHR -> Fence
-- | handleType is the type of handle requested.
[$sel:handleType:FenceGetFdInfoKHR] :: FenceGetFdInfoKHR -> ExternalFenceHandleTypeFlagBits
type KHR_EXTERNAL_FENCE_FD_SPEC_VERSION = 1
pattern KHR_EXTERNAL_FENCE_FD_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME = "VK_KHR_external_fence_fd"
pattern KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_fence_fd.FenceGetFdInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_fence_fd.ImportFenceFdInfoKHR
module Vulkan.Extensions.VK_EXT_transform_feedback
-- | vkCmdBindTransformFeedbackBuffersEXT - Bind transform feedback buffers
-- to a command buffer
--
-- Description
--
-- The values taken from elements i of pBuffers,
-- pOffsets and pSizes replace the current state for
-- the transform feedback binding firstBinding + i, for i in [0,
-- bindingCount). The transform feedback binding is updated to
-- start at the offset indicated by pOffsets[i] from the start
-- of the buffer pBuffers[i].
--
-- Valid Usage
--
--
--
--
-- - firstBinding must be less than
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
-- - The sum of firstBinding and bindingCount
-- must be less than or equal to
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
-- - All elements of pOffsets must be less than the
-- size of the corresponding element in pBuffers
-- - All elements of pOffsets must be a multiple of
-- 4
-- - All elements of pBuffers must have been created
-- with the BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT
-- flag
-- - If the optional pSize array is specified, each element of
-- pSizes must either be WHOLE_SIZE, or be less
-- than or equal to
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBufferSize
-- - All elements of pSizes must be less than or equal
-- to the size of the corresponding buffer in pBuffers
-- - All elements of pOffsets plus pSizes, where the
-- pSizes, element is not WHOLE_SIZE, must be less
-- than or equal to the size of the corresponding element in
-- pBuffers
-- - Each element of pBuffers that is non-sparse must
-- be bound completely and contiguously to a single DeviceMemory
-- object
-- - Transform feedback must not be active when the
-- cmdBindTransformFeedbackBuffersEXT command is recorded
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pBuffers must be a valid pointer to an array of
-- bindingCount valid Buffer handles
-- - pOffsets must be a valid pointer to an array of
-- bindingCount DeviceSize values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - bindingCount must be greater than 0
-- - Both of commandBuffer, and the elements of
-- pBuffers must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdBindTransformFeedbackBuffersEXT :: forall io. MonadIO io => CommandBuffer -> ("firstBinding" ::: Word32) -> ("buffers" ::: Vector Buffer) -> ("offsets" ::: Vector DeviceSize) -> ("sizes" ::: Vector DeviceSize) -> io ()
-- | vkCmdBeginTransformFeedbackEXT - Make transform feedback active in the
-- command buffer
--
-- Description
--
-- The active transform feedback buffers will capture primitives emitted
-- from the corresponding XfbBuffer in the bound graphics
-- pipeline. Any XfbBuffer emitted that does not output to an
-- active transform feedback buffer will not be captured.
--
-- Valid Usage
--
--
--
--
-- - Transform feedback must not be active
-- - firstCounterBuffer must be less than
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
-- - The sum of firstCounterBuffer and
-- counterBufferCount must be less than or equal to
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
-- - If counterBufferCount is not 0, and
-- pCounterBuffers is not NULL,
-- pCounterBuffers must be a valid pointer to an array of
-- counterBufferCount Buffer handles that are either
-- valid or NULL_HANDLE
-- - For each buffer handle in the array, if it is not
-- NULL_HANDLE it must reference a buffer large enough to
-- hold 4 bytes at the corresponding offset from the
-- pCounterBufferOffsets array
-- - If pCounterBuffer is NULL, then
-- pCounterBufferOffsets must also be NULL
-- - For each buffer handle in the pCounterBuffers array that
-- is not NULL_HANDLE it must have been created with a
-- usage value containing
-- BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
-- - Transform feedback must not be made active in a render pass
-- instance with multiview enabled
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If counterBufferCount is not 0, and
-- pCounterBufferOffsets is not NULL,
-- pCounterBufferOffsets must be a valid pointer to an
-- array of counterBufferCount DeviceSize values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Both of commandBuffer, and the elements of
-- pCounterBuffers that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdBeginTransformFeedbackEXT :: forall io. MonadIO io => CommandBuffer -> ("firstCounterBuffer" ::: Word32) -> ("counterBuffers" ::: Vector Buffer) -> ("counterBufferOffsets" ::: Vector DeviceSize) -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginTransformFeedbackEXT and
-- cmdEndTransformFeedbackEXT
--
-- Note that cmdEndTransformFeedbackEXT is *not* called if an
-- exception is thrown by the inner action.
cmdUseTransformFeedbackEXT :: forall io r. MonadIO io => CommandBuffer -> Word32 -> Vector Buffer -> Vector DeviceSize -> io r -> io r
-- | vkCmdEndTransformFeedbackEXT - Make transform feedback inactive in the
-- command buffer
--
-- Valid Usage
--
--
--
--
-- - Transform feedback must be active
-- - firstCounterBuffer must be less than
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
-- - The sum of firstCounterBuffer and
-- counterBufferCount must be less than or equal to
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackBuffers
-- - If counterBufferCount is not 0, and
-- pCounterBuffers is not NULL,
-- pCounterBuffers must be a valid pointer to an array of
-- counterBufferCount Buffer handles that are either
-- valid or NULL_HANDLE
-- - For each buffer handle in the array, if it is not
-- NULL_HANDLE it must reference a buffer large enough to
-- hold 4 bytes at the corresponding offset from the
-- pCounterBufferOffsets array
-- - If pCounterBuffer is NULL, then
-- pCounterBufferOffsets must also be NULL
-- - For each buffer handle in the pCounterBuffers array that
-- is not NULL_HANDLE it must have been created with a
-- usage value containing
-- BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If counterBufferCount is not 0, and
-- pCounterBufferOffsets is not NULL,
-- pCounterBufferOffsets must be a valid pointer to an
-- array of counterBufferCount DeviceSize values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Both of commandBuffer, and the elements of
-- pCounterBuffers that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdEndTransformFeedbackEXT :: forall io. MonadIO io => CommandBuffer -> ("firstCounterBuffer" ::: Word32) -> ("counterBuffers" ::: Vector Buffer) -> ("counterBufferOffsets" ::: Vector DeviceSize) -> io ()
-- | vkCmdBeginQueryIndexedEXT - Begin an indexed query
--
-- Description
--
-- The cmdBeginQueryIndexedEXT command operates the same as the
-- cmdBeginQuery command, except that it also accepts a query type
-- specific index parameter.
--
-- Valid Usage
--
--
-- - queryPool must have been created with a
-- queryType that differs from that of any queries that are
-- active within commandBuffer
--
--
--
-- - All queries used by the command must be unavailable
-- - The queryType used to create queryPool
-- must not be QUERY_TYPE_TIMESTAMP
-- - If the precise occlusion queries feature is not enabled, or
-- the queryType used to create queryPool was not
-- QUERY_TYPE_OCCLUSION, flags must not contain
-- QUERY_CONTROL_PRECISE_BIT
-- - query must be less than the number of queries in
-- queryPool
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_OCCLUSION, the CommandPool that
-- commandBuffer was allocated from must support graphics
-- operations
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_PIPELINE_STATISTICS and any of the
-- pipelineStatistics indicate graphics operations, the
-- CommandPool that commandBuffer was allocated from
-- must support graphics operations
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_PIPELINE_STATISTICS and any of the
-- pipelineStatistics indicate compute operations, the
-- CommandPool that commandBuffer was allocated from
-- must support compute operations
-- - commandBuffer must not be a protected command
-- buffer
-- - If called within a render pass instance, the sum of query
-- and the number of bits set in the current subpass’s view mask
-- must be less than or equal to the number of queries in
-- queryPool
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT the CommandPool
-- that commandBuffer was allocated from must support
-- graphics operations
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT the index
-- parameter must be less than
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackStreams
-- - If the queryType used to create queryPool was
-- not QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT the index
-- must be zero
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT then
-- PhysicalDeviceTransformFeedbackPropertiesEXT::transformFeedbackQueries
-- must be supported
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR, the profiling lock
-- must have been held before beginCommandBuffer was called
-- on commandBuffer
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used
-- to create queryPool was
-- PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR, the query begin
-- must be the first recorded command in
-- commandBuffer
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used
-- to create queryPool was
-- PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR, the begin command
-- must not be recorded within a render pass instance
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR and another query pool with a
-- queryType QUERY_TYPE_PERFORMANCE_QUERY_KHR has been
-- used within commandBuffer, its parent primary command buffer
-- or secondary command buffer recorded within the same parent primary
-- command buffer as commandBuffer, the
-- performanceCounterMultipleQueryPools feature must be
-- enabled
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR, this command must not
-- be recorded in a command buffer that, either directly or through
-- secondary command buffers, also contains a cmdResetQueryPool
-- command affecting the same query
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - flags must be a valid combination of
-- QueryControlFlagBits values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Both of commandBuffer, and queryPool must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, QueryControlFlags, QueryPool
cmdBeginQueryIndexedEXT :: forall io. MonadIO io => CommandBuffer -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> ("index" ::: Word32) -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginQueryIndexedEXT and cmdEndQueryIndexedEXT
--
-- Note that cmdEndQueryIndexedEXT is *not* called if an exception
-- is thrown by the inner action.
cmdUseQueryIndexedEXT :: forall io r. MonadIO io => CommandBuffer -> QueryPool -> Word32 -> QueryControlFlags -> Word32 -> io r -> io r
-- | vkCmdEndQueryIndexedEXT - Ends a query
--
-- Description
--
-- The cmdEndQueryIndexedEXT command operates the same as the
-- cmdEndQuery command, except that it also accepts a query type
-- specific index parameter.
--
-- Valid Usage
--
--
-- - All queries used by the command must be active
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Both of commandBuffer, and queryPool must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, QueryPool
cmdEndQueryIndexedEXT :: forall io. MonadIO io => CommandBuffer -> QueryPool -> ("query" ::: Word32) -> ("index" ::: Word32) -> io ()
-- | vkCmdDrawIndirectByteCountEXT - Draw primitives where the vertex count
-- is derived from the counter byte value in the counter buffer
--
-- Description
--
-- When the command is executed, primitives are assembled in the same way
-- as done with cmdDraw except the vertexCount is
-- calculated based on the byte count read from counterBuffer at
-- offset counterBufferOffset. The assembled primitives execute
-- the bound graphics pipeline.
--
-- The effective vertexCount is calculated as follows:
--
--
-- const uint32_t * counterBufferPtr = (const uint8_t *)counterBuffer.address + counterBufferOffset;
-- vertexCount = floor(max(0, (*counterBufferPtr - counterOffset)) / vertexStride);
--
--
-- The effective firstVertex is zero.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
--
-- - PhysicalDeviceTransformFeedbackFeaturesEXT::transformFeedback
-- must be enabled
-- - The implementation must support
-- PhysicalDeviceTransformFeedbackPropertiesEXT::transformFeedbackDraw
-- - vertexStride must be greater than 0 and less than
-- or equal to
-- PhysicalDeviceLimits::maxTransformFeedbackBufferDataStride
-- - counterBuffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - commandBuffer must not be a protected command
-- buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - counterBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Both of commandBuffer, and counterBuffer
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawIndirectByteCountEXT :: forall io. MonadIO io => CommandBuffer -> ("instanceCount" ::: Word32) -> ("firstInstance" ::: Word32) -> ("counterBuffer" ::: Buffer) -> ("counterBufferOffset" ::: DeviceSize) -> ("counterOffset" ::: Word32) -> ("vertexStride" ::: Word32) -> io ()
-- | VkPhysicalDeviceTransformFeedbackFeaturesEXT - Structure describing
-- transform feedback features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceTransformFeedbackFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceTransformFeedbackFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceTransformFeedbackFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceTransformFeedbackFeaturesEXT
PhysicalDeviceTransformFeedbackFeaturesEXT :: Bool -> Bool -> PhysicalDeviceTransformFeedbackFeaturesEXT
-- | transformFeedback indicates whether the implementation
-- supports transform feedback and shader modules can declare the
-- TransformFeedback capability.
[$sel:transformFeedback:PhysicalDeviceTransformFeedbackFeaturesEXT] :: PhysicalDeviceTransformFeedbackFeaturesEXT -> Bool
-- | geometryStreams indicates whether the implementation supports
-- the GeometryStreams SPIR-V capability.
[$sel:geometryStreams:PhysicalDeviceTransformFeedbackFeaturesEXT] :: PhysicalDeviceTransformFeedbackFeaturesEXT -> Bool
-- | VkPhysicalDeviceTransformFeedbackPropertiesEXT - Structure describing
-- transform feedback properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceTransformFeedbackPropertiesEXT
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceTransformFeedbackPropertiesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits and properties.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, DeviceSize, StructureType
data PhysicalDeviceTransformFeedbackPropertiesEXT
PhysicalDeviceTransformFeedbackPropertiesEXT :: Word32 -> Word32 -> DeviceSize -> Word32 -> Word32 -> Word32 -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceTransformFeedbackPropertiesEXT
-- | maxTransformFeedbackStreams is the maximum number of vertex
-- streams that can be output from geometry shaders declared with the
-- GeometryStreams capability. If the implementation does not
-- support
-- PhysicalDeviceTransformFeedbackFeaturesEXT::geometryStreams
-- then maxTransformFeedbackStreams must be set to
-- 1.
[$sel:maxTransformFeedbackStreams:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Word32
-- | maxTransformFeedbackBuffers is the maximum number of
-- transform feedback buffers that can be bound for capturing shader
-- outputs from the last vertex processing stage.
[$sel:maxTransformFeedbackBuffers:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Word32
-- | maxTransformFeedbackBufferSize is the maximum size that can
-- be specified when binding a buffer for transform feedback in
-- cmdBindTransformFeedbackBuffersEXT.
[$sel:maxTransformFeedbackBufferSize:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> DeviceSize
-- | maxTransformFeedbackStreamDataSize is the maximum amount of
-- data in bytes for each vertex that captured to one or more transform
-- feedback buffers associated with a specific vertex stream.
[$sel:maxTransformFeedbackStreamDataSize:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Word32
-- | maxTransformFeedbackBufferDataSize is the maximum amount of
-- data in bytes for each vertex that can be captured to a specific
-- transform feedback buffer.
[$sel:maxTransformFeedbackBufferDataSize:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Word32
-- | maxTransformFeedbackBufferDataStride is the maximum stride
-- between each capture of vertex data to the buffer.
[$sel:maxTransformFeedbackBufferDataStride:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Word32
-- | transformFeedbackQueries is true if the implementation
-- supports the QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT query
-- type. transformFeedbackQueries is false if queries of this
-- type cannot be created.
[$sel:transformFeedbackQueries:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Bool
-- | transformFeedbackStreamsLinesTriangles is true if the
-- implementation supports the geometry shader OpExecutionMode
-- of OutputLineStrip and OutputTriangleStrip in
-- addition to OutputPoints when more than one vertex stream is
-- output. If transformFeedbackStreamsLinesTriangles is false
-- the implementation only supports an OpExecutionMode of
-- OutputPoints when more than one vertex stream is output from
-- the geometry shader.
[$sel:transformFeedbackStreamsLinesTriangles:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Bool
-- | transformFeedbackRasterizationStreamSelect is true if the
-- implementation supports the GeometryStreams SPIR-V capability
-- and the application can use
-- PipelineRasterizationStateStreamCreateInfoEXT to modify which
-- vertex stream output is used for rasterization. Otherwise vertex
-- stream 0 must always be used for rasterization.
[$sel:transformFeedbackRasterizationStreamSelect:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Bool
-- | transformFeedbackDraw is true if the implementation supports
-- the cmdDrawIndirectByteCountEXT function otherwise the function
-- must not be called.
[$sel:transformFeedbackDraw:PhysicalDeviceTransformFeedbackPropertiesEXT] :: PhysicalDeviceTransformFeedbackPropertiesEXT -> Bool
-- | VkPipelineRasterizationStateStreamCreateInfoEXT - Structure defining
-- the geometry stream used for rasterization
--
-- Description
--
-- If this structure is not present, rasterizationStream is
-- assumed to be zero.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineRasterizationStateStreamCreateFlagsEXT,
-- StructureType
data PipelineRasterizationStateStreamCreateInfoEXT
PipelineRasterizationStateStreamCreateInfoEXT :: PipelineRasterizationStateStreamCreateFlagsEXT -> Word32 -> PipelineRasterizationStateStreamCreateInfoEXT
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:PipelineRasterizationStateStreamCreateInfoEXT] :: PipelineRasterizationStateStreamCreateInfoEXT -> PipelineRasterizationStateStreamCreateFlagsEXT
-- | rasterizationStream is the vertex stream selected for
-- rasterization.
--
-- rasterizationStream must be less than
-- PhysicalDeviceTransformFeedbackPropertiesEXT::maxTransformFeedbackStreams
--
-- rasterizationStream must be zero if
-- PhysicalDeviceTransformFeedbackPropertiesEXT::transformFeedbackRasterizationStreamSelect
-- is FALSE
[$sel:rasterizationStream:PipelineRasterizationStateStreamCreateInfoEXT] :: PipelineRasterizationStateStreamCreateInfoEXT -> Word32
-- | VkPipelineRasterizationStateStreamCreateFlagsEXT - Reserved for future
-- use
--
-- Description
--
-- PipelineRasterizationStateStreamCreateFlagsEXT is a bitmask
-- type for setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineRasterizationStateStreamCreateInfoEXT
newtype PipelineRasterizationStateStreamCreateFlagsEXT
PipelineRasterizationStateStreamCreateFlagsEXT :: Flags -> PipelineRasterizationStateStreamCreateFlagsEXT
type EXT_TRANSFORM_FEEDBACK_SPEC_VERSION = 1
pattern EXT_TRANSFORM_FEEDBACK_SPEC_VERSION :: forall a. Integral a => a
type EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME = "VK_EXT_transform_feedback"
pattern EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_transform_feedback.PipelineRasterizationStateStreamCreateFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_transform_feedback.PhysicalDeviceTransformFeedbackFeaturesEXT
module Vulkan.Extensions.VK_EXT_tooling_info
-- | vkGetPhysicalDeviceToolPropertiesEXT - Reports properties of tools
-- active on the specified physical device
--
-- Description
--
-- If pToolProperties is NULL, then the number of tools
-- currently active on physicalDevice is returned in
-- pToolCount. Otherwise, pToolCount must point
-- to a variable set by the user to the number of elements in the
-- pToolProperties array, and on return the variable is
-- overwritten with the number of structures actually written to
-- pToolProperties. If pToolCount is less than the
-- number of currently active tools, at most pToolCount
-- structures will be written.
--
-- The count and properties of active tools may change in response
-- to events outside the scope of the specification. An application
-- should assume these properties might change at any given time.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pToolCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pToolCount is not 0,
-- and pToolProperties is not NULL,
-- pToolProperties must be a valid pointer to an array of
-- pToolCount PhysicalDeviceToolPropertiesEXT
-- structures
--
--
-- Return Codes
--
--
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceToolPropertiesEXT
getPhysicalDeviceToolPropertiesEXT :: forall io. MonadIO io => PhysicalDevice -> io (Result, "toolProperties" ::: Vector PhysicalDeviceToolPropertiesEXT)
-- | VkPhysicalDeviceToolPropertiesEXT - Structure providing information
-- about an active tool
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, ToolPurposeFlagsEXT,
-- getPhysicalDeviceToolPropertiesEXT
data PhysicalDeviceToolPropertiesEXT
PhysicalDeviceToolPropertiesEXT :: ByteString -> ByteString -> ToolPurposeFlagsEXT -> ByteString -> ByteString -> PhysicalDeviceToolPropertiesEXT
-- | name is a null-terminated UTF-8 string containing the name of
-- the tool.
[$sel:name:PhysicalDeviceToolPropertiesEXT] :: PhysicalDeviceToolPropertiesEXT -> ByteString
-- | version is a null-terminated UTF-8 string containing the
-- version of the tool.
[$sel:version:PhysicalDeviceToolPropertiesEXT] :: PhysicalDeviceToolPropertiesEXT -> ByteString
-- | purposes is a bitmask of ToolPurposeFlagBitsEXT which
-- is populated with purposes supported by the tool.
[$sel:purposes:PhysicalDeviceToolPropertiesEXT] :: PhysicalDeviceToolPropertiesEXT -> ToolPurposeFlagsEXT
-- | description is a null-terminated UTF-8 string containing a
-- description of the tool.
[$sel:description:PhysicalDeviceToolPropertiesEXT] :: PhysicalDeviceToolPropertiesEXT -> ByteString
-- | layer is a null-terminated UTF-8 string that contains the
-- name of the layer implementing the tool, if the tool is implemented in
-- a layer - otherwise it may be an empty string.
[$sel:layer:PhysicalDeviceToolPropertiesEXT] :: PhysicalDeviceToolPropertiesEXT -> ByteString
-- | VkToolPurposeFlagBitsEXT - Bitmask specifying the purposes of an
-- active tool
--
-- See Also
--
-- ToolPurposeFlagsEXT
newtype ToolPurposeFlagBitsEXT
ToolPurposeFlagBitsEXT :: Flags -> ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_VALIDATION_BIT_EXT specifies that the tool
-- provides validation of API usage.
pattern TOOL_PURPOSE_VALIDATION_BIT_EXT :: ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_PROFILING_BIT_EXT specifies that the tool provides
-- profiling of API usage.
pattern TOOL_PURPOSE_PROFILING_BIT_EXT :: ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_TRACING_BIT_EXT specifies that the tool is
-- capturing data about the application’s API usage, including anything
-- from simple logging to capturing data for later replay.
pattern TOOL_PURPOSE_TRACING_BIT_EXT :: ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT specifies that the
-- tool provides additional API features/extensions on top of the
-- underlying implementation.
pattern TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT :: ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT specifies that the tool
-- modifies the API features/limits/extensions presented to the
-- application.
pattern TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT :: ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT specifies that the tool
-- consumes debug markers or object debug annotation,
-- queue labels, or command buffer labels
pattern TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT :: ToolPurposeFlagBitsEXT
-- | TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT specifies that the tool
-- reports additional information to the application via callbacks
-- specified by createDebugReportCallbackEXT or
-- createDebugUtilsMessengerEXT
pattern TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT :: ToolPurposeFlagBitsEXT
type ToolPurposeFlagsEXT = ToolPurposeFlagBitsEXT
type EXT_TOOLING_INFO_SPEC_VERSION = 1
pattern EXT_TOOLING_INFO_SPEC_VERSION :: forall a. Integral a => a
type EXT_TOOLING_INFO_EXTENSION_NAME = "VK_EXT_tooling_info"
pattern EXT_TOOLING_INFO_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_tooling_info.PhysicalDeviceToolPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_tooling_info.PhysicalDeviceToolPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_tooling_info.PhysicalDeviceToolPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_tooling_info.PhysicalDeviceToolPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_tooling_info.PhysicalDeviceToolPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_tooling_info.PhysicalDeviceToolPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_tooling_info.ToolPurposeFlagBitsEXT
module Vulkan.Extensions.VK_EXT_sample_locations
-- | vkCmdSetSampleLocationsEXT - Set the dynamic sample locations state
--
-- Valid Usage
--
--
-- - The sampleLocationsPerPixel member of
-- pSampleLocationsInfo must equal the
-- rasterizationSamples member of the
-- PipelineMultisampleStateCreateInfo structure the bound graphics
-- pipeline has been created with
--
--
--
-- - If
-- PhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations
-- is FALSE then the current render pass must have been
-- begun by specifying a RenderPassSampleLocationsBeginInfoEXT
-- structure whose pPostSubpassSampleLocations member contains
-- an element with a subpassIndex matching the current subpass
-- index and the sampleLocationsInfo member of that element
-- must match the sample locations state pointed to by
-- pSampleLocationsInfo
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, SampleLocationsInfoEXT
cmdSetSampleLocationsEXT :: forall io. MonadIO io => CommandBuffer -> SampleLocationsInfoEXT -> io ()
-- | vkGetPhysicalDeviceMultisamplePropertiesEXT - Report sample count
-- specific multisampling capabilities of a physical device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- MultisamplePropertiesEXT, PhysicalDevice,
-- SampleCountFlagBits
getPhysicalDeviceMultisamplePropertiesEXT :: forall io. MonadIO io => PhysicalDevice -> ("samples" ::: SampleCountFlagBits) -> io MultisamplePropertiesEXT
-- | VkSampleLocationEXT - Structure specifying the coordinates of a sample
-- location
--
-- Description
--
-- The domain space of the sample location coordinates has an upper-left
-- origin within the pixel in framebuffer space.
--
-- The values specified in a SampleLocationEXT structure are
-- always clamped to the implementation-dependent sample location
-- coordinate range
-- [sampleLocationCoordinateRange[0],sampleLocationCoordinateRange[1]]
-- that can be queried by adding a
-- PhysicalDeviceSampleLocationsPropertiesEXT structure to the
-- pNext chain of PhysicalDeviceProperties2.
--
-- See Also
--
-- SampleLocationsInfoEXT
data SampleLocationEXT
SampleLocationEXT :: Float -> Float -> SampleLocationEXT
-- | x is the horizontal coordinate of the sample’s location.
[$sel:x:SampleLocationEXT] :: SampleLocationEXT -> Float
-- | y is the vertical coordinate of the sample’s location.
[$sel:y:SampleLocationEXT] :: SampleLocationEXT -> Float
-- | VkSampleLocationsInfoEXT - Structure specifying a set of sample
-- locations
--
-- Description
--
-- This structure can be used either to specify the sample
-- locations to be used for rendering or to specify the set of sample
-- locations an image subresource has been last rendered with for the
-- purposes of layout transitions of depth/stencil images created with
-- IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT.
--
-- The sample locations in pSampleLocations specify
-- sampleLocationsPerPixel number of sample locations for each
-- pixel in the grid of the size specified in
-- sampleLocationGridSize. The sample location for sample i at
-- the pixel grid location (x,y) is taken from
-- pSampleLocations[(x + y *
-- sampleLocationGridSize.width) *
-- sampleLocationsPerPixel + i].
--
-- If the render pass has a fragment density map, the implementation will
-- choose the sample locations for the fragment and the contents of
-- pSampleLocations may be ignored.
--
-- Valid Usage
--
--
--
--
-- - sampleLocationsCount must equal
-- sampleLocationsPerPixel ×
-- sampleLocationGridSize.width ×
-- sampleLocationGridSize.height
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If sampleLocationsPerPixel is not 0,
-- sampleLocationsPerPixel must be a valid
-- SampleCountFlagBits value
-- - If sampleLocationsCount is not 0,
-- pSampleLocations must be a valid pointer to an array
-- of sampleLocationsCount SampleLocationEXT
-- structures
--
--
-- See Also
--
-- AttachmentSampleLocationsEXT, Extent2D,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- SampleCountFlagBits, SampleLocationEXT,
-- StructureType, SubpassSampleLocationsEXT,
-- cmdSetSampleLocationsEXT
data SampleLocationsInfoEXT
SampleLocationsInfoEXT :: SampleCountFlagBits -> Extent2D -> Vector SampleLocationEXT -> SampleLocationsInfoEXT
-- | sampleLocationsPerPixel is a SampleCountFlagBits
-- specifying the number of sample locations per pixel.
[$sel:sampleLocationsPerPixel:SampleLocationsInfoEXT] :: SampleLocationsInfoEXT -> SampleCountFlagBits
-- | sampleLocationGridSize is the size of the sample location
-- grid to select custom sample locations for.
[$sel:sampleLocationGridSize:SampleLocationsInfoEXT] :: SampleLocationsInfoEXT -> Extent2D
-- | pSampleLocations is a pointer to an array of
-- sampleLocationsCount SampleLocationEXT structures.
[$sel:sampleLocations:SampleLocationsInfoEXT] :: SampleLocationsInfoEXT -> Vector SampleLocationEXT
-- | VkAttachmentSampleLocationsEXT - Structure specifying the sample
-- locations state to use in the initial layout transition of attachments
--
-- Description
--
-- If the image referenced by the framebuffer attachment at index
-- attachmentIndex was not created with
-- IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT then the
-- values specified in sampleLocationsInfo are ignored.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- RenderPassSampleLocationsBeginInfoEXT,
-- SampleLocationsInfoEXT
data AttachmentSampleLocationsEXT
AttachmentSampleLocationsEXT :: Word32 -> SampleLocationsInfoEXT -> AttachmentSampleLocationsEXT
-- | attachmentIndex is the index of the attachment for which the
-- sample locations state is provided.
--
-- attachmentIndex must be less than the
-- attachmentCount specified in RenderPassCreateInfo the
-- render pass specified by
-- RenderPassBeginInfo::renderPass was created with
[$sel:attachmentIndex:AttachmentSampleLocationsEXT] :: AttachmentSampleLocationsEXT -> Word32
-- | sampleLocationsInfo is the sample locations state to use for
-- the layout transition of the given attachment from the initial layout
-- of the attachment to the image layout specified for the attachment in
-- the first subpass using it.
--
-- sampleLocationsInfo must be a valid
-- SampleLocationsInfoEXT structure
[$sel:sampleLocationsInfo:AttachmentSampleLocationsEXT] :: AttachmentSampleLocationsEXT -> SampleLocationsInfoEXT
-- | VkSubpassSampleLocationsEXT - Structure specifying the sample
-- locations state to use for layout transitions of attachments performed
-- after a given subpass
--
-- Description
--
-- If the image referenced by the depth/stencil attachment used in the
-- subpass identified by subpassIndex was not created with
-- IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT or if
-- the subpass does not use a depth/stencil attachment, and
-- PhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations
-- is TRUE then the values specified in
-- sampleLocationsInfo are ignored.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- RenderPassSampleLocationsBeginInfoEXT,
-- SampleLocationsInfoEXT
data SubpassSampleLocationsEXT
SubpassSampleLocationsEXT :: Word32 -> SampleLocationsInfoEXT -> SubpassSampleLocationsEXT
-- | subpassIndex is the index of the subpass for which the sample
-- locations state is provided.
--
-- subpassIndex must be less than the
-- subpassCount specified in RenderPassCreateInfo the
-- render pass specified by
-- RenderPassBeginInfo::renderPass was created with
[$sel:subpassIndex:SubpassSampleLocationsEXT] :: SubpassSampleLocationsEXT -> Word32
-- | sampleLocationsInfo is the sample locations state to use for
-- the layout transition of the depth/stencil attachment away from the
-- image layout the attachment is used with in the subpass specified in
-- subpassIndex.
--
-- sampleLocationsInfo must be a valid
-- SampleLocationsInfoEXT structure
[$sel:sampleLocationsInfo:SubpassSampleLocationsEXT] :: SubpassSampleLocationsEXT -> SampleLocationsInfoEXT
-- | VkRenderPassSampleLocationsBeginInfoEXT - Structure specifying sample
-- locations to use for the layout transition of custom sample locations
-- compatible depth/stencil attachments
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If attachmentInitialSampleLocationsCount is not
-- 0, pAttachmentInitialSampleLocations must be
-- a valid pointer to an array of
-- attachmentInitialSampleLocationsCount valid
-- AttachmentSampleLocationsEXT structures
-- - If postSubpassSampleLocationsCount is not 0,
-- pPostSubpassSampleLocations must be a valid pointer to
-- an array of postSubpassSampleLocationsCount valid
-- SubpassSampleLocationsEXT structures
--
--
-- See Also
--
-- AttachmentSampleLocationsEXT, StructureType,
-- SubpassSampleLocationsEXT
data RenderPassSampleLocationsBeginInfoEXT
RenderPassSampleLocationsBeginInfoEXT :: Vector AttachmentSampleLocationsEXT -> Vector SubpassSampleLocationsEXT -> RenderPassSampleLocationsBeginInfoEXT
-- | pAttachmentInitialSampleLocations is a pointer to an array of
-- attachmentInitialSampleLocationsCount
-- AttachmentSampleLocationsEXT structures specifying the
-- attachment indices and their corresponding sample location state. Each
-- element of pAttachmentInitialSampleLocations can
-- specify the sample location state to use in the automatic layout
-- transition performed to transition a depth/stencil attachment from the
-- initial layout of the attachment to the image layout specified for the
-- attachment in the first subpass using it.
[$sel:attachmentInitialSampleLocations:RenderPassSampleLocationsBeginInfoEXT] :: RenderPassSampleLocationsBeginInfoEXT -> Vector AttachmentSampleLocationsEXT
-- | pPostSubpassSampleLocations is a pointer to an array of
-- postSubpassSampleLocationsCount
-- SubpassSampleLocationsEXT structures specifying the subpass
-- indices and their corresponding sample location state. Each element of
-- pPostSubpassSampleLocations can specify the sample
-- location state to use in the automatic layout transition performed to
-- transition the depth/stencil attachment used by the specified subpass
-- to the image layout specified in a dependent subpass or to the final
-- layout of the attachment in case the specified subpass is the last
-- subpass using that attachment. In addition, if
-- PhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations
-- is FALSE, each element of pPostSubpassSampleLocations
-- must specify the sample location state that matches the sample
-- locations used by all pipelines that will be bound to a command buffer
-- during the specified subpass. If variableSampleLocations is
-- TRUE, the sample locations used for rasterization do not depend
-- on pPostSubpassSampleLocations.
[$sel:postSubpassSampleLocations:RenderPassSampleLocationsBeginInfoEXT] :: RenderPassSampleLocationsBeginInfoEXT -> Vector SubpassSampleLocationsEXT
-- | VkPipelineSampleLocationsStateCreateInfoEXT - Structure specifying
-- sample locations for a pipeline
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, SampleLocationsInfoEXT, StructureType
data PipelineSampleLocationsStateCreateInfoEXT
PipelineSampleLocationsStateCreateInfoEXT :: Bool -> SampleLocationsInfoEXT -> PipelineSampleLocationsStateCreateInfoEXT
-- | sampleLocationsEnable controls whether custom sample
-- locations are used. If sampleLocationsEnable is FALSE,
-- the default sample locations are used and the values specified in
-- sampleLocationsInfo are ignored.
[$sel:sampleLocationsEnable:PipelineSampleLocationsStateCreateInfoEXT] :: PipelineSampleLocationsStateCreateInfoEXT -> Bool
-- | sampleLocationsInfo is the sample locations to use during
-- rasterization if sampleLocationsEnable is TRUE and the
-- graphics pipeline is not created with
-- DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT.
--
-- sampleLocationsInfo must be a valid
-- SampleLocationsInfoEXT structure
[$sel:sampleLocationsInfo:PipelineSampleLocationsStateCreateInfoEXT] :: PipelineSampleLocationsStateCreateInfoEXT -> SampleLocationsInfoEXT
-- | VkPhysicalDeviceSampleLocationsPropertiesEXT - Structure describing
-- sample location limits that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceSampleLocationsPropertiesEXT
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceSampleLocationsPropertiesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, Extent2D, SampleCountFlags,
-- StructureType
data PhysicalDeviceSampleLocationsPropertiesEXT
PhysicalDeviceSampleLocationsPropertiesEXT :: SampleCountFlags -> Extent2D -> (Float, Float) -> Word32 -> Bool -> PhysicalDeviceSampleLocationsPropertiesEXT
-- | sampleLocationSampleCounts is a bitmask of
-- SampleCountFlagBits indicating the sample counts supporting
-- custom sample locations.
[$sel:sampleLocationSampleCounts:PhysicalDeviceSampleLocationsPropertiesEXT] :: PhysicalDeviceSampleLocationsPropertiesEXT -> SampleCountFlags
-- | maxSampleLocationGridSize is the maximum size of the pixel
-- grid in which sample locations can vary that is supported for
-- all sample counts in sampleLocationSampleCounts.
[$sel:maxSampleLocationGridSize:PhysicalDeviceSampleLocationsPropertiesEXT] :: PhysicalDeviceSampleLocationsPropertiesEXT -> Extent2D
-- | sampleLocationCoordinateRange[2] is the range of supported
-- sample location coordinates.
[$sel:sampleLocationCoordinateRange:PhysicalDeviceSampleLocationsPropertiesEXT] :: PhysicalDeviceSampleLocationsPropertiesEXT -> (Float, Float)
-- | sampleLocationSubPixelBits is the number of bits of subpixel
-- precision for sample locations.
[$sel:sampleLocationSubPixelBits:PhysicalDeviceSampleLocationsPropertiesEXT] :: PhysicalDeviceSampleLocationsPropertiesEXT -> Word32
-- | variableSampleLocations specifies whether the sample
-- locations used by all pipelines that will be bound to a command buffer
-- during a subpass must match. If set to TRUE, the
-- implementation supports variable sample locations in a subpass. If set
-- to FALSE, then the sample locations must stay constant
-- in each subpass.
[$sel:variableSampleLocations:PhysicalDeviceSampleLocationsPropertiesEXT] :: PhysicalDeviceSampleLocationsPropertiesEXT -> Bool
-- | VkMultisamplePropertiesEXT - Structure returning information about
-- sample count specific additional multisampling capabilities
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Extent2D, StructureType,
-- getPhysicalDeviceMultisamplePropertiesEXT
data MultisamplePropertiesEXT
MultisamplePropertiesEXT :: Extent2D -> MultisamplePropertiesEXT
-- | maxSampleLocationGridSize is the maximum size of the pixel
-- grid in which sample locations can vary.
[$sel:maxSampleLocationGridSize:MultisamplePropertiesEXT] :: MultisamplePropertiesEXT -> Extent2D
type EXT_SAMPLE_LOCATIONS_SPEC_VERSION = 1
pattern EXT_SAMPLE_LOCATIONS_SPEC_VERSION :: forall a. Integral a => a
type EXT_SAMPLE_LOCATIONS_EXTENSION_NAME = "VK_EXT_sample_locations"
pattern EXT_SAMPLE_LOCATIONS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationsInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationsInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.AttachmentSampleLocationsEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.AttachmentSampleLocationsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.SubpassSampleLocationsEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.SubpassSampleLocationsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.RenderPassSampleLocationsBeginInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.RenderPassSampleLocationsBeginInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.PipelineSampleLocationsStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.PipelineSampleLocationsStateCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.PhysicalDeviceSampleLocationsPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.PhysicalDeviceSampleLocationsPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_sample_locations.MultisamplePropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_sample_locations.MultisamplePropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.MultisamplePropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.MultisamplePropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.MultisamplePropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.PhysicalDeviceSampleLocationsPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.PhysicalDeviceSampleLocationsPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.PhysicalDeviceSampleLocationsPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.PipelineSampleLocationsStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.PipelineSampleLocationsStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.PipelineSampleLocationsStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.RenderPassSampleLocationsBeginInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.RenderPassSampleLocationsBeginInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.RenderPassSampleLocationsBeginInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.SubpassSampleLocationsEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.SubpassSampleLocationsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.SubpassSampleLocationsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.AttachmentSampleLocationsEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.AttachmentSampleLocationsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.AttachmentSampleLocationsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationsInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationsInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationsInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_sample_locations.SampleLocationEXT
module Vulkan.Extensions.VK_EXT_line_rasterization
-- | vkCmdSetLineStippleEXT - Set the dynamic line width state
--
-- Valid Usage
--
--
-- - lineStippleFactor must be in the range
-- [1,256]
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdSetLineStippleEXT :: forall io. MonadIO io => CommandBuffer -> ("lineStippleFactor" ::: Word32) -> ("lineStipplePattern" ::: Word16) -> io ()
-- | VkPhysicalDeviceLineRasterizationFeaturesEXT - Structure describing
-- the line rasterization features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceLineRasterizationFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceLineRasterizationFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceLineRasterizationFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable the feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceLineRasterizationFeaturesEXT
PhysicalDeviceLineRasterizationFeaturesEXT :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceLineRasterizationFeaturesEXT
-- | rectangularLines indicates whether the implementation
-- supports rectangular line rasterization.
[$sel:rectangularLines:PhysicalDeviceLineRasterizationFeaturesEXT] :: PhysicalDeviceLineRasterizationFeaturesEXT -> Bool
-- | bresenhamLines indicates whether the implementation supports
-- Bresenham-style line rasterization.
[$sel:bresenhamLines:PhysicalDeviceLineRasterizationFeaturesEXT] :: PhysicalDeviceLineRasterizationFeaturesEXT -> Bool
-- | smoothLines indicates whether the implementation supports
-- smooth line rasterization.
[$sel:smoothLines:PhysicalDeviceLineRasterizationFeaturesEXT] :: PhysicalDeviceLineRasterizationFeaturesEXT -> Bool
-- | stippledRectangularLines indicates whether the implementation
-- supports stippled line rasterization with
-- LINE_RASTERIZATION_MODE_RECTANGULAR_EXT lines, or with
-- LINE_RASTERIZATION_MODE_DEFAULT_EXT lines if
-- PhysicalDeviceLimits::strictLines is TRUE.
[$sel:stippledRectangularLines:PhysicalDeviceLineRasterizationFeaturesEXT] :: PhysicalDeviceLineRasterizationFeaturesEXT -> Bool
-- | stippledBresenhamLines indicates whether the implementation
-- supports stippled line rasterization with
-- LINE_RASTERIZATION_MODE_BRESENHAM_EXT lines.
[$sel:stippledBresenhamLines:PhysicalDeviceLineRasterizationFeaturesEXT] :: PhysicalDeviceLineRasterizationFeaturesEXT -> Bool
-- | stippledSmoothLines indicates whether the implementation
-- supports stippled line rasterization with
-- LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT lines.
[$sel:stippledSmoothLines:PhysicalDeviceLineRasterizationFeaturesEXT] :: PhysicalDeviceLineRasterizationFeaturesEXT -> Bool
-- | VkPhysicalDeviceLineRasterizationPropertiesEXT - Structure describing
-- line rasterization properties supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceLineRasterizationPropertiesEXT
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceLineRasterizationPropertiesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceLineRasterizationPropertiesEXT
PhysicalDeviceLineRasterizationPropertiesEXT :: Word32 -> PhysicalDeviceLineRasterizationPropertiesEXT
-- | lineSubPixelPrecisionBits is the number of bits of subpixel
-- precision in framebuffer coordinates xf and yf when rasterizing
-- line segments.
[$sel:lineSubPixelPrecisionBits:PhysicalDeviceLineRasterizationPropertiesEXT] :: PhysicalDeviceLineRasterizationPropertiesEXT -> Word32
-- | VkPipelineRasterizationLineStateCreateInfoEXT - Structure specifying
-- parameters of a newly created pipeline line rasterization state
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, LineRasterizationModeEXT, StructureType
data PipelineRasterizationLineStateCreateInfoEXT
PipelineRasterizationLineStateCreateInfoEXT :: LineRasterizationModeEXT -> Bool -> Word32 -> Word16 -> PipelineRasterizationLineStateCreateInfoEXT
-- | lineRasterizationMode is a LineRasterizationModeEXT
-- value selecting the style of line rasterization.
[$sel:lineRasterizationMode:PipelineRasterizationLineStateCreateInfoEXT] :: PipelineRasterizationLineStateCreateInfoEXT -> LineRasterizationModeEXT
-- | stippledLineEnable enables stippled line
-- rasterization.
[$sel:stippledLineEnable:PipelineRasterizationLineStateCreateInfoEXT] :: PipelineRasterizationLineStateCreateInfoEXT -> Bool
-- | lineStippleFactor is the repeat factor used in stippled line
-- rasterization.
[$sel:lineStippleFactor:PipelineRasterizationLineStateCreateInfoEXT] :: PipelineRasterizationLineStateCreateInfoEXT -> Word32
-- | lineStipplePattern is the bit pattern used in stippled line
-- rasterization.
[$sel:lineStipplePattern:PipelineRasterizationLineStateCreateInfoEXT] :: PipelineRasterizationLineStateCreateInfoEXT -> Word16
-- | VkLineRasterizationModeEXT - Line rasterization modes
--
-- See Also
--
-- PipelineRasterizationLineStateCreateInfoEXT
newtype LineRasterizationModeEXT
LineRasterizationModeEXT :: Int32 -> LineRasterizationModeEXT
-- | LINE_RASTERIZATION_MODE_DEFAULT_EXT is equivalent to
-- LINE_RASTERIZATION_MODE_RECTANGULAR_EXT if
-- PhysicalDeviceLimits::strictLines is TRUE,
-- otherwise lines are drawn as non-strictLines parallelograms.
-- Both of these modes are defined in Basic Line Segment
-- Rasterization.
pattern LINE_RASTERIZATION_MODE_DEFAULT_EXT :: LineRasterizationModeEXT
-- | LINE_RASTERIZATION_MODE_RECTANGULAR_EXT specifies lines drawn
-- as if they were rectangles extruded from the line
pattern LINE_RASTERIZATION_MODE_RECTANGULAR_EXT :: LineRasterizationModeEXT
-- | LINE_RASTERIZATION_MODE_BRESENHAM_EXT specifies lines drawn by
-- determining which pixel diamonds the line intersects and exits, as
-- defined in Bresenham Line Segment Rasterization.
pattern LINE_RASTERIZATION_MODE_BRESENHAM_EXT :: LineRasterizationModeEXT
-- | LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT specifies lines
-- drawn if they were rectangles extruded from the line, with alpha
-- falloff, as defined in Smooth Lines.
pattern LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT :: LineRasterizationModeEXT
type EXT_LINE_RASTERIZATION_SPEC_VERSION = 1
pattern EXT_LINE_RASTERIZATION_SPEC_VERSION :: forall a. Integral a => a
type EXT_LINE_RASTERIZATION_EXTENSION_NAME = "VK_EXT_line_rasterization"
pattern EXT_LINE_RASTERIZATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_line_rasterization.LineRasterizationModeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_line_rasterization.LineRasterizationModeEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_line_rasterization.LineRasterizationModeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_line_rasterization.LineRasterizationModeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_line_rasterization.PipelineRasterizationLineStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_line_rasterization.LineRasterizationModeEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_line_rasterization.LineRasterizationModeEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_line_rasterization.PhysicalDeviceLineRasterizationFeaturesEXT
module Vulkan.Extensions.VK_EXT_external_memory_host
-- | vkGetMemoryHostPointerPropertiesEXT - Get properties of external
-- memory host pointer
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ExternalMemoryHandleTypeFlagBits,
-- MemoryHostPointerPropertiesEXT
getMemoryHostPointerPropertiesEXT :: forall io. MonadIO io => Device -> ExternalMemoryHandleTypeFlagBits -> ("hostPointer" ::: Ptr ()) -> io MemoryHostPointerPropertiesEXT
-- | VkImportMemoryHostPointerInfoEXT - import memory from a host pointer
--
-- Description
--
-- Importing memory from a host pointer shares ownership of the memory
-- between the host and the Vulkan implementation. The application
-- can continue to access the memory through the host pointer but
-- it is the application’s responsibility to synchronize device and
-- non-device access to the underlying memory as defined in Host
-- Access to Device Memory Objects.
--
-- Applications can import the same underlying memory into
-- multiple instances of Vulkan and multiple times into a given Vulkan
-- instance. However, implementations may fail to import the same
-- underlying memory multiple times into a given physical device due to
-- platform constraints.
--
-- Importing memory from a particular host pointer may not be
-- possible due to additional platform-specific restrictions beyond the
-- scope of this specification in which case the implementation
-- must fail the memory import operation with the error code
-- ERROR_INVALID_EXTERNAL_HANDLE_KHR.
--
-- The application must ensure that the imported memory range
-- remains valid and accessible for the lifetime of the imported memory
-- object.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagBits, StructureType
data ImportMemoryHostPointerInfoEXT
ImportMemoryHostPointerInfoEXT :: ExternalMemoryHandleTypeFlagBits -> Ptr () -> ImportMemoryHostPointerInfoEXT
-- | handleType specifies the handle type.
[$sel:handleType:ImportMemoryHostPointerInfoEXT] :: ImportMemoryHostPointerInfoEXT -> ExternalMemoryHandleTypeFlagBits
-- | pHostPointer is the host pointer to import from.
[$sel:hostPointer:ImportMemoryHostPointerInfoEXT] :: ImportMemoryHostPointerInfoEXT -> Ptr ()
-- | VkMemoryHostPointerPropertiesEXT - Properties of external memory host
-- pointer
--
-- Description
--
-- The value returned by memoryTypeBits must only include
-- bits that identify memory types which are host visible.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, getMemoryHostPointerPropertiesEXT
data MemoryHostPointerPropertiesEXT
MemoryHostPointerPropertiesEXT :: Word32 -> MemoryHostPointerPropertiesEXT
-- | memoryTypeBits is a bitmask containing one bit set for every
-- memory type which the specified host pointer can be imported
-- as.
[$sel:memoryTypeBits:MemoryHostPointerPropertiesEXT] :: MemoryHostPointerPropertiesEXT -> Word32
-- | VkPhysicalDeviceExternalMemoryHostPropertiesEXT - Structure describing
-- external memory host pointer limits that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceExternalMemoryHostPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceExternalMemoryHostPropertiesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceSize, StructureType
data PhysicalDeviceExternalMemoryHostPropertiesEXT
PhysicalDeviceExternalMemoryHostPropertiesEXT :: DeviceSize -> PhysicalDeviceExternalMemoryHostPropertiesEXT
-- | minImportedHostPointerAlignment is the minimum
-- required alignment, in bytes, for the base address and size of
-- host pointers that can be imported to a Vulkan memory object.
[$sel:minImportedHostPointerAlignment:PhysicalDeviceExternalMemoryHostPropertiesEXT] :: PhysicalDeviceExternalMemoryHostPropertiesEXT -> DeviceSize
type EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION = 1
pattern EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION :: forall a. Integral a => a
type EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME = "VK_EXT_external_memory_host"
pattern EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_external_memory_host.ImportMemoryHostPointerInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_external_memory_host.ImportMemoryHostPointerInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_external_memory_host.PhysicalDeviceExternalMemoryHostPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_external_memory_host.MemoryHostPointerPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_external_memory_host.ImportMemoryHostPointerInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_external_memory_host.ImportMemoryHostPointerInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_external_memory_host.ImportMemoryHostPointerInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_external_memory_host.ImportMemoryHostPointerInfoEXT
module Vulkan.Extensions.VK_EXT_discard_rectangles
-- | vkCmdSetDiscardRectangleEXT - Set discard rectangles dynamically
--
-- Description
--
-- The discard rectangle taken from element i of
-- pDiscardRectangles replace the current state for the discard
-- rectangle at index firstDiscardRectangle + i, for i in [0,
-- discardRectangleCount).
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_DISCARD_RECTANGLE_EXT
-- set in PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage
--
--
--
--
-- - The x and y member of offset in each
-- Rect2D element of pDiscardRectangles must be
-- greater than or equal to 0
-- - Evaluation of (offset.x + extent.width) in each
-- Rect2D element of pDiscardRectangles must not
-- cause a signed integer addition overflow
-- - Evaluation of (offset.y + extent.height) in each
-- Rect2D element of pDiscardRectangles must not
-- cause a signed integer addition overflow
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pDiscardRectangles must be a valid pointer to an
-- array of discardRectangleCount Rect2D structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - discardRectangleCount must be greater than
-- 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Rect2D
cmdSetDiscardRectangleEXT :: forall io. MonadIO io => CommandBuffer -> ("firstDiscardRectangle" ::: Word32) -> ("discardRectangles" ::: Vector Rect2D) -> io ()
-- | VkPhysicalDeviceDiscardRectanglePropertiesEXT - Structure describing
-- discard rectangle limits that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceDiscardRectanglePropertiesEXT
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceDiscardRectanglePropertiesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceDiscardRectanglePropertiesEXT
PhysicalDeviceDiscardRectanglePropertiesEXT :: Word32 -> PhysicalDeviceDiscardRectanglePropertiesEXT
-- | maxDiscardRectangles is the maximum number of active discard
-- rectangles that can be specified.
[$sel:maxDiscardRectangles:PhysicalDeviceDiscardRectanglePropertiesEXT] :: PhysicalDeviceDiscardRectanglePropertiesEXT -> Word32
-- | VkPipelineDiscardRectangleStateCreateInfoEXT - Structure specifying
-- discard rectangle
--
-- Description
--
-- If the DYNAMIC_STATE_DISCARD_RECTANGLE_EXT dynamic state is
-- enabled for a pipeline, the pDiscardRectangles member is
-- ignored.
--
-- When this structure is included in the pNext chain of
-- GraphicsPipelineCreateInfo, it defines parameters of the
-- discard rectangle test. If this structure is not included in the
-- pNext chain, it is equivalent to specifying this structure
-- with a discardRectangleCount of 0.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DiscardRectangleModeEXT,
-- PipelineDiscardRectangleStateCreateFlagsEXT, Rect2D,
-- StructureType
data PipelineDiscardRectangleStateCreateInfoEXT
PipelineDiscardRectangleStateCreateInfoEXT :: PipelineDiscardRectangleStateCreateFlagsEXT -> DiscardRectangleModeEXT -> Vector Rect2D -> PipelineDiscardRectangleStateCreateInfoEXT
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:PipelineDiscardRectangleStateCreateInfoEXT] :: PipelineDiscardRectangleStateCreateInfoEXT -> PipelineDiscardRectangleStateCreateFlagsEXT
-- | discardRectangleMode is a DiscardRectangleModeEXT
-- value determining whether the discard rectangle test is inclusive or
-- exclusive.
--
-- discardRectangleMode must be a valid
-- DiscardRectangleModeEXT value
[$sel:discardRectangleMode:PipelineDiscardRectangleStateCreateInfoEXT] :: PipelineDiscardRectangleStateCreateInfoEXT -> DiscardRectangleModeEXT
-- | pDiscardRectangles is a pointer to an array of Rect2D
-- structures defining discard rectangles.
[$sel:discardRectangles:PipelineDiscardRectangleStateCreateInfoEXT] :: PipelineDiscardRectangleStateCreateInfoEXT -> Vector Rect2D
-- | VkPipelineDiscardRectangleStateCreateFlagsEXT - Reserved for future
-- use
--
-- Description
--
-- PipelineDiscardRectangleStateCreateFlagsEXT is a bitmask type
-- for setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineDiscardRectangleStateCreateInfoEXT
newtype PipelineDiscardRectangleStateCreateFlagsEXT
PipelineDiscardRectangleStateCreateFlagsEXT :: Flags -> PipelineDiscardRectangleStateCreateFlagsEXT
-- | VkDiscardRectangleModeEXT - Specify the discard rectangle mode
--
-- See Also
--
-- PipelineDiscardRectangleStateCreateInfoEXT
newtype DiscardRectangleModeEXT
DiscardRectangleModeEXT :: Int32 -> DiscardRectangleModeEXT
-- | DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT specifies that the discard
-- rectangle test is inclusive.
pattern DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT :: DiscardRectangleModeEXT
-- | DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT specifies that the discard
-- rectangle test is exclusive.
pattern DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT :: DiscardRectangleModeEXT
type EXT_DISCARD_RECTANGLES_SPEC_VERSION = 1
pattern EXT_DISCARD_RECTANGLES_SPEC_VERSION :: forall a. Integral a => a
type EXT_DISCARD_RECTANGLES_EXTENSION_NAME = "VK_EXT_discard_rectangles"
pattern EXT_DISCARD_RECTANGLES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_discard_rectangles.DiscardRectangleModeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_discard_rectangles.DiscardRectangleModeEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_discard_rectangles.DiscardRectangleModeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_discard_rectangles.DiscardRectangleModeEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_discard_rectangles.DiscardRectangleModeEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_discard_rectangles.DiscardRectangleModeEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_discard_rectangles.PipelineDiscardRectangleStateCreateFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_discard_rectangles.PhysicalDeviceDiscardRectanglePropertiesEXT
module Vulkan.Extensions.VK_EXT_conditional_rendering
-- | vkCmdBeginConditionalRenderingEXT - Define the beginning of a
-- conditional rendering block
--
-- Valid Usage
--
--
-- - Conditional rendering must not already be
-- active
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, ConditionalRenderingBeginInfoEXT
cmdBeginConditionalRenderingEXT :: forall io. MonadIO io => CommandBuffer -> ConditionalRenderingBeginInfoEXT -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginConditionalRenderingEXT and
-- cmdEndConditionalRenderingEXT
--
-- Note that cmdEndConditionalRenderingEXT is *not* called if an
-- exception is thrown by the inner action.
cmdUseConditionalRenderingEXT :: forall io r. MonadIO io => CommandBuffer -> ConditionalRenderingBeginInfoEXT -> io r -> io r
-- | vkCmdEndConditionalRenderingEXT - Define the end of a conditional
-- rendering block
--
-- Description
--
-- Once ended, conditional rendering becomes inactive.
--
-- Valid Usage
--
--
-- - Conditional rendering must be active
--
--
--
-- - If conditional rendering was made active outside of a
-- render pass instance, it must not be ended inside a render pass
-- instance
-- - If conditional rendering was made active within a subpass
-- it must be ended in the same subpass
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdEndConditionalRenderingEXT :: forall io. MonadIO io => CommandBuffer -> io ()
-- | VkConditionalRenderingBeginInfoEXT - Structure specifying conditional
-- rendering begin info
--
-- Description
--
-- If the 32-bit value at offset in buffer memory is
-- zero, then the rendering commands are discarded, otherwise they are
-- executed as normal. If the value of the predicate in buffer memory
-- changes while conditional rendering is active, the rendering commands
-- may be discarded in an implementation-dependent way. Some
-- implementations may latch the value of the predicate upon beginning
-- conditional rendering while others may read it before every rendering
-- command.
--
-- Valid Usage
--
--
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Buffer, ConditionalRenderingFlagsEXT, DeviceSize,
-- StructureType, cmdBeginConditionalRenderingEXT
data ConditionalRenderingBeginInfoEXT
ConditionalRenderingBeginInfoEXT :: Buffer -> DeviceSize -> ConditionalRenderingFlagsEXT -> ConditionalRenderingBeginInfoEXT
-- | buffer is a buffer containing the predicate for conditional
-- rendering.
[$sel:buffer:ConditionalRenderingBeginInfoEXT] :: ConditionalRenderingBeginInfoEXT -> Buffer
-- | offset is the byte offset into buffer where the
-- predicate is located.
[$sel:offset:ConditionalRenderingBeginInfoEXT] :: ConditionalRenderingBeginInfoEXT -> DeviceSize
-- | flags is a bitmask of ConditionalRenderingFlagsEXT
-- specifying the behavior of conditional rendering.
[$sel:flags:ConditionalRenderingBeginInfoEXT] :: ConditionalRenderingBeginInfoEXT -> ConditionalRenderingFlagsEXT
-- | VkCommandBufferInheritanceConditionalRenderingInfoEXT - Structure
-- specifying command buffer inheritance info
--
-- Description
--
-- If this structure is not present, the behavior is as if
-- conditionalRenderingEnable is FALSE.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data CommandBufferInheritanceConditionalRenderingInfoEXT
CommandBufferInheritanceConditionalRenderingInfoEXT :: Bool -> CommandBufferInheritanceConditionalRenderingInfoEXT
-- | conditionalRenderingEnable specifies whether the command
-- buffer can be executed while conditional rendering is active in
-- the primary command buffer. If this is TRUE, then this command
-- buffer can be executed whether the primary command buffer has
-- active conditional rendering or not. If this is FALSE, then the
-- primary command buffer must not have conditional rendering
-- active.
[$sel:conditionalRenderingEnable:CommandBufferInheritanceConditionalRenderingInfoEXT] :: CommandBufferInheritanceConditionalRenderingInfoEXT -> Bool
-- | VkPhysicalDeviceConditionalRenderingFeaturesEXT - Structure describing
-- if a secondary command buffer can be executed if conditional rendering
-- is active in the primary command buffer
--
-- Description
--
-- If the PhysicalDeviceConditionalRenderingFeaturesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- the implementation-dependent behavior.
-- PhysicalDeviceConditionalRenderingFeaturesEXT can also
-- be included in pNext chain of DeviceCreateInfo to
-- enable the features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceConditionalRenderingFeaturesEXT
PhysicalDeviceConditionalRenderingFeaturesEXT :: Bool -> Bool -> PhysicalDeviceConditionalRenderingFeaturesEXT
-- | conditionalRendering specifies whether conditional rendering
-- is supported.
[$sel:conditionalRendering:PhysicalDeviceConditionalRenderingFeaturesEXT] :: PhysicalDeviceConditionalRenderingFeaturesEXT -> Bool
-- | inheritedConditionalRendering specifies whether a secondary
-- command buffer can be executed while conditional rendering is
-- active in the primary command buffer.
[$sel:inheritedConditionalRendering:PhysicalDeviceConditionalRenderingFeaturesEXT] :: PhysicalDeviceConditionalRenderingFeaturesEXT -> Bool
-- | VkConditionalRenderingFlagBitsEXT - Specify the behavior of
-- conditional rendering
--
-- See Also
--
-- ConditionalRenderingFlagsEXT
newtype ConditionalRenderingFlagBitsEXT
ConditionalRenderingFlagBitsEXT :: Flags -> ConditionalRenderingFlagBitsEXT
-- | CONDITIONAL_RENDERING_INVERTED_BIT_EXT specifies the condition
-- used to determine whether to discard rendering commands or not. That
-- is, if the 32-bit predicate read from buffer memory at
-- offset is zero, the rendering commands are not discarded, and
-- if non zero, then they are discarded.
pattern CONDITIONAL_RENDERING_INVERTED_BIT_EXT :: ConditionalRenderingFlagBitsEXT
type ConditionalRenderingFlagsEXT = ConditionalRenderingFlagBitsEXT
type EXT_CONDITIONAL_RENDERING_SPEC_VERSION = 2
pattern EXT_CONDITIONAL_RENDERING_SPEC_VERSION :: forall a. Integral a => a
type EXT_CONDITIONAL_RENDERING_EXTENSION_NAME = "VK_EXT_conditional_rendering"
pattern EXT_CONDITIONAL_RENDERING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingBeginInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_conditional_rendering.ConditionalRenderingFlagBitsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conditional_rendering.PhysicalDeviceConditionalRenderingFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_conditional_rendering.CommandBufferInheritanceConditionalRenderingInfoEXT
module Vulkan.Extensions.VK_EXT_calibrated_timestamps
-- | vkGetPhysicalDeviceCalibrateableTimeDomainsEXT - Query calibrateable
-- time domains
--
-- Description
--
-- If pTimeDomains is NULL, then the number of
-- calibrateable time domains supported for the given
-- physicalDevice is returned in pTimeDomainCount.
-- Otherwise, pTimeDomainCount must point to a variable
-- set by the user to the number of elements in the pTimeDomains
-- array, and on return the variable is overwritten with the number of
-- values actually written to pTimeDomains. If the value of
-- pTimeDomainCount is less than the number of calibrateable
-- time domains supported, at most pTimeDomainCount values will
-- be written to pTimeDomains. If pTimeDomainCount is
-- smaller than the number of calibrateable time domains supported for
-- the given physicalDevice, INCOMPLETE will be returned
-- instead of SUCCESS to indicate that not all the available
-- values were returned.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pTimeDomainCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pTimeDomainCount is not
-- 0, and pTimeDomains is not NULL,
-- pTimeDomains must be a valid pointer to an array of
-- pTimeDomainCount TimeDomainEXT values
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, TimeDomainEXT
getPhysicalDeviceCalibrateableTimeDomainsEXT :: forall io. MonadIO io => PhysicalDevice -> io (Result, "timeDomains" ::: Vector TimeDomainEXT)
-- | vkGetCalibratedTimestampsEXT - Query calibrated timestamps
--
-- Description
--
-- Note
--
-- The maximum deviation may vary between calls to
-- getCalibratedTimestampsEXT even for the same set of time
-- domains due to implementation and platform specific reasons. It is the
-- application’s responsibility to assess whether the returned maximum
-- deviation makes the timestamp values suitable for any particular
-- purpose and can choose to re-issue the timestamp calibration
-- call pursuing a lower devation value.
--
-- Calibrated timestamp values can be extrapolated to estimate
-- future coinciding timestamp values, however, depending on the nature
-- of the time domains and other properties of the platform extrapolating
-- values over a sufficiently long period of time may no longer be
-- accurate enough to fit any particular purpose so applications are
-- expected to re-calibrate the timestamps on a regular basis.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CalibratedTimestampInfoEXT, Device
getCalibratedTimestampsEXT :: forall io. MonadIO io => Device -> ("timestampInfos" ::: Vector CalibratedTimestampInfoEXT) -> io ("timestamps" ::: Vector Word64, "maxDeviation" ::: Word64)
-- | VkCalibratedTimestampInfoEXT - Structure specifying the input
-- parameters of a calibrated timestamp query
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, TimeDomainEXT,
-- getCalibratedTimestampsEXT
data CalibratedTimestampInfoEXT
CalibratedTimestampInfoEXT :: TimeDomainEXT -> CalibratedTimestampInfoEXT
-- | timeDomain is a TimeDomainEXT value specifying the
-- time domain from which the calibrated timestamp value should be
-- returned.
--
-- timeDomain must be one of the TimeDomainEXT
-- values returned by getPhysicalDeviceCalibrateableTimeDomainsEXT
--
-- timeDomain must be a valid TimeDomainEXT value
[$sel:timeDomain:CalibratedTimestampInfoEXT] :: CalibratedTimestampInfoEXT -> TimeDomainEXT
-- | VkTimeDomainEXT - Supported time domains
--
-- Description
--
--
-- struct timespec tv;
-- clock_gettime(CLOCK_MONOTONIC, &tv);
-- return tv.tv_nsec + tv.tv_sec*1000000000ull;
--
--
--
-- struct timespec tv;
-- clock_gettime(CLOCK_MONOTONIC_RAW, &tv);
-- return tv.tv_nsec + tv.tv_sec*1000000000ull;
--
--
--
-- LARGE_INTEGER counter;
-- QueryPerformanceCounter(&counter);
-- return counter.QuadPart;
--
--
-- See Also
--
-- CalibratedTimestampInfoEXT,
-- getPhysicalDeviceCalibrateableTimeDomainsEXT
newtype TimeDomainEXT
TimeDomainEXT :: Int32 -> TimeDomainEXT
-- | TIME_DOMAIN_DEVICE_EXT specifies the device time domain.
-- Timestamp values in this time domain use the same units and are
-- comparable with device timestamp values captured using
-- cmdWriteTimestamp and are defined to be incrementing according
-- to the timestampPeriod of the device.
pattern TIME_DOMAIN_DEVICE_EXT :: TimeDomainEXT
-- | TIME_DOMAIN_CLOCK_MONOTONIC_EXT specifies the CLOCK_MONOTONIC
-- time domain available on POSIX platforms. Timestamp values in this
-- time domain are in units of nanoseconds and are comparable with
-- platform timestamp values captured using the POSIX clock_gettime API
-- as computed by this example:
pattern TIME_DOMAIN_CLOCK_MONOTONIC_EXT :: TimeDomainEXT
-- | TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT specifies the
-- CLOCK_MONOTONIC_RAW time domain available on POSIX platforms.
-- Timestamp values in this time domain are in units of nanoseconds and
-- are comparable with platform timestamp values captured using the POSIX
-- clock_gettime API as computed by this example:
pattern TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: TimeDomainEXT
-- | TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT specifies the
-- performance counter (QPC) time domain available on Windows. Timestamp
-- values in this time domain are in the same units as those provided by
-- the Windows QueryPerformanceCounter API and are comparable with
-- platform timestamp values captured using that API as computed by this
-- example:
pattern TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT :: TimeDomainEXT
type EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION = 1
pattern EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION :: forall a. Integral a => a
type EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME = "VK_EXT_calibrated_timestamps"
pattern EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_calibrated_timestamps.TimeDomainEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_calibrated_timestamps.TimeDomainEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_calibrated_timestamps.TimeDomainEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_calibrated_timestamps.TimeDomainEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_calibrated_timestamps.CalibratedTimestampInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_calibrated_timestamps.TimeDomainEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_calibrated_timestamps.TimeDomainEXT
module Vulkan.Extensions.VK_AMD_shader_info
-- | vkGetShaderInfoAMD - Get information about a shader in a pipeline
--
-- Description
--
-- If pInfo is NULL, then the maximum size of the
-- information that can be retrieved about the shader, in bytes,
-- is returned in pInfoSize. Otherwise, pInfoSize
-- must point to a variable set by the user to the size of the
-- buffer, in bytes, pointed to by pInfo, and on return the
-- variable is overwritten with the amount of data actually written to
-- pInfo.
--
-- If pInfoSize is less than the maximum size that can be
-- retrieved by the pipeline cache, then at most pInfoSize bytes
-- will be written to pInfo, and getShaderInfoAMD will
-- return INCOMPLETE.
--
-- Not all information is available for every shader and implementations
-- may not support all kinds of information for any shader. When a
-- certain type of information is unavailable, the function returns
-- ERROR_FEATURE_NOT_PRESENT.
--
-- If information is successfully and fully queried, the function will
-- return SUCCESS.
--
-- For infoType SHADER_INFO_TYPE_STATISTICS_AMD, a
-- ShaderStatisticsInfoAMD structure will be written to the buffer
-- pointed to by pInfo. This structure will be populated with
-- statistics regarding the physical device resources used by that shader
-- along with other miscellaneous information and is described in further
-- detail below.
--
-- For infoType SHADER_INFO_TYPE_DISASSEMBLY_AMD,
-- pInfo is a pointer to a UTF-8 null-terminated string
-- containing human-readable disassembly. The exact formatting and
-- contents of the disassembly string are vendor-specific.
--
-- The formatting and contents of all other types of information,
-- including infoType SHADER_INFO_TYPE_BINARY_AMD, are
-- left to the vendor and are not further specified by this extension.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pipeline must be a valid Pipeline
-- handle
-- - shaderStage must be a valid
-- ShaderStageFlagBits value
-- - infoType must be a valid ShaderInfoTypeAMD
-- value
-- - pInfoSize must be a valid pointer to a
-- size_t value
-- - If the value referenced by pInfoSize is not 0,
-- and pInfo is not NULL, pInfo must be
-- a valid pointer to an array of pInfoSize bytes
-- - pipeline must have been created, allocated, or
-- retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Pipeline, ShaderInfoTypeAMD,
-- ShaderStageFlagBits
getShaderInfoAMD :: forall io. MonadIO io => Device -> Pipeline -> ShaderStageFlagBits -> ShaderInfoTypeAMD -> io (Result, "info" ::: ByteString)
-- | VkShaderResourceUsageAMD - Resource usage information about a
-- particular shader within a pipeline
--
-- See Also
--
-- ShaderStatisticsInfoAMD
data ShaderResourceUsageAMD
ShaderResourceUsageAMD :: Word32 -> Word32 -> Word32 -> Word64 -> Word64 -> ShaderResourceUsageAMD
-- | numUsedVgprs is the number of vector instruction
-- general-purpose registers used by this shader.
[$sel:numUsedVgprs:ShaderResourceUsageAMD] :: ShaderResourceUsageAMD -> Word32
-- | numUsedSgprs is the number of scalar instruction
-- general-purpose registers used by this shader.
[$sel:numUsedSgprs:ShaderResourceUsageAMD] :: ShaderResourceUsageAMD -> Word32
-- | ldsSizePerLocalWorkGroup is the maximum local data store size
-- per work group in bytes.
[$sel:ldsSizePerLocalWorkGroup:ShaderResourceUsageAMD] :: ShaderResourceUsageAMD -> Word32
-- | ldsUsageSizeInBytes is the LDS usage size in bytes per work
-- group by this shader.
[$sel:ldsUsageSizeInBytes:ShaderResourceUsageAMD] :: ShaderResourceUsageAMD -> Word64
-- | scratchMemUsageInBytes is the scratch memory usage in bytes
-- by this shader.
[$sel:scratchMemUsageInBytes:ShaderResourceUsageAMD] :: ShaderResourceUsageAMD -> Word64
-- | VkShaderStatisticsInfoAMD - Statistical information about a particular
-- shader within a pipeline
--
-- Description
--
-- Some implementations may merge multiple logical shader stages together
-- in a single shader. In such cases, shaderStageMask will
-- contain a bitmask of all of the stages that are active within that
-- shader. Consequently, if specifying those stages as input to
-- getShaderInfoAMD, the same output information may be
-- returned for all such shader stage queries.
--
-- The number of available VGPRs and SGPRs (numAvailableVgprs
-- and numAvailableSgprs respectively) are the
-- shader-addressable subset of physical registers that is given as a
-- limit to the compiler for register assignment. These values may
-- further be limited by implementations due to performance optimizations
-- where register pressure is a bottleneck.
--
-- See Also
--
-- ShaderResourceUsageAMD, ShaderStageFlags
data ShaderStatisticsInfoAMD
ShaderStatisticsInfoAMD :: ShaderStageFlags -> ShaderResourceUsageAMD -> Word32 -> Word32 -> Word32 -> Word32 -> (Word32, Word32, Word32) -> ShaderStatisticsInfoAMD
-- | shaderStageMask are the combination of logical shader stages
-- contained within this shader.
[$sel:shaderStageMask:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> ShaderStageFlags
-- | resourceUsage is a ShaderResourceUsageAMD structure
-- describing internal physical device resources used by this shader.
[$sel:resourceUsage:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> ShaderResourceUsageAMD
-- | numPhysicalVgprs is the maximum number of vector instruction
-- general-purpose registers (VGPRs) available to the physical device.
[$sel:numPhysicalVgprs:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> Word32
-- | numPhysicalSgprs is the maximum number of scalar instruction
-- general-purpose registers (SGPRs) available to the physical device.
[$sel:numPhysicalSgprs:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> Word32
-- | numAvailableVgprs is the maximum limit of VGPRs made
-- available to the shader compiler.
[$sel:numAvailableVgprs:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> Word32
-- | numAvailableSgprs is the maximum limit of SGPRs made
-- available to the shader compiler.
[$sel:numAvailableSgprs:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> Word32
-- | computeWorkGroupSize is the local workgroup size of this
-- shader in { X, Y, Z } dimensions.
[$sel:computeWorkGroupSize:ShaderStatisticsInfoAMD] :: ShaderStatisticsInfoAMD -> (Word32, Word32, Word32)
-- | VkShaderInfoTypeAMD - Enum specifying which type of shader info to
-- query
--
-- See Also
--
-- getShaderInfoAMD
newtype ShaderInfoTypeAMD
ShaderInfoTypeAMD :: Int32 -> ShaderInfoTypeAMD
-- | SHADER_INFO_TYPE_STATISTICS_AMD specifies that device resources
-- used by a shader will be queried.
pattern SHADER_INFO_TYPE_STATISTICS_AMD :: ShaderInfoTypeAMD
-- | SHADER_INFO_TYPE_BINARY_AMD specifies that
-- implementation-specific information will be queried.
pattern SHADER_INFO_TYPE_BINARY_AMD :: ShaderInfoTypeAMD
-- | SHADER_INFO_TYPE_DISASSEMBLY_AMD specifies that human-readable
-- dissassembly of a shader.
pattern SHADER_INFO_TYPE_DISASSEMBLY_AMD :: ShaderInfoTypeAMD
type AMD_SHADER_INFO_SPEC_VERSION = 1
pattern AMD_SHADER_INFO_SPEC_VERSION :: forall a. Integral a => a
type AMD_SHADER_INFO_EXTENSION_NAME = "VK_AMD_shader_info"
pattern AMD_SHADER_INFO_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_shader_info.ShaderInfoTypeAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_shader_info.ShaderInfoTypeAMD
instance GHC.Classes.Ord Vulkan.Extensions.VK_AMD_shader_info.ShaderInfoTypeAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_shader_info.ShaderInfoTypeAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_shader_info.ShaderStatisticsInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_shader_info.ShaderStatisticsInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_shader_info.ShaderInfoTypeAMD
instance GHC.Read.Read Vulkan.Extensions.VK_AMD_shader_info.ShaderInfoTypeAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_shader_info.ShaderStatisticsInfoAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_shader_info.ShaderStatisticsInfoAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_shader_info.ShaderStatisticsInfoAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_shader_info.ShaderResourceUsageAMD
module Vulkan.Extensions.VK_AMD_buffer_marker
-- | vkCmdWriteBufferMarkerAMD - Execute a pipelined write of a marker
-- value into a buffer
--
-- Description
--
-- The command will write the 32-bit marker value into the buffer only
-- after all preceding commands have finished executing up to at least
-- the specified pipeline stage. This includes the completion of other
-- preceding cmdWriteBufferMarkerAMD commands so long as their
-- specified pipeline stages occur either at the same time or earlier
-- than this command’s specified pipelineStage.
--
-- While consecutive buffer marker writes with the same
-- pipelineStage parameter are implicitly complete in submission
-- order, memory and execution dependencies between buffer marker writes
-- and other operations must still be explicitly ordered using
-- synchronization commands. The access scope for buffer marker writes
-- falls under the ACCESS_TRANSFER_WRITE_BIT, and the pipeline
-- stages for identifying the synchronization scope must include
-- both pipelineStage and PIPELINE_STAGE_TRANSFER_BIT.
--
-- Note
--
-- Similar to cmdWriteTimestamp, if an implementation is unable to
-- write a marker at any specific pipeline stage, it may instead
-- do so at any logically later stage.
--
-- Note
--
-- Implementations may only support a limited number of pipelined
-- marker write operations in flight at a given time, thus excessive
-- number of marker write operations may degrade command execution
-- performance.
--
-- Valid Usage
--
--
-- - pipelineStage must be a valid stage for the
-- queue family that was used to create the command pool that
-- commandBuffer was allocated from
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineStage must be a valid
-- PipelineStageFlagBits value
-- - dstBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - Both of commandBuffer, and dstBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize,
-- PipelineStageFlagBits
cmdWriteBufferMarkerAMD :: forall io. MonadIO io => CommandBuffer -> PipelineStageFlagBits -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("marker" ::: Word32) -> io ()
type AMD_BUFFER_MARKER_SPEC_VERSION = 1
pattern AMD_BUFFER_MARKER_SPEC_VERSION :: forall a. Integral a => a
type AMD_BUFFER_MARKER_EXTENSION_NAME = "VK_AMD_buffer_marker"
pattern AMD_BUFFER_MARKER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore
-- | vkGetSemaphoreCounterValue - Query the current state of a timeline
-- semaphore
--
-- Description
--
-- Note
--
-- If a queue submission command is pending execution, then the
-- value returned by this command may immediately be out of date.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Semaphore
getSemaphoreCounterValue :: forall io. MonadIO io => Device -> Semaphore -> io ("value" ::: Word64)
-- | vkWaitSemaphores - Wait for timeline semaphores on the host
--
-- Description
--
-- If the condition is satisfied when waitSemaphores is called,
-- then waitSemaphores returns immediately. If the condition is
-- not satisfied at the time waitSemaphores is called, then
-- waitSemaphores will block and wait up to timeout
-- nanoseconds for the condition to become satisfied.
--
-- If timeout is zero, then waitSemaphores does not wait,
-- but simply returns information about the current state of the
-- semaphore. TIMEOUT will be returned in this case if the
-- condition is not satisfied, even though no actual wait was performed.
--
-- If the specified timeout period expires before the condition is
-- satisfied, waitSemaphores returns TIMEOUT. If the
-- condition is satisfied before timeout nanoseconds has
-- expired, waitSemaphores returns SUCCESS.
--
-- If device loss occurs (see Lost Device) before the timeout has
-- expired, waitSemaphores must return in finite time with
-- either SUCCESS or ERROR_DEVICE_LOST.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SemaphoreWaitInfo
waitSemaphores :: forall io. MonadIO io => Device -> SemaphoreWaitInfo -> ("timeout" ::: Word64) -> io Result
-- | A variant of waitSemaphores which makes a *safe* FFI call
waitSemaphoresSafe :: forall io. MonadIO io => Device -> SemaphoreWaitInfo -> ("timeout" ::: Word64) -> io Result
-- | vkSignalSemaphore - Signal a timeline semaphore on the host
--
-- Description
--
-- When signalSemaphore is executed on the host, it defines and
-- immediately executes a semaphore signal operation which sets
-- the timeline semaphore to the given value.
--
-- The first synchronization scope is defined by the host execution
-- model, but includes execution of signalSemaphore on the host
-- and anything that happened-before it.
--
-- The second synchronization scope is empty.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SemaphoreSignalInfo
signalSemaphore :: forall io. MonadIO io => Device -> SemaphoreSignalInfo -> io ()
-- | VkPhysicalDeviceTimelineSemaphoreFeatures - Structure describing
-- timeline semaphore features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceTimelineSemaphoreFeatures
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceTimelineSemaphoreFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceTimelineSemaphoreFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceTimelineSemaphoreFeatures
PhysicalDeviceTimelineSemaphoreFeatures :: Bool -> PhysicalDeviceTimelineSemaphoreFeatures
-- | timelineSemaphore indicates whether semaphores created with a
-- SemaphoreType of SEMAPHORE_TYPE_TIMELINE are supported.
[$sel:timelineSemaphore:PhysicalDeviceTimelineSemaphoreFeatures] :: PhysicalDeviceTimelineSemaphoreFeatures -> Bool
-- | VkPhysicalDeviceTimelineSemaphoreProperties - Structure describing
-- timeline semaphore properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceTimelineSemaphoreProperties
-- structure describe the following implementation-dependent limits:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceTimelineSemaphoreProperties
PhysicalDeviceTimelineSemaphoreProperties :: Word64 -> PhysicalDeviceTimelineSemaphoreProperties
-- | maxTimelineSemaphoreValueDifference indicates the maximum
-- difference allowed by the implementation between the current value of
-- a timeline semaphore and any pending signal or wait operations.
[$sel:maxTimelineSemaphoreValueDifference:PhysicalDeviceTimelineSemaphoreProperties] :: PhysicalDeviceTimelineSemaphoreProperties -> Word64
-- | VkSemaphoreTypeCreateInfo - Structure specifying the type of a newly
-- created semaphore
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Valid Usage
--
--
--
--
--
-- If no SemaphoreTypeCreateInfo structure is included in the
-- pNext chain of SemaphoreCreateInfo, then the created
-- semaphore will have a default SemaphoreType of
-- SEMAPHORE_TYPE_BINARY.
--
-- See Also
--
-- SemaphoreType, StructureType
data SemaphoreTypeCreateInfo
SemaphoreTypeCreateInfo :: SemaphoreType -> Word64 -> SemaphoreTypeCreateInfo
-- | semaphoreType is a SemaphoreType value specifying the
-- type of the semaphore.
[$sel:semaphoreType:SemaphoreTypeCreateInfo] :: SemaphoreTypeCreateInfo -> SemaphoreType
-- | initialValue is the initial payload value if
-- semaphoreType is SEMAPHORE_TYPE_TIMELINE.
[$sel:initialValue:SemaphoreTypeCreateInfo] :: SemaphoreTypeCreateInfo -> Word64
-- | VkTimelineSemaphoreSubmitInfo - Structure specifying signal and wait
-- values for timeline semaphores
--
-- Description
--
-- If the semaphore in SubmitInfo::pWaitSemaphores or
-- SubmitInfo::pSignalSemaphores corresponding to an
-- entry in pWaitSemaphoreValues or
-- pSignalSemaphoreValues respectively was not created with a
-- SemaphoreType of SEMAPHORE_TYPE_TIMELINE, the
-- implementation must ignore the value in the
-- pWaitSemaphoreValues or pSignalSemaphoreValues
-- entry.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If waitSemaphoreValueCount is not 0, and
-- pWaitSemaphoreValues is not NULL,
-- pWaitSemaphoreValues must be a valid pointer to an
-- array of waitSemaphoreValueCount uint64_t
-- values
-- - If signalSemaphoreValueCount is not 0, and
-- pSignalSemaphoreValues is not NULL,
-- pSignalSemaphoreValues must be a valid pointer to an
-- array of signalSemaphoreValueCount uint64_t
-- values
--
--
-- See Also
--
-- StructureType
data TimelineSemaphoreSubmitInfo
TimelineSemaphoreSubmitInfo :: Word32 -> Vector Word64 -> Word32 -> Vector Word64 -> TimelineSemaphoreSubmitInfo
-- | waitSemaphoreValueCount is the number of semaphore wait
-- values specified in pWaitSemaphoreValues.
[$sel:waitSemaphoreValueCount:TimelineSemaphoreSubmitInfo] :: TimelineSemaphoreSubmitInfo -> Word32
-- | pWaitSemaphoreValues is an array of length
-- waitSemaphoreValueCount containing values for the
-- corresponding semaphores in
-- SubmitInfo::pWaitSemaphores to wait for.
[$sel:waitSemaphoreValues:TimelineSemaphoreSubmitInfo] :: TimelineSemaphoreSubmitInfo -> Vector Word64
-- | signalSemaphoreValueCount is the number of semaphore signal
-- values specified in pSignalSemaphoreValues.
[$sel:signalSemaphoreValueCount:TimelineSemaphoreSubmitInfo] :: TimelineSemaphoreSubmitInfo -> Word32
-- | pSignalSemaphoreValues is an array of length
-- signalSemaphoreValueCount containing values for the
-- corresponding semaphores in
-- SubmitInfo::pSignalSemaphores to set when signaled.
[$sel:signalSemaphoreValues:TimelineSemaphoreSubmitInfo] :: TimelineSemaphoreSubmitInfo -> Vector Word64
-- | VkSemaphoreWaitInfo - Structure containing information about the
-- semaphore wait condition
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be a valid combination of
-- SemaphoreWaitFlagBits values
-- - pSemaphores must be a valid pointer to an array of
-- semaphoreCount valid Semaphore handles
-- - pValues must be a valid pointer to an array of
-- semaphoreCount uint64_t values
-- - semaphoreCount must be greater than
-- 0
--
--
-- See Also
--
-- Semaphore, SemaphoreWaitFlags, StructureType,
-- waitSemaphores, waitSemaphoresKHR
data SemaphoreWaitInfo
SemaphoreWaitInfo :: SemaphoreWaitFlags -> Vector Semaphore -> Vector Word64 -> SemaphoreWaitInfo
-- | flags is a bitmask of SemaphoreWaitFlagBits specifying
-- additional parameters for the semaphore wait operation.
[$sel:flags:SemaphoreWaitInfo] :: SemaphoreWaitInfo -> SemaphoreWaitFlags
-- | pSemaphores is a pointer to an array of
-- semaphoreCount semaphore handles to wait on.
[$sel:semaphores:SemaphoreWaitInfo] :: SemaphoreWaitInfo -> Vector Semaphore
-- | pValues is a pointer to an array of semaphoreCount
-- timeline semaphore values.
[$sel:values:SemaphoreWaitInfo] :: SemaphoreWaitInfo -> Vector Word64
-- | VkSemaphoreSignalInfo - Structure containing information about a
-- semaphore signal operation
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Semaphore, StructureType, signalSemaphore,
-- signalSemaphoreKHR
data SemaphoreSignalInfo
SemaphoreSignalInfo :: Semaphore -> Word64 -> SemaphoreSignalInfo
-- | semaphore is the handle of the semaphore to signal.
--
-- semaphore must have been created with a
-- SemaphoreType of SEMAPHORE_TYPE_TIMELINE
--
-- semaphore must be a valid Semaphore handle
[$sel:semaphore:SemaphoreSignalInfo] :: SemaphoreSignalInfo -> Semaphore
-- | value is the value to signal.
--
-- value must have a value greater than the current value
-- of the semaphore
--
-- value must be less than the value of any pending
-- semaphore signal operations
--
-- value must have a value which does not differ from the
-- current value of the semaphore or the value of any outstanding
-- semaphore wait or signal operation on semaphore by more than
-- maxTimelineSemaphoreValueDifference
[$sel:value:SemaphoreSignalInfo] :: SemaphoreSignalInfo -> Word64
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkSemaphoreType - Sepcifies the type of a semaphore object
--
-- See Also
--
-- SemaphoreTypeCreateInfo
newtype SemaphoreType
SemaphoreType :: Int32 -> SemaphoreType
-- | SEMAPHORE_TYPE_BINARY specifies a binary semaphore type
-- that has a boolean payload indicating whether the semaphore is
-- currently signaled or unsignaled. When created, the semaphore is in
-- the unsignaled state.
pattern SEMAPHORE_TYPE_BINARY :: SemaphoreType
-- | SEMAPHORE_TYPE_TIMELINE specifies a timeline semaphore
-- type that has a monotonically increasing 64-bit unsigned integer
-- payload indicating whether the semaphore is signaled with respect to a
-- particular reference value. When created, the semaphore payload has
-- the value given by the initialValue field of
-- SemaphoreTypeCreateInfo.
pattern SEMAPHORE_TYPE_TIMELINE :: SemaphoreType
-- | VkSemaphoreWaitFlagBits - Bitmask specifying additional parameters of
-- a semaphore wait operation
--
-- See Also
--
-- SemaphoreWaitFlags
newtype SemaphoreWaitFlagBits
SemaphoreWaitFlagBits :: Flags -> SemaphoreWaitFlagBits
-- | SEMAPHORE_WAIT_ANY_BIT specifies that the semaphore wait
-- condition is that at least one of the semaphores in
-- SemaphoreWaitInfo::pSemaphores has reached the value
-- specified by the corresponding element of
-- SemaphoreWaitInfo::pValues. If
-- SEMAPHORE_WAIT_ANY_BIT is not set, the semaphore wait condition
-- is that all of the semaphores in
-- SemaphoreWaitInfo::pSemaphores have reached the value
-- specified by the corresponding element of
-- SemaphoreWaitInfo::pValues.
pattern SEMAPHORE_WAIT_ANY_BIT :: SemaphoreWaitFlagBits
type SemaphoreWaitFlags = SemaphoreWaitFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.TimelineSemaphoreSubmitInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.TimelineSemaphoreSubmitInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreWaitInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreWaitInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreSignalInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreWaitInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreWaitInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreWaitInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.TimelineSemaphoreSubmitInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.TimelineSemaphoreSubmitInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.TimelineSemaphoreSubmitInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.SemaphoreTypeCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_timeline_semaphore.PhysicalDeviceTimelineSemaphoreFeatures
module Vulkan.Extensions.VK_KHR_timeline_semaphore
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR :: StructureType
pattern SEMAPHORE_TYPE_BINARY_KHR :: SemaphoreType
pattern SEMAPHORE_TYPE_TIMELINE_KHR :: SemaphoreType
pattern SEMAPHORE_WAIT_ANY_BIT_KHR :: SemaphoreWaitFlagBits
getSemaphoreCounterValueKHR :: MonadIO io => Device -> Semaphore -> io ("value" ::: Word64)
waitSemaphoresKHR :: MonadIO io => Device -> SemaphoreWaitInfo -> ("timeout" ::: Word64) -> io Result
signalSemaphoreKHR :: MonadIO io => Device -> SemaphoreSignalInfo -> io ()
type SemaphoreWaitFlagsKHR = SemaphoreWaitFlags
type SemaphoreTypeKHR = SemaphoreType
type SemaphoreWaitFlagBitsKHR = SemaphoreWaitFlagBits
type PhysicalDeviceTimelineSemaphoreFeaturesKHR = PhysicalDeviceTimelineSemaphoreFeatures
type PhysicalDeviceTimelineSemaphorePropertiesKHR = PhysicalDeviceTimelineSemaphoreProperties
type SemaphoreTypeCreateInfoKHR = SemaphoreTypeCreateInfo
type TimelineSemaphoreSubmitInfoKHR = TimelineSemaphoreSubmitInfo
type SemaphoreWaitInfoKHR = SemaphoreWaitInfo
type SemaphoreSignalInfoKHR = SemaphoreSignalInfo
type KHR_TIMELINE_SEMAPHORE_SPEC_VERSION = 2
pattern KHR_TIMELINE_SEMAPHORE_SPEC_VERSION :: forall a. Integral a => a
type KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME = "VK_KHR_timeline_semaphore"
pattern KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer
-- | VkPhysicalDeviceImagelessFramebufferFeatures - Structure indicating
-- support for imageless framebuffers
--
-- Members
--
-- The members of the PhysicalDeviceImagelessFramebufferFeatures
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceImagelessFramebufferFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceImagelessFramebufferFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable this feature.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceImagelessFramebufferFeatures
PhysicalDeviceImagelessFramebufferFeatures :: Bool -> PhysicalDeviceImagelessFramebufferFeatures
-- | imagelessFramebuffer indicates that the implementation
-- supports specifying the image view for attachments at render pass
-- begin time via RenderPassAttachmentBeginInfo.
[$sel:imagelessFramebuffer:PhysicalDeviceImagelessFramebufferFeatures] :: PhysicalDeviceImagelessFramebufferFeatures -> Bool
-- | VkFramebufferAttachmentsCreateInfo - Structure specifying parameters
-- of images that will be used with a framebuffer
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If attachmentImageInfoCount is not 0,
-- pAttachmentImageInfos must be a valid pointer to an
-- array of attachmentImageInfoCount valid
-- FramebufferAttachmentImageInfo structures
--
--
-- See Also
--
-- FramebufferAttachmentImageInfo, StructureType
data FramebufferAttachmentsCreateInfo
FramebufferAttachmentsCreateInfo :: Vector FramebufferAttachmentImageInfo -> FramebufferAttachmentsCreateInfo
-- | pAttachmentImageInfos is a pointer to an array of
-- FramebufferAttachmentImageInfo instances, each of which
-- describes a number of parameters of the corresponding attachment in a
-- render pass instance.
[$sel:attachmentImageInfos:FramebufferAttachmentsCreateInfo] :: FramebufferAttachmentsCreateInfo -> Vector FramebufferAttachmentImageInfo
-- | VkFramebufferAttachmentImageInfo - Structure specifying parameters of
-- an image that will be used with a framebuffer
--
-- Description
--
-- Images that can be used with the framebuffer when beginning a
-- render pass, as specified by RenderPassAttachmentBeginInfo,
-- must be created with parameters that are identical to those
-- specified here.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be a valid combination of
-- ImageCreateFlagBits values
-- - usage must be a valid combination of
-- ImageUsageFlagBits values
-- - usage must not be 0
-- - If viewFormatCount is not 0,
-- pViewFormats must be a valid pointer to an array of
-- viewFormatCount valid Format values
--
--
-- See Also
--
-- Format, FramebufferAttachmentsCreateInfo,
-- ImageCreateFlags, ImageUsageFlags, StructureType
data FramebufferAttachmentImageInfo
FramebufferAttachmentImageInfo :: ImageCreateFlags -> ImageUsageFlags -> Word32 -> Word32 -> Word32 -> Vector Format -> FramebufferAttachmentImageInfo
-- | flags is a bitmask of ImageCreateFlagBits, matching
-- the value of ImageCreateInfo::flags used to create an
-- image that will be used with this framebuffer.
[$sel:flags:FramebufferAttachmentImageInfo] :: FramebufferAttachmentImageInfo -> ImageCreateFlags
-- | usage is a bitmask of ImageUsageFlagBits, matching the
-- value of ImageCreateInfo::usage used to create an
-- image used with this framebuffer.
[$sel:usage:FramebufferAttachmentImageInfo] :: FramebufferAttachmentImageInfo -> ImageUsageFlags
-- | width is the width of the image view used for rendering.
[$sel:width:FramebufferAttachmentImageInfo] :: FramebufferAttachmentImageInfo -> Word32
-- | height is the height of the image view used for rendering.
[$sel:height:FramebufferAttachmentImageInfo] :: FramebufferAttachmentImageInfo -> Word32
[$sel:layerCount:FramebufferAttachmentImageInfo] :: FramebufferAttachmentImageInfo -> Word32
-- | pViewFormats is an array which lists of all formats which
-- can be used when creating views of the image, matching the
-- value of ImageFormatListCreateInfo::pViewFormats used to create
-- an image used with this framebuffer.
[$sel:viewFormats:FramebufferAttachmentImageInfo] :: FramebufferAttachmentImageInfo -> Vector Format
-- | VkRenderPassAttachmentBeginInfo - Structure specifying images to be
-- used as framebuffer attachments
--
-- Valid Usage
--
--
-- - Each element of pAttachments must only specify a
-- single mip level
--
--
--
-- - Each element of pAttachments must have been
-- created with the identity swizzle
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If attachmentCount is not 0,
-- pAttachments must be a valid pointer to an array of
-- attachmentCount valid ImageView handles
--
--
-- See Also
--
-- ImageView, StructureType
data RenderPassAttachmentBeginInfo
RenderPassAttachmentBeginInfo :: Vector ImageView -> RenderPassAttachmentBeginInfo
-- | pAttachments is a pointer to an array of ImageView
-- handles, each of which will be used as the corresponding attachment in
-- the render pass instance.
[$sel:attachments:RenderPassAttachmentBeginInfo] :: RenderPassAttachmentBeginInfo -> Vector ImageView
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkFramebufferCreateFlagBits - Bitmask specifying framebuffer
-- properties
--
-- See Also
--
-- FramebufferCreateFlags
newtype FramebufferCreateFlagBits
FramebufferCreateFlagBits :: Flags -> FramebufferCreateFlagBits
-- | FRAMEBUFFER_CREATE_IMAGELESS_BIT specifies that image views are
-- not specified, and only attachment compatibility information will be
-- provided via a FramebufferAttachmentImageInfo structure.
pattern FRAMEBUFFER_CREATE_IMAGELESS_BIT :: FramebufferCreateFlagBits
type FramebufferCreateFlags = FramebufferCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentsCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentsCreateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentImageInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentImageInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.RenderPassAttachmentBeginInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.RenderPassAttachmentBeginInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.RenderPassAttachmentBeginInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.RenderPassAttachmentBeginInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.RenderPassAttachmentBeginInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentsCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentsCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentsCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentImageInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentImageInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.FramebufferAttachmentImageInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_imageless_framebuffer.PhysicalDeviceImagelessFramebufferFeatures
module Vulkan.Extensions.VK_KHR_imageless_framebuffer
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR :: StructureType
pattern FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR :: FramebufferCreateFlagBits
type PhysicalDeviceImagelessFramebufferFeaturesKHR = PhysicalDeviceImagelessFramebufferFeatures
type FramebufferAttachmentsCreateInfoKHR = FramebufferAttachmentsCreateInfo
type FramebufferAttachmentImageInfoKHR = FramebufferAttachmentImageInfo
type RenderPassAttachmentBeginInfoKHR = RenderPassAttachmentBeginInfo
type KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION = 1
pattern KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION :: forall a. Integral a => a
type KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME = "VK_KHR_imageless_framebuffer"
pattern KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_draw_indirect_count
-- | vkCmdDrawIndirectCount - Perform an indirect draw with the draw count
-- sourced from a buffer
--
-- Description
--
-- cmdDrawIndirectCount behaves similarly to
-- cmdDrawIndirect except that the draw count is read by the
-- device from a buffer during execution. The command will read an
-- unsigned 32-bit integer from countBuffer located at
-- countBufferOffset and use this as the draw count.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - If countBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - countBuffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - countBufferOffset must be a multiple of
-- 4
-- - The count stored in countBuffer must be less than
-- or equal to
-- PhysicalDeviceLimits::maxDrawIndirectCount
-- - stride must be a multiple of 4 and
-- must be greater than or equal to
-- sizeof(DrawIndirectCommand)
-- - If maxDrawCount is greater than or equal to 1,
-- (stride × (maxDrawCount - 1) + offset +
-- sizeof(DrawIndirectCommand)) must be less than or equal
-- to the size of buffer
-- - If the count stored in countBuffer is equal to
-- 1, (offset + sizeof(DrawIndirectCommand))
-- must be less than or equal to the size of buffer
-- - If the count stored in countBuffer is greater than
-- 1, (stride × (drawCount - 1) +
-- offset + sizeof(DrawIndirectCommand)) must be
-- less than or equal to the size of buffer
-- - If drawIndirectCount is not enabled this function
-- must not be used
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - countBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Each of buffer, commandBuffer, and
-- countBuffer must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawIndirectCount :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
-- | vkCmdDrawIndexedIndirectCount - Perform an indexed indirect draw with
-- the draw count sourced from a buffer
--
-- Description
--
-- cmdDrawIndexedIndirectCount behaves similarly to
-- cmdDrawIndexedIndirect except that the draw count is read by
-- the device from a buffer during execution. The command will read an
-- unsigned 32-bit integer from countBuffer located at
-- countBufferOffset and use this as the draw count.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - If countBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - countBuffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - countBufferOffset must be a multiple of
-- 4
-- - The count stored in countBuffer must be less than
-- or equal to
-- PhysicalDeviceLimits::maxDrawIndirectCount
-- - stride must be a multiple of 4 and
-- must be greater than or equal to
-- sizeof(DrawIndexedIndirectCommand)
-- - If maxDrawCount is greater than or equal to 1,
-- (stride × (maxDrawCount - 1) + offset +
-- sizeof(DrawIndexedIndirectCommand)) must be less than or
-- equal to the size of buffer
-- - If count stored in countBuffer is equal to 1,
-- (offset + sizeof(DrawIndexedIndirectCommand))
-- must be less than or equal to the size of buffer
-- - If count stored in countBuffer is greater than
-- 1, (stride × (drawCount - 1) +
-- offset + sizeof(DrawIndexedIndirectCommand))
-- must be less than or equal to the size of buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - countBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Each of buffer, commandBuffer, and
-- countBuffer must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawIndexedIndirectCount :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
module Vulkan.Extensions.VK_KHR_draw_indirect_count
cmdDrawIndirectCountKHR :: MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
cmdDrawIndexedIndirectCountKHR :: MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
type KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION = 1
pattern KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION :: forall a. Integral a => a
type KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME = "VK_KHR_draw_indirect_count"
pattern KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_AMD_draw_indirect_count
cmdDrawIndirectCountAMD :: MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
cmdDrawIndexedIndirectCountAMD :: MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("countBuffer" ::: Buffer) -> ("countBufferOffset" ::: DeviceSize) -> ("maxDrawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
type AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION = 2
pattern AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION :: forall a. Integral a => a
type AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME = "VK_AMD_draw_indirect_count"
pattern AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address
-- | vkGetBufferOpaqueCaptureAddress - Query an opaque capture address of a
-- buffer
--
-- Description
--
-- The 64-bit return value is an opaque capture address of the start of
-- pInfo->buffer.
--
-- If the buffer was created with a non-zero value of
-- BufferOpaqueCaptureAddressCreateInfo::opaqueCaptureAddress
-- the return value must be the same address.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- See Also
--
-- BufferDeviceAddressInfo, Device
getBufferOpaqueCaptureAddress :: forall io. MonadIO io => Device -> BufferDeviceAddressInfo -> io Word64
-- | vkGetBufferDeviceAddress - Query an address of a buffer
--
-- Description
--
-- The 64-bit return value is an address of the start of
-- pInfo->buffer. The address range starting at this value
-- and whose size is the size of the buffer can be used in a
-- shader to access the memory bound to that buffer, using the
-- SPV_KHR_physical_storage_buffer extension or the equivalent
-- SPV_EXT_physical_storage_buffer extension and the
-- PhysicalStorageBuffer storage class. For example, this value
-- can be stored in a uniform buffer, and the shader can
-- read the value from the uniform buffer and use it to do a dependent
-- read/write to this buffer. A value of zero is reserved as a “null”
-- pointer and must not be returned as a valid buffer device
-- address. All loads, stores, and atomics in a shader through
-- PhysicalStorageBuffer pointers must access addresses
-- in the address range of some buffer.
--
-- If the buffer was created with a non-zero value of
-- BufferOpaqueCaptureAddressCreateInfo::opaqueCaptureAddress
-- or BufferDeviceAddressCreateInfoEXT::deviceAddress the
-- return value will be the same address that was returned at capture
-- time.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- See Also
--
-- BufferDeviceAddressInfo, Device
getBufferDeviceAddress :: forall io. MonadIO io => Device -> BufferDeviceAddressInfo -> io DeviceAddress
-- | vkGetDeviceMemoryOpaqueCaptureAddress - Query an opaque capture
-- address of a memory object
--
-- Description
--
-- The 64-bit return value is an opaque address representing the start of
-- pInfo->memory.
--
-- If the memory object was allocated with a non-zero value of
-- MemoryOpaqueCaptureAddressAllocateInfo::opaqueCaptureAddress,
-- the return value must be the same address.
--
-- Note
--
-- The expected usage for these opaque addresses is only for trace
-- capture/replay tools to store these addresses in a trace and
-- subsequently specify them during replay.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- See Also
--
-- Device, DeviceMemoryOpaqueCaptureAddressInfo
getDeviceMemoryOpaqueCaptureAddress :: forall io. MonadIO io => Device -> DeviceMemoryOpaqueCaptureAddressInfo -> io Word64
-- | VkPhysicalDeviceBufferDeviceAddressFeatures - Structure describing
-- buffer address features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceBufferDeviceAddressFeatures
-- structure describe the following features:
--
-- Description
--
-- Note
--
-- bufferDeviceAddressMultiDevice exists to allow certain legacy
-- platforms to be able to support bufferDeviceAddress without
-- needing to support shared GPU virtual addresses for multi-device
-- configurations.
--
-- See getBufferDeviceAddress for more information.
--
-- If the PhysicalDeviceBufferDeviceAddressFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceBufferDeviceAddressFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceBufferDeviceAddressFeatures
PhysicalDeviceBufferDeviceAddressFeatures :: Bool -> Bool -> Bool -> PhysicalDeviceBufferDeviceAddressFeatures
-- | bufferDeviceAddress indicates that the implementation
-- supports accessing buffer memory in shaders as storage buffers via an
-- address queried from getBufferDeviceAddress.
[$sel:bufferDeviceAddress:PhysicalDeviceBufferDeviceAddressFeatures] :: PhysicalDeviceBufferDeviceAddressFeatures -> Bool
-- | bufferDeviceAddressCaptureReplay indicates that the
-- implementation supports saving and reusing buffer and device
-- addresses, e.g. for trace capture and replay.
[$sel:bufferDeviceAddressCaptureReplay:PhysicalDeviceBufferDeviceAddressFeatures] :: PhysicalDeviceBufferDeviceAddressFeatures -> Bool
-- | bufferDeviceAddressMultiDevice indicates that the
-- implementation supports the bufferDeviceAddress and
-- rayTracing features for logical devices created with multiple
-- physical devices. If this feature is not supported, buffer and
-- acceleration structure addresses must not be queried on a
-- logical device created with more than one physical device.
[$sel:bufferDeviceAddressMultiDevice:PhysicalDeviceBufferDeviceAddressFeatures] :: PhysicalDeviceBufferDeviceAddressFeatures -> Bool
-- | VkBufferDeviceAddressInfo - Structure specifying the buffer to query
-- an address for
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - buffer must be a valid Buffer handle
--
--
-- See Also
--
-- Buffer, StructureType, getBufferDeviceAddress,
-- getBufferDeviceAddressEXT, getBufferDeviceAddressKHR,
-- getBufferOpaqueCaptureAddress,
-- getBufferOpaqueCaptureAddressKHR
data BufferDeviceAddressInfo
BufferDeviceAddressInfo :: Buffer -> BufferDeviceAddressInfo
-- | buffer specifies the buffer whose address is being queried.
[$sel:buffer:BufferDeviceAddressInfo] :: BufferDeviceAddressInfo -> Buffer
-- | VkBufferOpaqueCaptureAddressCreateInfo - Request a specific address
-- for a buffer
--
-- Description
--
-- If opaqueCaptureAddress is zero, no specific address is
-- requested.
--
-- If opaqueCaptureAddress is not zero, then it should be
-- an address retrieved from getBufferOpaqueCaptureAddress for an
-- identically created buffer on the same implementation.
--
-- If this structure is not present, it is as if
-- opaqueCaptureAddress is zero.
--
-- Apps should avoid creating buffers with app-provided addresses
-- and implementation-provided addresses in the same process, to reduce
-- the likelihood of ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS errors.
--
-- Note
--
-- The expected usage for this is that a trace capture/replay tool will
-- add the BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT flag to
-- all buffers that use BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
-- and during capture will save the queried opaque device addresses in
-- the trace. During replay, the buffers will be created specifying the
-- original address so any address values stored in the trace data will
-- remain valid.
--
-- Implementations are expected to separate such buffers in the GPU
-- address space so normal allocations will avoid using these addresses.
-- Apps/tools should avoid mixing app-provided and
-- implementation-provided addresses for buffers created with
-- BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT, to avoid
-- address space allocation conflicts.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data BufferOpaqueCaptureAddressCreateInfo
BufferOpaqueCaptureAddressCreateInfo :: Word64 -> BufferOpaqueCaptureAddressCreateInfo
-- | opaqueCaptureAddress is the opaque capture address requested
-- for the buffer.
[$sel:opaqueCaptureAddress:BufferOpaqueCaptureAddressCreateInfo] :: BufferOpaqueCaptureAddressCreateInfo -> Word64
-- | VkMemoryOpaqueCaptureAddressAllocateInfo - Request a specific address
-- for a memory allocation
--
-- Description
--
-- If opaqueCaptureAddress is zero, no specific address is
-- requested.
--
-- If opaqueCaptureAddress is not zero, it should be an
-- address retrieved from getDeviceMemoryOpaqueCaptureAddress on
-- an identically created memory allocation on the same implementation.
--
-- Note
--
-- In most cases, it is expected that a non-zero opaqueAddress
-- is an address retrieved from
-- getDeviceMemoryOpaqueCaptureAddress on an identically created
-- memory allocation. If this is not the case, it likely that
-- ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS errors will occur.
--
-- This is, however, not a strict requirement because trace
-- capture/replay tools may need to adjust memory allocation parameters
-- for imported memory.
--
-- If this structure is not present, it is as if
-- opaqueCaptureAddress is zero.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data MemoryOpaqueCaptureAddressAllocateInfo
MemoryOpaqueCaptureAddressAllocateInfo :: Word64 -> MemoryOpaqueCaptureAddressAllocateInfo
-- | opaqueCaptureAddress is the opaque capture address requested
-- for the memory allocation.
[$sel:opaqueCaptureAddress:MemoryOpaqueCaptureAddressAllocateInfo] :: MemoryOpaqueCaptureAddressAllocateInfo -> Word64
-- | VkDeviceMemoryOpaqueCaptureAddressInfo - Structure specifying the
-- memory object to query an address for
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceMemory, StructureType,
-- getDeviceMemoryOpaqueCaptureAddress,
-- getDeviceMemoryOpaqueCaptureAddressKHR
data DeviceMemoryOpaqueCaptureAddressInfo
DeviceMemoryOpaqueCaptureAddressInfo :: DeviceMemory -> DeviceMemoryOpaqueCaptureAddressInfo
-- | memory specifies the memory whose address is being queried.
--
-- memory must have been allocated with
-- MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT
--
-- memory must be a valid DeviceMemory handle
[$sel:memory:DeviceMemoryOpaqueCaptureAddressInfo] :: DeviceMemoryOpaqueCaptureAddressInfo -> DeviceMemory
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkResult - Vulkan command return codes
--
-- Description
--
-- If a command returns a runtime error, unless otherwise specified any
-- output parameters will have undefined contents, except that if the
-- output parameter is a structure with sType and pNext
-- fields, those fields will be unmodified. Any structures chained from
-- pNext will also have undefined contents, except that
-- sType and pNext will be unmodified.
--
-- Out of memory errors do not damage any currently existing Vulkan
-- objects. Objects that have already been successfully created
-- can still be used by the application.
--
-- ERROR_UNKNOWN will be returned by an implementation when an
-- unexpected error occurs that cannot be attributed to valid behavior of
-- the application and implementation. Under these conditions, it
-- may be returned from any command returning a Result.
--
-- Note
--
-- ERROR_UNKNOWN is not expected to ever be returned if the
-- application behavior is valid, and if the implementation is bug-free.
-- If ERROR_UNKNOWN is received, the application should be checked
-- against the latest validation layers to verify correct behavior as
-- much as possible. If no issues are identified it could be an
-- implementation issue, and the implementor should be contacted for
-- support.
--
-- Performance-critical commands generally do not have return codes. If a
-- runtime error occurs in such commands, the implementation will defer
-- reporting the error until a specified point. For commands that record
-- into command buffers (vkCmd*) runtime errors are reported by
-- endCommandBuffer.
--
-- See Also
--
-- PresentInfoKHR
newtype Result
Result :: Int32 -> Result
-- | SUCCESS Command successfully completed
pattern SUCCESS :: Result
-- | NOT_READY A fence or query has not yet completed
pattern NOT_READY :: Result
-- | TIMEOUT A wait operation has not completed in the specified
-- time
pattern TIMEOUT :: Result
-- | EVENT_SET An event is signaled
pattern EVENT_SET :: Result
-- | EVENT_RESET An event is unsignaled
pattern EVENT_RESET :: Result
-- | INCOMPLETE A return array was too small for the result
pattern INCOMPLETE :: Result
-- | ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
pattern ERROR_OUT_OF_HOST_MEMORY :: Result
-- | ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has
-- failed.
pattern ERROR_OUT_OF_DEVICE_MEMORY :: Result
-- | ERROR_INITIALIZATION_FAILED Initialization of an object could
-- not be completed for implementation-specific reasons.
pattern ERROR_INITIALIZATION_FAILED :: Result
-- | ERROR_DEVICE_LOST The logical or physical device has been lost.
-- See Lost Device
pattern ERROR_DEVICE_LOST :: Result
-- | ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
pattern ERROR_MEMORY_MAP_FAILED :: Result
-- | ERROR_LAYER_NOT_PRESENT A requested layer is not present or
-- could not be loaded.
pattern ERROR_LAYER_NOT_PRESENT :: Result
-- | ERROR_EXTENSION_NOT_PRESENT A requested extension is not
-- supported.
pattern ERROR_EXTENSION_NOT_PRESENT :: Result
-- | ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
pattern ERROR_FEATURE_NOT_PRESENT :: Result
-- | ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is
-- not supported by the driver or is otherwise incompatible for
-- implementation-specific reasons.
pattern ERROR_INCOMPATIBLE_DRIVER :: Result
-- | ERROR_TOO_MANY_OBJECTS Too many objects of the type have
-- already been created.
pattern ERROR_TOO_MANY_OBJECTS :: Result
-- | ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported
-- on this device.
pattern ERROR_FORMAT_NOT_SUPPORTED :: Result
-- | ERROR_FRAGMENTED_POOL A pool allocation has failed due to
-- fragmentation of the pool’s memory. This must only be returned
-- if no attempt to allocate host or device memory was made to
-- accommodate the new allocation. This should be returned in
-- preference to ERROR_OUT_OF_POOL_MEMORY, but only if the
-- implementation is certain that the pool allocation failure was due to
-- fragmentation.
pattern ERROR_FRAGMENTED_POOL :: Result
-- | ERROR_UNKNOWN An unknown error has occurred; either the
-- application has provided invalid input, or an implementation failure
-- has occurred.
pattern ERROR_UNKNOWN :: Result
-- | PIPELINE_COMPILE_REQUIRED_EXT A requested pipeline creation
-- would have required compilation, but the application requested
-- compilation to not be performed.
pattern PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | OPERATION_NOT_DEFERRED_KHR A deferred operation was requested
-- and no operations were deferred.
pattern OPERATION_NOT_DEFERRED_KHR :: Result
-- | OPERATION_DEFERRED_KHR A deferred operation was requested and
-- at least some of the work was deferred.
pattern OPERATION_DEFERRED_KHR :: Result
-- | THREAD_DONE_KHR A deferred operation is not complete but there
-- is no work remaining to assign to additional threads.
pattern THREAD_DONE_KHR :: Result
-- | THREAD_IDLE_KHR A deferred operation is not complete but there
-- is currently no work for this thread to do at the time of this call.
pattern THREAD_IDLE_KHR :: Result
-- | ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a
-- swapchain created with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it
-- did not have exlusive full-screen access. This may occur due to
-- implementation-dependent reasons, outside of the application’s
-- control.
pattern ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: Result
pattern ERROR_NOT_PERMITTED_EXT :: Result
pattern ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: Result
pattern ERROR_INCOMPATIBLE_VERSION_KHR :: Result
-- | ERROR_INVALID_SHADER_NV One or more shaders failed to compile
-- or link. More details are reported back to the application via
-- VK_EXT_debug_report if enabled.
pattern ERROR_INVALID_SHADER_NV :: Result
pattern ERROR_VALIDATION_FAILED_EXT :: Result
-- | ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain
-- does not use the same presentable image layout, or is incompatible in
-- a way that prevents sharing an image.
pattern ERROR_INCOMPATIBLE_DISPLAY_KHR :: Result
-- | ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that
-- it is no longer compatible with the swapchain, and further
-- presentation requests using the swapchain will fail. Applications
-- must query the new surface properties and recreate their
-- swapchain if they wish to continue presenting to the surface.
pattern ERROR_OUT_OF_DATE_KHR :: Result
-- | SUBOPTIMAL_KHR A swapchain no longer matches the surface
-- properties exactly, but can still be used to present to the
-- surface successfully.
pattern SUBOPTIMAL_KHR :: Result
-- | ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already
-- in use by Vulkan or another API in a manner which prevents it from
-- being used again.
pattern ERROR_NATIVE_WINDOW_IN_USE_KHR :: Result
-- | ERROR_SURFACE_LOST_KHR A surface is no longer available.
pattern ERROR_SURFACE_LOST_KHR :: Result
-- | ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or
-- memory allocation failed because the requested address is not
-- available. A shader group handle assignment failed because the
-- requested shader group handle information is no longer valid.
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: Result
-- | ERROR_FRAGMENTATION A descriptor pool creation has failed due
-- to fragmentation.
pattern ERROR_FRAGMENTATION :: Result
-- | ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid
-- handle of the specified type.
pattern ERROR_INVALID_EXTERNAL_HANDLE :: Result
-- | ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed.
-- This must only be returned if no attempt to allocate host or
-- device memory was made to accommodate the new allocation. If the
-- failure was definitely due to fragmentation of the pool,
-- ERROR_FRAGMENTED_POOL should be returned instead.
pattern ERROR_OUT_OF_POOL_MEMORY :: Result
-- | VkBufferUsageFlagBits - Bitmask specifying allowed usage of a buffer
--
-- See Also
--
-- BufferUsageFlags
newtype BufferUsageFlagBits
BufferUsageFlagBits :: Flags -> BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFER_SRC_BIT specifies that the buffer
-- can be used as the source of a transfer command (see the
-- definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
pattern BUFFER_USAGE_TRANSFER_SRC_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFER_DST_BIT specifies that the buffer
-- can be used as the destination of a transfer command.
pattern BUFFER_USAGE_TRANSFER_DST_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT specifies that the buffer
-- can be used to create a BufferView suitable for
-- occupying a DescriptorSet slot of type
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.
pattern BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT specifies that the buffer
-- can be used to create a BufferView suitable for
-- occupying a DescriptorSet slot of type
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.
pattern BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_UNIFORM_BUFFER_BIT specifies that the buffer
-- can be used in a DescriptorBufferInfo suitable for
-- occupying a DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.
pattern BUFFER_USAGE_UNIFORM_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_STORAGE_BUFFER_BIT specifies that the buffer
-- can be used in a DescriptorBufferInfo suitable for
-- occupying a DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.
pattern BUFFER_USAGE_STORAGE_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_INDEX_BUFFER_BIT specifies that the buffer is
-- suitable for passing as the buffer parameter to
-- cmdBindIndexBuffer.
pattern BUFFER_USAGE_INDEX_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_VERTEX_BUFFER_BIT specifies that the buffer is
-- suitable for passing as an element of the pBuffers array to
-- cmdBindVertexBuffers.
pattern BUFFER_USAGE_VERTEX_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_INDIRECT_BUFFER_BIT specifies that the buffer is
-- suitable for passing as the buffer parameter to
-- cmdDrawIndirect, cmdDrawIndexedIndirect,
-- cmdDrawMeshTasksIndirectNV,
-- cmdDrawMeshTasksIndirectCountNV, or cmdDispatchIndirect.
-- It is also suitable for passing as the buffer member of
-- IndirectCommandsStreamNV, or sequencesCountBuffer or
-- sequencesIndexBuffer or preprocessedBuffer member of
-- GeneratedCommandsInfoNV
pattern BUFFER_USAGE_INDIRECT_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_RAY_TRACING_BIT_KHR specifies that the buffer is
-- suitable for use in cmdTraceRaysKHR and
-- cmdBuildAccelerationStructureKHR.
pattern BUFFER_USAGE_RAY_TRACING_BIT_KHR :: BufferUsageFlagBits
-- | BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT specifies that the
-- buffer is suitable for passing as the buffer parameter to
-- cmdBeginConditionalRenderingEXT.
pattern BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
-- specifies that the buffer is suitable for using as a counter buffer
-- with cmdBeginTransformFeedbackEXT and
-- cmdEndTransformFeedbackEXT.
pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT specifies that
-- the buffer is suitable for using for binding as a transform feedback
-- buffer with cmdBindTransformFeedbackBuffersEXT.
pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT specifies that the
-- buffer can be used to retrieve a buffer device address via
-- getBufferDeviceAddress and use that address to access the
-- buffer’s memory from a shader.
pattern BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT :: BufferUsageFlagBits
type BufferUsageFlags = BufferUsageFlagBits
-- | VkBufferCreateFlagBits - Bitmask specifying additional parameters of a
-- buffer
--
-- Description
--
-- See Sparse Resource Features and Physical Device
-- Features for details of the sparse memory features supported on a
-- device.
--
-- See Also
--
-- BufferCreateFlags
newtype BufferCreateFlagBits
BufferCreateFlagBits :: Flags -> BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_BINDING_BIT specifies that the buffer will
-- be backed using sparse memory binding.
pattern BUFFER_CREATE_SPARSE_BINDING_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_RESIDENCY_BIT specifies that the buffer
-- can be partially backed using sparse memory binding. Buffers
-- created with this flag must also be created with the
-- BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_ALIASED_BIT specifies that the buffer will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another buffer (or another portion of
-- the same buffer). Buffers created with this flag must also be
-- created with the BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_ALIASED_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies that
-- the buffer’s address can be saved and reused on a subsequent
-- run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_PROTECTED_BIT specifies that the buffer is a
-- protected buffer.
pattern BUFFER_CREATE_PROTECTED_BIT :: BufferCreateFlagBits
type BufferCreateFlags = BufferCreateFlagBits
-- | VkMemoryAllocateFlagBits - Bitmask specifying flags for a device
-- memory allocation
--
-- See Also
--
-- MemoryAllocateFlags
newtype MemoryAllocateFlagBits
MemoryAllocateFlagBits :: Flags -> MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_MASK_BIT specifies that memory will be
-- allocated for the devices in
-- MemoryAllocateFlagsInfo::deviceMask.
pattern MEMORY_ALLOCATE_DEVICE_MASK_BIT :: MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies
-- that the memory’s address can be saved and reused on a
-- subsequent run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT specifies that the memory
-- can be attached to a buffer object created with the
-- BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT bit set in
-- usage, and that the memory handle can be used to
-- retrieve an opaque address via
-- getDeviceMemoryOpaqueCaptureAddress.
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT :: MemoryAllocateFlagBits
type MemoryAllocateFlags = MemoryAllocateFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.DeviceMemoryOpaqueCaptureAddressInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.MemoryOpaqueCaptureAddressAllocateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferOpaqueCaptureAddressCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.BufferDeviceAddressInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeatures
module Vulkan.Extensions.VK_KHR_buffer_device_address
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR :: StructureType
pattern BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR :: BufferUsageFlagBits
pattern BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: BufferCreateFlagBits
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR :: MemoryAllocateFlagBits
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: MemoryAllocateFlagBits
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR :: Result
getBufferOpaqueCaptureAddressKHR :: MonadIO io => Device -> BufferDeviceAddressInfo -> io Word64
getBufferDeviceAddressKHR :: MonadIO io => Device -> BufferDeviceAddressInfo -> io DeviceAddress
getDeviceMemoryOpaqueCaptureAddressKHR :: MonadIO io => Device -> DeviceMemoryOpaqueCaptureAddressInfo -> io Word64
type PhysicalDeviceBufferDeviceAddressFeaturesKHR = PhysicalDeviceBufferDeviceAddressFeatures
type BufferDeviceAddressInfoKHR = BufferDeviceAddressInfo
type BufferOpaqueCaptureAddressCreateInfoKHR = BufferOpaqueCaptureAddressCreateInfo
type MemoryOpaqueCaptureAddressAllocateInfoKHR = MemoryOpaqueCaptureAddressAllocateInfo
type DeviceMemoryOpaqueCaptureAddressInfoKHR = DeviceMemoryOpaqueCaptureAddressInfo
type KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION = 1
pattern KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION :: forall a. Integral a => a
type KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME = "VK_KHR_buffer_device_address"
pattern KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions.VK_EXT_buffer_device_address
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT :: StructureType
pattern BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT :: BufferUsageFlagBits
pattern BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT :: BufferCreateFlagBits
pattern ERROR_INVALID_DEVICE_ADDRESS_EXT :: Result
getBufferDeviceAddressEXT :: MonadIO io => Device -> BufferDeviceAddressInfo -> io DeviceAddress
-- | VkPhysicalDeviceBufferDeviceAddressFeaturesEXT - Structure describing
-- buffer address features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceBufferDeviceAddressFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceBufferDeviceAddressFeaturesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Note
--
-- The PhysicalDeviceBufferDeviceAddressFeaturesEXT structure has
-- the same members as the
-- PhysicalDeviceBufferDeviceAddressFeatures structure, but the
-- functionality indicated by the members is expressed differently. The
-- features indicated by the
-- PhysicalDeviceBufferDeviceAddressFeatures structure requires
-- additional flags to be passed at memory allocation time, and the
-- capture and replay mechanism is built around opaque capture addresses
-- for buffer and memory objects.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceBufferDeviceAddressFeaturesEXT
PhysicalDeviceBufferDeviceAddressFeaturesEXT :: Bool -> Bool -> Bool -> PhysicalDeviceBufferDeviceAddressFeaturesEXT
-- | bufferDeviceAddress indicates that the implementation
-- supports accessing buffer memory in shaders as storage buffers via an
-- address queried from getBufferDeviceAddressEXT.
[$sel:bufferDeviceAddress:PhysicalDeviceBufferDeviceAddressFeaturesEXT] :: PhysicalDeviceBufferDeviceAddressFeaturesEXT -> Bool
-- | bufferDeviceAddressCaptureReplay indicates that the
-- implementation supports saving and reusing buffer addresses, e.g. for
-- trace capture and replay.
[$sel:bufferDeviceAddressCaptureReplay:PhysicalDeviceBufferDeviceAddressFeaturesEXT] :: PhysicalDeviceBufferDeviceAddressFeaturesEXT -> Bool
-- | bufferDeviceAddressMultiDevice indicates that the
-- implementation supports the bufferDeviceAddress feature for
-- logical devices created with multiple physical devices. If this
-- feature is not supported, buffer addresses must not be queried
-- on a logical device created with more than one physical device.
[$sel:bufferDeviceAddressMultiDevice:PhysicalDeviceBufferDeviceAddressFeaturesEXT] :: PhysicalDeviceBufferDeviceAddressFeaturesEXT -> Bool
-- | VkBufferDeviceAddressCreateInfoEXT - Request a specific address for a
-- buffer
--
-- Description
--
-- If deviceAddress is zero, no specific address is requested.
--
-- If deviceAddress is not zero, then it must be an
-- address retrieved from an identically created buffer on the same
-- implementation. The buffer must also be bound to an identically
-- created DeviceMemory object.
--
-- If this structure is not present, it is as if deviceAddress
-- is zero.
--
-- Apps should avoid creating buffers with app-provided addresses
-- and implementation-provided addresses in the same process, to reduce
-- the likelihood of ERROR_INVALID_DEVICE_ADDRESS_EXT errors.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceAddress, StructureType
data BufferDeviceAddressCreateInfoEXT
BufferDeviceAddressCreateInfoEXT :: DeviceAddress -> BufferDeviceAddressCreateInfoEXT
-- | deviceAddress is the device address requested for the buffer.
[$sel:deviceAddress:BufferDeviceAddressCreateInfoEXT] :: BufferDeviceAddressCreateInfoEXT -> DeviceAddress
type PhysicalDeviceBufferAddressFeaturesEXT = PhysicalDeviceBufferDeviceAddressFeaturesEXT
type BufferDeviceAddressInfoEXT = BufferDeviceAddressInfo
type EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION = 2
pattern EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION :: forall a. Integral a => a
type EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME = "VK_EXT_buffer_device_address"
pattern EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_buffer_device_address.BufferDeviceAddressCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_buffer_device_address.PhysicalDeviceBufferDeviceAddressFeaturesEXT
module Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset
-- | vkResetQueryPool - Reset queries in a query pool
--
-- Description
--
-- This command sets the status of query indices [firstQuery,
-- firstQuery + queryCount - 1] to unavailable.
--
-- If queryPool is QUERY_TYPE_PERFORMANCE_QUERY_KHR this
-- command sets the status of query indices [firstQuery,
-- firstQuery + queryCount - 1] to unavailable for each
-- pass.
--
-- Valid Usage
--
--
--
--
-- - firstQuery must be less than the number of queries
-- in queryPool
-- - The sum of firstQuery and queryCount must
-- be less than or equal to the number of queries in
-- queryPool
-- - Submitted commands that refer to the range specified by
-- firstQuery and queryCount in queryPool
-- must have completed execution
-- - The range of queries specified by firstQuery and
-- queryCount in queryPool must not be in use by
-- calls to getQueryPoolResults or resetQueryPool in other
-- threads
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - queryPool must have been created, allocated, or
-- retrieved from device
--
--
-- See Also
--
-- Device, QueryPool
resetQueryPool :: forall io. MonadIO io => Device -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> io ()
-- | VkPhysicalDeviceHostQueryResetFeatures - Structure describing whether
-- queries can be reset from the host
--
-- Members
--
-- The members of the PhysicalDeviceHostQueryResetFeatures
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceHostQueryResetFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceHostQueryResetFeatures can also be
-- included in the pNext chain of DeviceCreateInfo to
-- enable features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceHostQueryResetFeatures
PhysicalDeviceHostQueryResetFeatures :: Bool -> PhysicalDeviceHostQueryResetFeatures
-- | hostQueryReset indicates that the implementation supports
-- resetting queries from the host with resetQueryPool.
[$sel:hostQueryReset:PhysicalDeviceHostQueryResetFeatures] :: PhysicalDeviceHostQueryResetFeatures -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_EXT_host_query_reset.PhysicalDeviceHostQueryResetFeatures
module Vulkan.Extensions.VK_EXT_host_query_reset
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT :: StructureType
resetQueryPoolEXT :: MonadIO io => Device -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> io ()
type PhysicalDeviceHostQueryResetFeaturesEXT = PhysicalDeviceHostQueryResetFeatures
type EXT_HOST_QUERY_RESET_SPEC_VERSION = 1
pattern EXT_HOST_QUERY_RESET_SPEC_VERSION :: forall a. Integral a => a
type EXT_HOST_QUERY_RESET_EXTENSION_NAME = "VK_EXT_host_query_reset"
pattern EXT_HOST_QUERY_RESET_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Promoted_From_VK_KHR_maintenance1
-- | vkTrimCommandPool - Trim a command pool
--
-- Description
--
-- Trimming a command pool recycles unused memory from the command pool
-- back to the system. Command buffers allocated from the pool are not
-- affected by the command.
--
-- Note
--
-- This command provides applications with some control over the internal
-- memory allocations used by command pools.
--
-- Unused memory normally arises from command buffers that have been
-- recorded and later reset, such that they are no longer using the
-- memory. On reset, a command buffer can return memory to its command
-- pool, but the only way to release memory from a command pool to the
-- system requires calling resetCommandPool, which cannot be
-- executed while any command buffers from that pool are still in use.
-- Subsequent recording operations into command buffers will re-use this
-- memory but since total memory requirements fluctuate over time, unused
-- memory can accumulate.
--
-- In this situation, trimming a command pool may be useful to
-- return unused memory back to the system, returning the total
-- outstanding memory allocated by the pool back to a more “average”
-- value.
--
-- Implementations utilize many internal allocation strategies that make
-- it impossible to guarantee that all unused memory is released back to
-- the system. For instance, an implementation of a command pool
-- may involve allocating memory in bulk from the system and
-- sub-allocating from that memory. In such an implementation any live
-- command buffer that holds a reference to a bulk allocation would
-- prevent that allocation from being freed, even if only a small
-- proportion of the bulk allocation is in use.
--
-- In most cases trimming will result in a reduction in allocated but
-- unused memory, but it does not guarantee the “ideal” behavior.
--
-- Trimming may be an expensive operation, and should not
-- be called frequently. Trimming should be treated as a way to
-- relieve memory pressure after application-known points when there
-- exists enough unused memory that the cost of trimming is “worth” it.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - commandPool must be a valid CommandPool
-- handle
-- - flags must be 0
-- - commandPool must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to commandPool must be externally
-- synchronized
--
--
-- See Also
--
-- CommandPool, CommandPoolTrimFlags, Device
trimCommandPool :: forall io. MonadIO io => Device -> CommandPool -> CommandPoolTrimFlags -> io ()
-- | VkCommandPoolTrimFlags - Reserved for future use
--
-- Description
--
-- CommandPoolTrimFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- trimCommandPool, trimCommandPoolKHR
newtype CommandPoolTrimFlags
CommandPoolTrimFlags :: Flags -> CommandPoolTrimFlags
-- | VkResult - Vulkan command return codes
--
-- Description
--
-- If a command returns a runtime error, unless otherwise specified any
-- output parameters will have undefined contents, except that if the
-- output parameter is a structure with sType and pNext
-- fields, those fields will be unmodified. Any structures chained from
-- pNext will also have undefined contents, except that
-- sType and pNext will be unmodified.
--
-- Out of memory errors do not damage any currently existing Vulkan
-- objects. Objects that have already been successfully created
-- can still be used by the application.
--
-- ERROR_UNKNOWN will be returned by an implementation when an
-- unexpected error occurs that cannot be attributed to valid behavior of
-- the application and implementation. Under these conditions, it
-- may be returned from any command returning a Result.
--
-- Note
--
-- ERROR_UNKNOWN is not expected to ever be returned if the
-- application behavior is valid, and if the implementation is bug-free.
-- If ERROR_UNKNOWN is received, the application should be checked
-- against the latest validation layers to verify correct behavior as
-- much as possible. If no issues are identified it could be an
-- implementation issue, and the implementor should be contacted for
-- support.
--
-- Performance-critical commands generally do not have return codes. If a
-- runtime error occurs in such commands, the implementation will defer
-- reporting the error until a specified point. For commands that record
-- into command buffers (vkCmd*) runtime errors are reported by
-- endCommandBuffer.
--
-- See Also
--
-- PresentInfoKHR
newtype Result
Result :: Int32 -> Result
-- | SUCCESS Command successfully completed
pattern SUCCESS :: Result
-- | NOT_READY A fence or query has not yet completed
pattern NOT_READY :: Result
-- | TIMEOUT A wait operation has not completed in the specified
-- time
pattern TIMEOUT :: Result
-- | EVENT_SET An event is signaled
pattern EVENT_SET :: Result
-- | EVENT_RESET An event is unsignaled
pattern EVENT_RESET :: Result
-- | INCOMPLETE A return array was too small for the result
pattern INCOMPLETE :: Result
-- | ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
pattern ERROR_OUT_OF_HOST_MEMORY :: Result
-- | ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has
-- failed.
pattern ERROR_OUT_OF_DEVICE_MEMORY :: Result
-- | ERROR_INITIALIZATION_FAILED Initialization of an object could
-- not be completed for implementation-specific reasons.
pattern ERROR_INITIALIZATION_FAILED :: Result
-- | ERROR_DEVICE_LOST The logical or physical device has been lost.
-- See Lost Device
pattern ERROR_DEVICE_LOST :: Result
-- | ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
pattern ERROR_MEMORY_MAP_FAILED :: Result
-- | ERROR_LAYER_NOT_PRESENT A requested layer is not present or
-- could not be loaded.
pattern ERROR_LAYER_NOT_PRESENT :: Result
-- | ERROR_EXTENSION_NOT_PRESENT A requested extension is not
-- supported.
pattern ERROR_EXTENSION_NOT_PRESENT :: Result
-- | ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
pattern ERROR_FEATURE_NOT_PRESENT :: Result
-- | ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is
-- not supported by the driver or is otherwise incompatible for
-- implementation-specific reasons.
pattern ERROR_INCOMPATIBLE_DRIVER :: Result
-- | ERROR_TOO_MANY_OBJECTS Too many objects of the type have
-- already been created.
pattern ERROR_TOO_MANY_OBJECTS :: Result
-- | ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported
-- on this device.
pattern ERROR_FORMAT_NOT_SUPPORTED :: Result
-- | ERROR_FRAGMENTED_POOL A pool allocation has failed due to
-- fragmentation of the pool’s memory. This must only be returned
-- if no attempt to allocate host or device memory was made to
-- accommodate the new allocation. This should be returned in
-- preference to ERROR_OUT_OF_POOL_MEMORY, but only if the
-- implementation is certain that the pool allocation failure was due to
-- fragmentation.
pattern ERROR_FRAGMENTED_POOL :: Result
-- | ERROR_UNKNOWN An unknown error has occurred; either the
-- application has provided invalid input, or an implementation failure
-- has occurred.
pattern ERROR_UNKNOWN :: Result
-- | PIPELINE_COMPILE_REQUIRED_EXT A requested pipeline creation
-- would have required compilation, but the application requested
-- compilation to not be performed.
pattern PIPELINE_COMPILE_REQUIRED_EXT :: Result
-- | OPERATION_NOT_DEFERRED_KHR A deferred operation was requested
-- and no operations were deferred.
pattern OPERATION_NOT_DEFERRED_KHR :: Result
-- | OPERATION_DEFERRED_KHR A deferred operation was requested and
-- at least some of the work was deferred.
pattern OPERATION_DEFERRED_KHR :: Result
-- | THREAD_DONE_KHR A deferred operation is not complete but there
-- is no work remaining to assign to additional threads.
pattern THREAD_DONE_KHR :: Result
-- | THREAD_IDLE_KHR A deferred operation is not complete but there
-- is currently no work for this thread to do at the time of this call.
pattern THREAD_IDLE_KHR :: Result
-- | ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a
-- swapchain created with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it
-- did not have exlusive full-screen access. This may occur due to
-- implementation-dependent reasons, outside of the application’s
-- control.
pattern ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: Result
pattern ERROR_NOT_PERMITTED_EXT :: Result
pattern ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: Result
pattern ERROR_INCOMPATIBLE_VERSION_KHR :: Result
-- | ERROR_INVALID_SHADER_NV One or more shaders failed to compile
-- or link. More details are reported back to the application via
-- VK_EXT_debug_report if enabled.
pattern ERROR_INVALID_SHADER_NV :: Result
pattern ERROR_VALIDATION_FAILED_EXT :: Result
-- | ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain
-- does not use the same presentable image layout, or is incompatible in
-- a way that prevents sharing an image.
pattern ERROR_INCOMPATIBLE_DISPLAY_KHR :: Result
-- | ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that
-- it is no longer compatible with the swapchain, and further
-- presentation requests using the swapchain will fail. Applications
-- must query the new surface properties and recreate their
-- swapchain if they wish to continue presenting to the surface.
pattern ERROR_OUT_OF_DATE_KHR :: Result
-- | SUBOPTIMAL_KHR A swapchain no longer matches the surface
-- properties exactly, but can still be used to present to the
-- surface successfully.
pattern SUBOPTIMAL_KHR :: Result
-- | ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already
-- in use by Vulkan or another API in a manner which prevents it from
-- being used again.
pattern ERROR_NATIVE_WINDOW_IN_USE_KHR :: Result
-- | ERROR_SURFACE_LOST_KHR A surface is no longer available.
pattern ERROR_SURFACE_LOST_KHR :: Result
-- | ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or
-- memory allocation failed because the requested address is not
-- available. A shader group handle assignment failed because the
-- requested shader group handle information is no longer valid.
pattern ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: Result
-- | ERROR_FRAGMENTATION A descriptor pool creation has failed due
-- to fragmentation.
pattern ERROR_FRAGMENTATION :: Result
-- | ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid
-- handle of the specified type.
pattern ERROR_INVALID_EXTERNAL_HANDLE :: Result
-- | ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed.
-- This must only be returned if no attempt to allocate host or
-- device memory was made to accommodate the new allocation. If the
-- failure was definitely due to fragmentation of the pool,
-- ERROR_FRAGMENTED_POOL should be returned instead.
pattern ERROR_OUT_OF_POOL_MEMORY :: Result
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
-- | VkFormatFeatureFlagBits - Bitmask specifying features supported by a
-- buffer
--
-- Description
--
-- The following bits may be set in linearTilingFeatures,
-- optimalTilingFeatures, and
-- DrmFormatModifierPropertiesEXT::drmFormatModifierTilingFeatures,
-- specifying that the features are supported by images or
-- image views or sampler Y′CBCR conversion objects created
-- with the queried
-- getPhysicalDeviceFormatProperties::format:
--
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image
-- view can be sampled from.
-- - FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image
-- view can be used as a storage images.
-- - FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an
-- image view can be used as storage image that supports atomic
-- operations.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
-- - FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that
-- an image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
-- - FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image
-- can be used as srcImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_BLIT_DST_BIT specifies that an image
-- can be used as dstImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies
-- that if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image
-- view can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.If the format being queried is a
-- depth/stencil format, this bit only specifies that the depth aspect
-- (not the stencil aspect) of an image of this format supports linear
-- filtering, and that linear filtering of the depth aspect is supported
-- whether depth compare is enabled in the sampler or not. If this bit is
-- not present, linear filtering with depth compare disabled is
-- unsupported and linear filtering with depth compare enabled is
-- supported, but may compute the filtered value in an
-- implementation-dependent manner which differs from the normal rules of
-- linear filtering. The resulting value must be in the range
-- [0,1] and should be proportional to, or a weighted average of,
-- the number of comparison passes or failures.
-- - FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
-- - FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT specifies
-- that Image can be used with a sampler that has either of
-- magFilter or minFilter set to
-- FILTER_CUBIC_EXT, or be the source image for a blit with
-- filter set to FILTER_CUBIC_EXT. This bit must
-- only be exposed for formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT. If the format being queried
-- is a depth/stencil format, this only specifies that the depth aspect
-- is cubic filterable.
-- - FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that
-- an application can define a sampler Y′CBCR conversion
-- using this format as a source, and that an image of this format
-- can be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
-- - FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by
-- default.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
-- - FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar
-- image can have the IMAGE_CREATE_DISJOINT_BIT set during
-- image creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane
-- formats.
-- - FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that
-- an image view can be used as a fragment density map
-- attachment.
--
--
-- The following bits may be set in bufferFeatures,
-- specifying that the features are supported by buffers or
-- buffer views created with the queried
-- getPhysicalDeviceProperties::format:
--
--
--
-- See Also
--
-- FormatFeatureFlags
newtype FormatFeatureFlagBits
FormatFeatureFlagBits :: Flags -> FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image view
-- can be sampled from.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image view
-- can be used as a storage images.
pattern FORMAT_FEATURE_STORAGE_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an image
-- view can be used as storage image that supports atomic
-- operations.
pattern FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT specifies that
-- atomic operations are supported on
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER with this format.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_VERTEX_BUFFER_BIT specifies that the format
-- can be used as a vertex attribute format
-- (VertexInputAttributeDescription::format).
pattern FORMAT_FEATURE_VERTEX_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that an
-- image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
pattern FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image can
-- be used as srcImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_SRC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_DST_BIT specifies that an image can
-- be used as dstImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies that
-- if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image view
-- can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.
--
-- If the format being queried is a depth/stencil format, this bit only
-- specifies that the depth aspect (not the stencil aspect) of an image
-- of this format supports linear filtering, and that linear filtering of
-- the depth aspect is supported whether depth compare is enabled in the
-- sampler or not. If this bit is not present, linear filtering with
-- depth compare disabled is unsupported and linear filtering with depth
-- compare enabled is supported, but may compute the filtered
-- value in an implementation-dependent manner which differs from the
-- normal rules of linear filtering. The resulting value must be
-- in the range [0,1] and should be proportional to, or a weighted
-- average of, the number of comparison passes or failures.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that an
-- image view can be used as a fragment density map
-- attachment.
pattern FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
pattern FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar image
-- can have the IMAGE_CREATE_DISJOINT_BIT set during image
-- creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane formats.
pattern FORMAT_FEATURE_DISJOINT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by default.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
pattern FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
pattern FORMAT_FEATURE_TRANSFER_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
pattern FORMAT_FEATURE_TRANSFER_SRC_BIT :: FormatFeatureFlagBits
type FormatFeatureFlags = FormatFeatureFlagBits
module Vulkan.Extensions.VK_KHR_maintenance1
pattern ERROR_OUT_OF_POOL_MEMORY_KHR :: Result
pattern FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_TRANSFER_DST_BIT_KHR :: FormatFeatureFlagBits
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR :: ImageCreateFlagBits
trimCommandPoolKHR :: MonadIO io => Device -> CommandPool -> CommandPoolTrimFlags -> io ()
type CommandPoolTrimFlagsKHR = CommandPoolTrimFlags
type KHR_MAINTENANCE1_SPEC_VERSION = 2
pattern KHR_MAINTENANCE1_SPEC_VERSION :: forall a. Integral a => a
type KHR_MAINTENANCE1_EXTENSION_NAME = "VK_KHR_maintenance1"
pattern KHR_MAINTENANCE1_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities
-- | vkGetPhysicalDeviceExternalBufferProperties - Query external handle
-- types supported by buffers
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalBufferProperties, PhysicalDevice,
-- PhysicalDeviceExternalBufferInfo
getPhysicalDeviceExternalBufferProperties :: forall io. MonadIO io => PhysicalDevice -> PhysicalDeviceExternalBufferInfo -> io ExternalBufferProperties
-- | VkExternalMemoryProperties - Structure specifying external memory
-- handle type capabilities
--
-- Description
--
-- compatibleHandleTypes must include at least
-- handleType. Inclusion of a handle type in
-- compatibleHandleTypes does not imply the values returned in
-- ImageFormatProperties2 will be the same when
-- PhysicalDeviceExternalImageFormatInfo::handleType is
-- set to that type. The application is responsible for querying the
-- capabilities of all handle types intended for concurrent use in a
-- single image and intersecting them to obtain the compatible set of
-- capabilities.
--
-- See Also
--
-- ExternalBufferProperties, ExternalImageFormatProperties,
-- ExternalMemoryFeatureFlags,
-- ExternalMemoryHandleTypeFlags
data ExternalMemoryProperties
ExternalMemoryProperties :: ExternalMemoryFeatureFlags -> ExternalMemoryHandleTypeFlags -> ExternalMemoryHandleTypeFlags -> ExternalMemoryProperties
-- | externalMemoryFeatures is a bitmask of
-- ExternalMemoryFeatureFlagBits specifying the features of
-- handleType.
[$sel:externalMemoryFeatures:ExternalMemoryProperties] :: ExternalMemoryProperties -> ExternalMemoryFeatureFlags
-- | exportFromImportedHandleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBits specifying which types of
-- imported handle handleType can be exported from.
[$sel:exportFromImportedHandleTypes:ExternalMemoryProperties] :: ExternalMemoryProperties -> ExternalMemoryHandleTypeFlags
-- | compatibleHandleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBits specifying handle types which
-- can be specified at the same time as handleType when
-- creating an image compatible with external memory.
[$sel:compatibleHandleTypes:ExternalMemoryProperties] :: ExternalMemoryProperties -> ExternalMemoryHandleTypeFlags
-- | VkPhysicalDeviceExternalImageFormatInfo - Structure specifying
-- external image creation parameters
--
-- Description
--
-- If handleType is 0,
-- getPhysicalDeviceImageFormatProperties2 will behave as if
-- PhysicalDeviceExternalImageFormatInfo was not present, and
-- ExternalImageFormatProperties will be ignored.
--
-- If handleType is not compatible with the format,
-- type, tiling, usage, and flags
-- specified in PhysicalDeviceImageFormatInfo2, then
-- getPhysicalDeviceImageFormatProperties2 returns
-- ERROR_FORMAT_NOT_SUPPORTED.
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagBits, StructureType
data PhysicalDeviceExternalImageFormatInfo
PhysicalDeviceExternalImageFormatInfo :: ExternalMemoryHandleTypeFlagBits -> PhysicalDeviceExternalImageFormatInfo
-- | handleType is a ExternalMemoryHandleTypeFlagBits value
-- specifying the memory handle type that will be used with the memory
-- associated with the image.
[$sel:handleType:PhysicalDeviceExternalImageFormatInfo] :: PhysicalDeviceExternalImageFormatInfo -> ExternalMemoryHandleTypeFlagBits
-- | VkExternalImageFormatProperties - Structure specifying supported
-- external handle properties
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryProperties, StructureType
data ExternalImageFormatProperties
ExternalImageFormatProperties :: ExternalMemoryProperties -> ExternalImageFormatProperties
-- | externalMemoryProperties is a ExternalMemoryProperties
-- structure specifying various capabilities of the external handle type
-- when used with the specified image creation parameters.
[$sel:externalMemoryProperties:ExternalImageFormatProperties] :: ExternalImageFormatProperties -> ExternalMemoryProperties
-- | VkPhysicalDeviceExternalBufferInfo - Structure specifying buffer
-- creation parameters
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- BufferCreateFlags, BufferUsageFlags,
-- ExternalMemoryHandleTypeFlagBits, StructureType,
-- getPhysicalDeviceExternalBufferProperties,
-- getPhysicalDeviceExternalBufferPropertiesKHR
data PhysicalDeviceExternalBufferInfo
PhysicalDeviceExternalBufferInfo :: BufferCreateFlags -> BufferUsageFlags -> ExternalMemoryHandleTypeFlagBits -> PhysicalDeviceExternalBufferInfo
-- | flags is a bitmask of BufferCreateFlagBits describing
-- additional parameters of the buffer, corresponding to
-- BufferCreateInfo::flags.
--
-- flags must be a valid combination of
-- BufferCreateFlagBits values
[$sel:flags:PhysicalDeviceExternalBufferInfo] :: PhysicalDeviceExternalBufferInfo -> BufferCreateFlags
-- | usage is a bitmask of BufferUsageFlagBits describing
-- the intended usage of the buffer, corresponding to
-- BufferCreateInfo::usage.
--
-- usage must be a valid combination of
-- BufferUsageFlagBits values
--
-- usage must not be 0
[$sel:usage:PhysicalDeviceExternalBufferInfo] :: PhysicalDeviceExternalBufferInfo -> BufferUsageFlags
-- | handleType is a ExternalMemoryHandleTypeFlagBits value
-- specifying the memory handle type that will be used with the memory
-- associated with the buffer.
--
-- handleType must be a valid
-- ExternalMemoryHandleTypeFlagBits value
[$sel:handleType:PhysicalDeviceExternalBufferInfo] :: PhysicalDeviceExternalBufferInfo -> ExternalMemoryHandleTypeFlagBits
-- | VkExternalBufferProperties - Structure specifying supported external
-- handle capabilities
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryProperties, StructureType,
-- getPhysicalDeviceExternalBufferProperties,
-- getPhysicalDeviceExternalBufferPropertiesKHR
data ExternalBufferProperties
ExternalBufferProperties :: ExternalMemoryProperties -> ExternalBufferProperties
-- | externalMemoryProperties is a ExternalMemoryProperties
-- structure specifying various capabilities of the external handle type
-- when used with the specified buffer creation parameters.
[$sel:externalMemoryProperties:ExternalBufferProperties] :: ExternalBufferProperties -> ExternalMemoryProperties
-- | VkPhysicalDeviceIDProperties - Structure specifying IDs related to the
-- physical device
--
-- Description
--
--
-- - deviceUUID is an array of UUID_SIZE
-- uint8_t values representing a universally unique identifier
-- for the device.
--
--
--
-- - driverUUID is an array of UUID_SIZE
-- uint8_t values representing a universally unique identifier
-- for the driver build in use by the device.
-- - deviceLUID is an array of LUID_SIZE
-- uint8_t values representing a locally unique identifier for
-- the device.
-- - deviceNodeMask is a uint32_t bitfield
-- identifying the node within a linked device adapter corresponding to
-- the device.
-- - deviceLUIDValid is a boolean value that will be
-- TRUE if deviceLUID contains a valid LUID and
-- deviceNodeMask contains a valid node mask, and FALSE
-- if they do not.
--
--
-- deviceUUID must be immutable for a given device across
-- instances, processes, driver APIs, driver versions, and system
-- reboots.
--
-- Applications can compare the driverUUID value across
-- instance and process boundaries, and can make similar queries
-- in external APIs to determine whether they are capable of sharing
-- memory objects and resources using them with the device.
--
-- deviceUUID and/or driverUUID must be used to
-- determine whether a particular external object can be shared between
-- driver components, where such a restriction exists as defined in the
-- compatibility table for the particular object type:
--
--
--
-- If deviceLUIDValid is FALSE, the values of
-- deviceLUID and deviceNodeMask are undefined. If
-- deviceLUIDValid is TRUE and Vulkan is running on the
-- Windows operating system, the contents of deviceLUID
-- can be cast to an LUID object and must be equal
-- to the locally unique identifier of a IDXGIAdapter1 object
-- that corresponds to physicalDevice. If
-- deviceLUIDValid is TRUE, deviceNodeMask
-- must contain exactly one bit. If Vulkan is running on an
-- operating system that supports the Direct3D 12 API and
-- physicalDevice corresponds to an individual device in a
-- linked device adapter, deviceNodeMask identifies the Direct3D
-- 12 node corresponding to physicalDevice. Otherwise,
-- deviceNodeMask must be 1.
--
-- Note
--
-- Although they have identical descriptions,
-- PhysicalDeviceIDProperties::deviceUUID may differ from
-- PhysicalDeviceProperties2::pipelineCacheUUID. The
-- former is intended to identify and correlate devices across API and
-- driver boundaries, while the latter is used to identify a compatible
-- device and driver combination to use when serializing and
-- de-serializing pipeline state.
--
-- Note
--
-- While PhysicalDeviceIDProperties::deviceUUID is
-- specified to remain consistent across driver versions and system
-- reboots, it is not intended to be usable as a serializable persistent
-- identifier for a device. It may change when a device is physically
-- added to, removed from, or moved to a different connector in a system
-- while that system is powered down. Further, there is no reasonable way
-- to verify with conformance testing that a given device retains the
-- same UUID in a given system across all driver versions supported in
-- that system. While implementations should make every effort to report
-- consistent device UUIDs across driver versions, applications should
-- avoid relying on the persistence of this value for uses other than
-- identifying compatible devices for external object sharing purposes.
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceIDProperties
PhysicalDeviceIDProperties :: ByteString -> ByteString -> ByteString -> Word32 -> Bool -> PhysicalDeviceIDProperties
[$sel:deviceUUID:PhysicalDeviceIDProperties] :: PhysicalDeviceIDProperties -> ByteString
[$sel:driverUUID:PhysicalDeviceIDProperties] :: PhysicalDeviceIDProperties -> ByteString
[$sel:deviceLUID:PhysicalDeviceIDProperties] :: PhysicalDeviceIDProperties -> ByteString
[$sel:deviceNodeMask:PhysicalDeviceIDProperties] :: PhysicalDeviceIDProperties -> Word32
[$sel:deviceLUIDValid:PhysicalDeviceIDProperties] :: PhysicalDeviceIDProperties -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory
-- handle types
--
-- Description
--
-- Some external memory handle types can only be shared within the same
-- underlying physical device and/or the same driver version, as defined
-- in the following table:
--
-- TODO: table
--
-- External memory handle types compatibility
--
-- Note
--
-- The above table does not restrict the drivers and devices with which
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT
-- may be shared, as these handle types inherently mean memory
-- that does not come from the same device, as they import memory from
-- the host or a foreign device, respectively.
--
-- Note
--
-- Even though the above table does not restrict the drivers and devices
-- with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT
-- may be shared, query mechanisms exist in the Vulkan API that
-- prevent the import of incompatible dma-bufs (such as
-- getMemoryFdPropertiesKHR) and that prevent incompatible usage
-- of dma-bufs (such as PhysicalDeviceExternalBufferInfo and
-- PhysicalDeviceExternalImageFormatInfo).
--
-- See Also
--
-- ExternalMemoryHandleTypeFlags, ImportMemoryFdInfoKHR,
-- ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR, MemoryGetFdInfoKHR,
-- MemoryGetWin32HandleInfoKHR,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- getMemoryFdPropertiesKHR,
-- getMemoryHostPointerPropertiesEXT,
-- getMemoryWin32HandlePropertiesKHR
newtype ExternalMemoryHandleTypeFlagBits
ExternalMemoryHandleTypeFlagBits :: Flags -> ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX
-- file descriptor handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It must be compatible with
-- the POSIX system calls dup, dup2, close,
-- and the non-standard system call dup3. Additionally, it
-- must be transportable over a socket using an
-- SCM_RIGHTS control message. It owns a reference to the
-- underlying memory resource represented by its Vulkan memory object.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT
-- handle that has only limited valid usage outside of Vulkan and other
-- compatible APIs. It must be compatible with the functions
-- DuplicateHandle, CloseHandle,
-- CompareObjectHandles, GetHandleInformation, and
-- SetHandleInformation. It owns a reference to the underlying
-- memory resource represented by its Vulkan memory object.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a
-- global share handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It is not compatible with any native
-- APIs. It does not own a reference to the underlying memory resource
-- represented its Vulkan memory object, and will therefore become
-- invalid when all Vulkan memory objects associated with it are
-- destroyed.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT
-- handle returned by
-- IDXGIResource1::CreateSharedHandle referring to a
-- Direct3D 10 or 11 texture resource. It owns a reference to the memory
-- used by the Direct3D resource.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a
-- global share handle returned by
-- IDXGIResource::GetSharedHandle referring to a
-- Direct3D 10 or 11 texture resource. It does not own a reference to the
-- underlying Direct3D resource, and will therefore become invalid when
-- all Vulkan memory objects and Direct3D resources associated with it
-- are destroyed.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT
-- handle returned by ID3D12Device::CreateSharedHandle
-- referring to a Direct3D 12 heap resource. It owns a reference to the
-- resources used by the Direct3D heap.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT
-- handle returned by ID3D12Device::CreateSharedHandle
-- referring to a Direct3D 12 committed resource. It owns a reference to
-- the memory used by the Direct3D resource.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT
-- specifies a host pointer to host mapped foreign memory. It does
-- not own a reference to the underlying memory resource, and will
-- therefore become invalid if the foreign memory is unmapped or
-- otherwise becomes no longer available.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a
-- host pointer returned by a host memory allocation command. It does not
-- own a reference to the underlying memory resource, and will therefore
-- become invalid if the host memory is freed.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- specifies an AHardwareBuffer object defined by the Android NDK.
-- See Android Hardware Buffers for more details of this handle
-- type.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID :: ExternalMemoryHandleTypeFlagBits
-- | EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file
-- descriptor for a Linux dma_buf. It owns a reference to the underlying
-- memory resource represented by its Vulkan memory object.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT :: ExternalMemoryHandleTypeFlagBits
type ExternalMemoryHandleTypeFlags = ExternalMemoryHandleTypeFlagBits
-- | VkExternalMemoryFeatureFlagBits - Bitmask specifying features of an
-- external memory handle type
--
-- Description
--
-- Because their semantics in external APIs roughly align with that of an
-- image or buffer with a dedicated allocation in Vulkan, implementations
-- are required to report
-- EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for the following
-- external handle types:
--
-- Implementations must not report
-- EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for buffers with
-- external handle type
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID.
-- Implementations must not report
-- EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for images or
-- buffers with external handle type
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, or
-- EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT.
--
-- See Also
--
-- ExternalMemoryFeatureFlags
newtype ExternalMemoryFeatureFlagBits
ExternalMemoryFeatureFlagBits :: Flags -> ExternalMemoryFeatureFlagBits
-- | EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT specifies that
-- images or buffers created with the specified parameters and handle
-- type must use the mechanisms defined by
-- MemoryDedicatedRequirements and
-- MemoryDedicatedAllocateInfo to create (or import) a dedicated
-- allocation for the image or buffer.
pattern EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT :: ExternalMemoryFeatureFlagBits
-- | EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT specifies that handles
-- of this type can be exported from Vulkan memory objects.
pattern EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT :: ExternalMemoryFeatureFlagBits
-- | EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT specifies that handles
-- of this type can be imported as Vulkan memory objects.
pattern EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT :: ExternalMemoryFeatureFlagBits
type ExternalMemoryFeatureFlags = ExternalMemoryFeatureFlagBits
type LUID_SIZE = 8
pattern LUID_SIZE :: forall a. Integral a => a
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalImageFormatProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalImageFormatProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalBufferProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalBufferProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceIDProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalBufferProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalBufferProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalBufferProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalBufferInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalImageFormatProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalImageFormatProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalImageFormatProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.PhysicalDeviceExternalImageFormatInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_memory_capabilities.ExternalMemoryProperties
module Vulkan.Extensions.VK_KHR_external_memory_capabilities
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR :: StructureType
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR :: ExternalMemoryHandleTypeFlagBits
pattern EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR :: ExternalMemoryFeatureFlagBits
pattern EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR :: ExternalMemoryFeatureFlagBits
pattern EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR :: ExternalMemoryFeatureFlagBits
getPhysicalDeviceExternalBufferPropertiesKHR :: MonadIO io => PhysicalDevice -> PhysicalDeviceExternalBufferInfo -> io ExternalBufferProperties
pattern LUID_SIZE_KHR :: Integral a => a
type ExternalMemoryHandleTypeFlagsKHR = ExternalMemoryHandleTypeFlags
type ExternalMemoryFeatureFlagsKHR = ExternalMemoryFeatureFlags
type ExternalMemoryHandleTypeFlagBitsKHR = ExternalMemoryHandleTypeFlagBits
type ExternalMemoryFeatureFlagBitsKHR = ExternalMemoryFeatureFlagBits
type ExternalMemoryPropertiesKHR = ExternalMemoryProperties
type PhysicalDeviceExternalImageFormatInfoKHR = PhysicalDeviceExternalImageFormatInfo
type ExternalImageFormatPropertiesKHR = ExternalImageFormatProperties
type PhysicalDeviceExternalBufferInfoKHR = PhysicalDeviceExternalBufferInfo
type ExternalBufferPropertiesKHR = ExternalBufferProperties
type PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties
type KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION = 1
pattern KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_memory_capabilities"
pattern KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities
-- | vkGetPhysicalDeviceExternalFenceProperties - Function for querying
-- external fence handle capabilities.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalFenceProperties, PhysicalDevice,
-- PhysicalDeviceExternalFenceInfo
getPhysicalDeviceExternalFenceProperties :: forall io. MonadIO io => PhysicalDevice -> PhysicalDeviceExternalFenceInfo -> io ExternalFenceProperties
-- | VkPhysicalDeviceExternalFenceInfo - Structure specifying fence
-- creation parameters.
--
-- Description
--
-- Note
--
-- Handles of type EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT
-- generated by the implementation may represent either Linux Sync Files
-- or Android Fences at the implementation’s discretion. Applications
-- should only use operations defined for both types of file
-- descriptors, unless they know via means external to Vulkan the type of
-- the file descriptor, or are prepared to deal with the system-defined
-- operation failures resulting from using the wrong type.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalFenceHandleTypeFlagBits, StructureType,
-- getPhysicalDeviceExternalFenceProperties,
-- getPhysicalDeviceExternalFencePropertiesKHR
data PhysicalDeviceExternalFenceInfo
PhysicalDeviceExternalFenceInfo :: ExternalFenceHandleTypeFlagBits -> PhysicalDeviceExternalFenceInfo
-- | handleType is a ExternalFenceHandleTypeFlagBits value
-- indicating an external fence handle type for which capabilities will
-- be returned.
--
-- handleType must be a valid
-- ExternalFenceHandleTypeFlagBits value
[$sel:handleType:PhysicalDeviceExternalFenceInfo] :: PhysicalDeviceExternalFenceInfo -> ExternalFenceHandleTypeFlagBits
-- | VkExternalFenceProperties - Structure describing supported external
-- fence handle features
--
-- Description
--
-- If handleType is not supported by the implementation, then
-- ExternalFenceProperties::externalFenceFeatures will be
-- set to zero.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalFenceFeatureFlags, ExternalFenceHandleTypeFlags,
-- StructureType, getPhysicalDeviceExternalFenceProperties,
-- getPhysicalDeviceExternalFencePropertiesKHR
data ExternalFenceProperties
ExternalFenceProperties :: ExternalFenceHandleTypeFlags -> ExternalFenceHandleTypeFlags -> ExternalFenceFeatureFlags -> ExternalFenceProperties
-- | exportFromImportedHandleTypes is a bitmask of
-- ExternalFenceHandleTypeFlagBits indicating which types of
-- imported handle handleType can be exported from.
[$sel:exportFromImportedHandleTypes:ExternalFenceProperties] :: ExternalFenceProperties -> ExternalFenceHandleTypeFlags
-- | compatibleHandleTypes is a bitmask of
-- ExternalFenceHandleTypeFlagBits specifying handle types which
-- can be specified at the same time as handleType when
-- creating a fence.
[$sel:compatibleHandleTypes:ExternalFenceProperties] :: ExternalFenceProperties -> ExternalFenceHandleTypeFlags
-- | externalFenceFeatures is a bitmask of
-- ExternalFenceFeatureFlagBits indicating the features of
-- handleType.
[$sel:externalFenceFeatures:ExternalFenceProperties] :: ExternalFenceProperties -> ExternalFenceFeatureFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence
-- handle types
--
-- Description
--
-- Some external fence handle types can only be shared within the same
-- underlying physical device and/or the same driver version, as defined
-- in the following table:
--
-- TODO: table
--
-- External fence handle types compatibility
--
-- See Also
--
-- ExternalFenceHandleTypeFlags, FenceGetFdInfoKHR,
-- FenceGetWin32HandleInfoKHR, ImportFenceFdInfoKHR,
-- ImportFenceWin32HandleInfoKHR,
-- PhysicalDeviceExternalFenceInfo
newtype ExternalFenceHandleTypeFlagBits
ExternalFenceHandleTypeFlagBits :: Flags -> ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file
-- descriptor handle that has only limited valid usage outside of Vulkan
-- and other compatible APIs. It must be compatible with the POSIX
-- system calls dup, dup2, close, and the
-- non-standard system call dup3. Additionally, it must
-- be transportable over a socket using an SCM_RIGHTS control
-- message. It owns a reference to the underlying synchronization
-- primitive represented by its Vulkan fence object.
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT
-- handle that has only limited valid usage outside of Vulkan and other
-- compatible APIs. It must be compatible with the functions
-- DuplicateHandle, CloseHandle,
-- CompareObjectHandles, GetHandleInformation, and
-- SetHandleInformation. It owns a reference to the underlying
-- synchronization primitive represented by its Vulkan fence object.
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a
-- global share handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It is not compatible with any native
-- APIs. It does not own a reference to the underlying synchronization
-- primitive represented by its Vulkan fence object, and will therefore
-- become invalid when all Vulkan fence objects associated with it are
-- destroyed.
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalFenceHandleTypeFlagBits
-- | EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file
-- descriptor handle to a Linux Sync File or Android Fence. It can be
-- used with any native API accepting a valid sync file or fence as
-- input. It owns a reference to the underlying synchronization primitive
-- associated with the file descriptor. Implementations which support
-- importing this handle type must accept any type of sync or
-- fence FD supported by the native system they are running on.
pattern EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT :: ExternalFenceHandleTypeFlagBits
type ExternalFenceHandleTypeFlags = ExternalFenceHandleTypeFlagBits
-- | VkExternalFenceFeatureFlagBits - Bitfield describing features of an
-- external fence handle type
--
-- See Also
--
-- ExternalFenceFeatureFlags
newtype ExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits :: Flags -> ExternalFenceFeatureFlagBits
-- | EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT specifies handles of this
-- type can be exported from Vulkan fence objects.
pattern EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: ExternalFenceFeatureFlagBits
-- | EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT specifies handles of this
-- type can be imported to Vulkan fence objects.
pattern EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: ExternalFenceFeatureFlagBits
type ExternalFenceFeatureFlags = ExternalFenceFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.ExternalFenceProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_fence_capabilities.PhysicalDeviceExternalFenceInfo
module Vulkan.Extensions.VK_KHR_external_fence_capabilities
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR :: StructureType
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR :: ExternalFenceHandleTypeFlagBits
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR :: ExternalFenceHandleTypeFlagBits
pattern EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR :: ExternalFenceHandleTypeFlagBits
pattern EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR :: ExternalFenceHandleTypeFlagBits
pattern EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR :: ExternalFenceFeatureFlagBits
pattern EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR :: ExternalFenceFeatureFlagBits
getPhysicalDeviceExternalFencePropertiesKHR :: MonadIO io => PhysicalDevice -> PhysicalDeviceExternalFenceInfo -> io ExternalFenceProperties
type ExternalFenceHandleTypeFlagsKHR = ExternalFenceHandleTypeFlags
type ExternalFenceFeatureFlagsKHR = ExternalFenceFeatureFlags
type ExternalFenceHandleTypeFlagBitsKHR = ExternalFenceHandleTypeFlagBits
type ExternalFenceFeatureFlagBitsKHR = ExternalFenceFeatureFlagBits
type PhysicalDeviceExternalFenceInfoKHR = PhysicalDeviceExternalFenceInfo
type ExternalFencePropertiesKHR = ExternalFenceProperties
type KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION = 1
pattern KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_fence_capabilities"
pattern KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR :: StructureType
pattern LUID_SIZE_KHR :: Integral a => a
module Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation
-- | vkEnumeratePhysicalDeviceGroups - Enumerates groups of physical
-- devices that can be used to create a single logical device
--
-- Description
--
-- If pPhysicalDeviceGroupProperties is NULL, then the
-- number of device groups available is returned in
-- pPhysicalDeviceGroupCount. Otherwise,
-- pPhysicalDeviceGroupCount must point to a variable set
-- by the user to the number of elements in the
-- pPhysicalDeviceGroupProperties array, and on return the
-- variable is overwritten with the number of structures actually written
-- to pPhysicalDeviceGroupProperties. If
-- pPhysicalDeviceGroupCount is less than the number of device
-- groups available, at most pPhysicalDeviceGroupCount
-- structures will be written. If pPhysicalDeviceGroupCount is
-- smaller than the number of device groups available, INCOMPLETE
-- will be returned instead of SUCCESS, to indicate that not all
-- the available device groups were returned.
--
-- Every physical device must be in exactly one device group.
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - pPhysicalDeviceGroupCount must be a valid pointer
-- to a uint32_t value
-- - If the value referenced by pPhysicalDeviceGroupCount is
-- not 0, and pPhysicalDeviceGroupProperties is not
-- NULL, pPhysicalDeviceGroupProperties must be
-- a valid pointer to an array of pPhysicalDeviceGroupCount
-- PhysicalDeviceGroupProperties structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Instance, PhysicalDeviceGroupProperties
enumeratePhysicalDeviceGroups :: forall io. MonadIO io => Instance -> io (Result, "physicalDeviceGroupProperties" ::: Vector PhysicalDeviceGroupProperties)
-- | VkPhysicalDeviceGroupProperties - Structure specifying physical device
-- group properties
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, PhysicalDevice, StructureType,
-- enumeratePhysicalDeviceGroups,
-- enumeratePhysicalDeviceGroupsKHR
data PhysicalDeviceGroupProperties
PhysicalDeviceGroupProperties :: Word32 -> Vector (Ptr PhysicalDevice_T) -> Bool -> PhysicalDeviceGroupProperties
-- | physicalDeviceCount is the number of physical devices in the
-- group.
[$sel:physicalDeviceCount:PhysicalDeviceGroupProperties] :: PhysicalDeviceGroupProperties -> Word32
-- | physicalDevices is an array of MAX_DEVICE_GROUP_SIZE
-- PhysicalDevice handles representing all physical devices in the
-- group. The first physicalDeviceCount elements of the array
-- will be valid.
[$sel:physicalDevices:PhysicalDeviceGroupProperties] :: PhysicalDeviceGroupProperties -> Vector (Ptr PhysicalDevice_T)
-- | subsetAllocation specifies whether logical devices created
-- from the group support allocating device memory on a subset of
-- devices, via the deviceMask member of the
-- MemoryAllocateFlagsInfo. If this is FALSE, then all
-- device memory allocations are made across all physical devices in the
-- group. If physicalDeviceCount is 1, then
-- subsetAllocation must be FALSE.
[$sel:subsetAllocation:PhysicalDeviceGroupProperties] :: PhysicalDeviceGroupProperties -> Bool
-- | VkDeviceGroupDeviceCreateInfo - Create a logical device from multiple
-- physical devices
--
-- Description
--
-- The elements of the pPhysicalDevices array are an ordered
-- list of the physical devices that the logical device represents. These
-- must be a subset of a single device group, and need not be in
-- the same order as they were enumerated. The order of the physical
-- devices in the pPhysicalDevices array determines the
-- device index of each physical device, with element i being
-- assigned a device index of i. Certain commands and structures refer to
-- one or more physical devices by using device indices or device
-- masks formed using device indices.
--
-- A logical device created without using
-- DeviceGroupDeviceCreateInfo, or with
-- physicalDeviceCount equal to zero, is equivalent to a
-- physicalDeviceCount of one and pPhysicalDevices
-- pointing to the physicalDevice parameter to
-- createDevice. In particular, the device index of that physical
-- device is zero.
--
-- Valid Usage
--
--
-- - Each element of pPhysicalDevices must be
-- unique
--
--
--
-- - All elements of pPhysicalDevices must be in the
-- same device group as enumerated by
-- enumeratePhysicalDeviceGroups
-- - If physicalDeviceCount is not 0, the
-- physicalDevice parameter of createDevice must
-- be an element of pPhysicalDevices
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If physicalDeviceCount is not 0,
-- pPhysicalDevices must be a valid pointer to an array
-- of physicalDeviceCount valid PhysicalDevice
-- handles
--
--
-- See Also
--
-- PhysicalDevice, StructureType
data DeviceGroupDeviceCreateInfo
DeviceGroupDeviceCreateInfo :: Vector (Ptr PhysicalDevice_T) -> DeviceGroupDeviceCreateInfo
-- | pPhysicalDevices is a pointer to an array of physical device
-- handles belonging to the same device group.
[$sel:physicalDevices:DeviceGroupDeviceCreateInfo] :: DeviceGroupDeviceCreateInfo -> Vector (Ptr PhysicalDevice_T)
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkMemoryHeapFlagBits - Bitmask specifying attribute flags for a heap
--
-- See Also
--
-- MemoryHeapFlags
newtype MemoryHeapFlagBits
MemoryHeapFlagBits :: Flags -> MemoryHeapFlagBits
-- | MEMORY_HEAP_DEVICE_LOCAL_BIT specifies that the heap
-- corresponds to device local memory. Device local memory may
-- have different performance characteristics than host local memory, and
-- may support different memory property flags.
pattern MEMORY_HEAP_DEVICE_LOCAL_BIT :: MemoryHeapFlagBits
-- | MEMORY_HEAP_MULTI_INSTANCE_BIT specifies that in a logical
-- device representing more than one physical device, there is a
-- per-physical device instance of the heap memory. By default, an
-- allocation from such a heap will be replicated to each physical
-- device’s instance of the heap.
pattern MEMORY_HEAP_MULTI_INSTANCE_BIT :: MemoryHeapFlagBits
type MemoryHeapFlags = MemoryHeapFlagBits
type MAX_DEVICE_GROUP_SIZE = 32
pattern MAX_DEVICE_GROUP_SIZE :: forall a. Integral a => a
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.DeviceGroupDeviceCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.DeviceGroupDeviceCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.DeviceGroupDeviceCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.DeviceGroupDeviceCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.DeviceGroupDeviceCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group_creation.PhysicalDeviceGroupProperties
module Vulkan.Extensions.VK_KHR_device_group_creation
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR :: StructureType
pattern MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR :: MemoryHeapFlagBits
enumeratePhysicalDeviceGroupsKHR :: MonadIO io => Instance -> io (Result, "physicalDeviceGroupProperties" ::: Vector PhysicalDeviceGroupProperties)
pattern MAX_DEVICE_GROUP_SIZE_KHR :: Integral a => a
type PhysicalDeviceGroupPropertiesKHR = PhysicalDeviceGroupProperties
type DeviceGroupDeviceCreateInfoKHR = DeviceGroupDeviceCreateInfo
type KHR_DEVICE_GROUP_CREATION_SPEC_VERSION = 1
pattern KHR_DEVICE_GROUP_CREATION_SPEC_VERSION :: forall a. Integral a => a
type KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME = "VK_KHR_device_group_creation"
pattern KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Promoted_From_VK_KHR_device_group
-- | vkGetDeviceGroupPeerMemoryFeatures - Query supported peer memory
-- features of a device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device, PeerMemoryFeatureFlags
getDeviceGroupPeerMemoryFeatures :: forall io. MonadIO io => Device -> ("heapIndex" ::: Word32) -> ("localDeviceIndex" ::: Word32) -> ("remoteDeviceIndex" ::: Word32) -> io ("peerMemoryFeatures" ::: PeerMemoryFeatureFlags)
-- | vkCmdSetDeviceMask - Modify device mask of a command buffer
--
-- Description
--
-- deviceMask is used to filter out subsequent commands from
-- executing on all physical devices whose bit indices are not set in the
-- mask, except commands beginning a render pass instance, commands
-- transitioning to the next subpass in the render pass instance, and
-- commands ending a render pass instance, which always execute on the
-- set of physical devices whose bit indices are included in the
-- deviceMask member of the
-- DeviceGroupRenderPassBeginInfo structure passed to the command
-- beginning the corresponding render pass instance.
--
-- Valid Usage
--
--
-- - deviceMask must be a valid device mask value
--
--
--
-- - deviceMask must not be zero
-- - deviceMask must not include any set bits that were
-- not in the
-- DeviceGroupCommandBufferBeginInfo::deviceMask value
-- when the command buffer began recording
-- - If cmdSetDeviceMask is called inside a render pass
-- instance, deviceMask must not include any set bits
-- that were not in the
-- DeviceGroupRenderPassBeginInfo::deviceMask value when
-- the render pass instance began recording
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, compute, or transfer
-- operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdSetDeviceMask :: forall io. MonadIO io => CommandBuffer -> ("deviceMask" ::: Word32) -> io ()
-- | vkCmdDispatchBase - Dispatch compute work items
--
-- Description
--
-- When the command is executed, a global workgroup consisting of
-- groupCountX × groupCountY × groupCountZ
-- local workgroups is assembled, with WorkgroupId values
-- ranging from [baseGroup*, baseGroup* +
-- groupCount*) in each component. cmdDispatch is
-- equivalent to
-- vkCmdDispatchBase(0,0,0,groupCountX,groupCountY,groupCountZ).
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - baseGroupX must be less than
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
-- - baseGroupX must be less than
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
-- - baseGroupZ must be less than
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
-- - groupCountX must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
-- minus baseGroupX
-- - groupCountY must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
-- minus baseGroupY
-- - groupCountZ must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
-- minus baseGroupZ
-- - If any of baseGroupX, baseGroupY, or
-- baseGroupZ are not zero, then the bound compute pipeline
-- must have been created with the
-- PIPELINE_CREATE_DISPATCH_BASE flag
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdDispatchBase :: forall io. MonadIO io => CommandBuffer -> ("baseGroupX" ::: Word32) -> ("baseGroupY" ::: Word32) -> ("baseGroupZ" ::: Word32) -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> io ()
pattern PIPELINE_CREATE_DISPATCH_BASE :: PipelineCreateFlagBits
-- | VkMemoryAllocateFlagsInfo - Structure controlling how many instances
-- of memory will be allocated
--
-- Description
--
-- If MEMORY_ALLOCATE_DEVICE_MASK_BIT is not set, the number of
-- instances allocated depends on whether
-- MEMORY_HEAP_MULTI_INSTANCE_BIT is set in the memory heap. If
-- MEMORY_HEAP_MULTI_INSTANCE_BIT is set, then memory is allocated
-- for every physical device in the logical device (as if
-- deviceMask has bits set for all device indices). If
-- MEMORY_HEAP_MULTI_INSTANCE_BIT is not set, then a single
-- instance of memory is allocated (as if deviceMask is set to
-- one).
--
-- On some implementations, allocations from a multi-instance heap
-- may consume memory on all physical devices even if the
-- deviceMask excludes some devices. If
-- PhysicalDeviceGroupProperties::subsetAllocation is
-- TRUE, then memory is only consumed for the devices in the
-- device mask.
--
-- Note
--
-- In practice, most allocations on a multi-instance heap will be
-- allocated across all physical devices. Unicast allocation support is
-- an optional optimization for a minority of allocations.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- MemoryAllocateFlags, StructureType
data MemoryAllocateFlagsInfo
MemoryAllocateFlagsInfo :: MemoryAllocateFlags -> Word32 -> MemoryAllocateFlagsInfo
-- | flags is a bitmask of MemoryAllocateFlagBits
-- controlling the allocation.
[$sel:flags:MemoryAllocateFlagsInfo] :: MemoryAllocateFlagsInfo -> MemoryAllocateFlags
-- | deviceMask is a mask of physical devices in the logical
-- device, indicating that memory must be allocated on each device
-- in the mask, if MEMORY_ALLOCATE_DEVICE_MASK_BIT is set in
-- flags.
[$sel:deviceMask:MemoryAllocateFlagsInfo] :: MemoryAllocateFlagsInfo -> Word32
-- | VkDeviceGroupRenderPassBeginInfo - Set the initial device mask and
-- render areas for a render pass instance
--
-- Description
--
-- The deviceMask serves several purposes. It is an upper bound
-- on the set of physical devices that can be used during the
-- render pass instance, and the initial device mask when the render pass
-- instance begins. In addition, commands transitioning to the next
-- subpass in the render pass instance and commands ending the render
-- pass instance, and, accordingly render pass attachment load, store,
-- and resolve operations and subpass dependencies corresponding to the
-- render pass instance, are executed on the physical devices included in
-- the device mask provided here.
--
-- If deviceRenderAreaCount is not zero, then the elements of
-- pDeviceRenderAreas override the value of
-- RenderPassBeginInfo::renderArea, and provide a render
-- area specific to each physical device. These render areas serve the
-- same purpose as RenderPassBeginInfo::renderArea,
-- including controlling the region of attachments that are cleared by
-- ATTACHMENT_LOAD_OP_CLEAR and that are resolved into resolve
-- attachments.
--
-- If this structure is not present, the render pass instance’s device
-- mask is the value of
-- DeviceGroupCommandBufferBeginInfo::deviceMask. If this
-- structure is not present or if deviceRenderAreaCount is zero,
-- RenderPassBeginInfo::renderArea is used for all
-- physical devices.
--
-- Valid Usage
--
--
-- - deviceMask must be a valid device mask value
--
--
--
-- - deviceMask must not be zero
-- - deviceMask must be a subset of the command
-- buffer’s initial device mask
-- - deviceRenderAreaCount must either be zero or equal
-- to the number of physical devices in the logical device
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If deviceRenderAreaCount is not 0,
-- pDeviceRenderAreas must be a valid pointer to an array
-- of deviceRenderAreaCount Rect2D structures
--
--
-- See Also
--
-- Rect2D, StructureType
data DeviceGroupRenderPassBeginInfo
DeviceGroupRenderPassBeginInfo :: Word32 -> Vector Rect2D -> DeviceGroupRenderPassBeginInfo
-- | deviceMask is the device mask for the render pass instance.
[$sel:deviceMask:DeviceGroupRenderPassBeginInfo] :: DeviceGroupRenderPassBeginInfo -> Word32
-- | pDeviceRenderAreas is a pointer to an array of Rect2D
-- structures defining the render area for each physical device.
[$sel:deviceRenderAreas:DeviceGroupRenderPassBeginInfo] :: DeviceGroupRenderPassBeginInfo -> Vector Rect2D
-- | VkDeviceGroupCommandBufferBeginInfo - Set the initial device mask for
-- a command buffer
--
-- Description
--
-- The initial device mask also acts as an upper bound on the set of
-- devices that can ever be in the device mask in the command
-- buffer.
--
-- If this structure is not present, the initial value of a command
-- buffer’s device mask is set to include all physical devices in the
-- logical device when the command buffer begins recording.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data DeviceGroupCommandBufferBeginInfo
DeviceGroupCommandBufferBeginInfo :: Word32 -> DeviceGroupCommandBufferBeginInfo
-- | deviceMask is the initial value of the command buffer’s
-- device mask.
--
-- deviceMask must be a valid device mask value
--
-- deviceMask must not be zero
[$sel:deviceMask:DeviceGroupCommandBufferBeginInfo] :: DeviceGroupCommandBufferBeginInfo -> Word32
-- | VkDeviceGroupSubmitInfo - Structure indicating which physical devices
-- execute semaphore operations and command buffers
--
-- Description
--
-- If this structure is not present, semaphore operations and command
-- buffers execute on device index zero.
--
-- Valid Usage
--
--
-- - waitSemaphoreCount must equal
-- SubmitInfo::waitSemaphoreCount
--
--
--
-- - commandBufferCount must equal
-- SubmitInfo::commandBufferCount
-- - signalSemaphoreCount must equal
-- SubmitInfo::signalSemaphoreCount
-- - All elements of pWaitSemaphoreDeviceIndices and
-- pSignalSemaphoreDeviceIndices must be valid device
-- indices
-- - All elements of pCommandBufferDeviceMasks must be
-- valid device masks
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If waitSemaphoreCount is not 0,
-- pWaitSemaphoreDeviceIndices must be a valid pointer to
-- an array of waitSemaphoreCount uint32_t values
-- - If commandBufferCount is not 0,
-- pCommandBufferDeviceMasks must be a valid pointer to
-- an array of commandBufferCount uint32_t values
-- - If signalSemaphoreCount is not 0,
-- pSignalSemaphoreDeviceIndices must be a valid pointer
-- to an array of signalSemaphoreCount uint32_t
-- values
--
--
-- See Also
--
-- StructureType
data DeviceGroupSubmitInfo
DeviceGroupSubmitInfo :: Vector Word32 -> Vector Word32 -> Vector Word32 -> DeviceGroupSubmitInfo
-- | pWaitSemaphoreDeviceIndices is a pointer to an array of
-- waitSemaphoreCount device indices indicating which physical
-- device executes the semaphore wait operation in the corresponding
-- element of SubmitInfo::pWaitSemaphores.
[$sel:waitSemaphoreDeviceIndices:DeviceGroupSubmitInfo] :: DeviceGroupSubmitInfo -> Vector Word32
-- | pCommandBufferDeviceMasks is a pointer to an array of
-- commandBufferCount device masks indicating which physical
-- devices execute the command buffer in the corresponding element of
-- SubmitInfo::pCommandBuffers. A physical device
-- executes the command buffer if the corresponding bit is set in the
-- mask.
[$sel:commandBufferDeviceMasks:DeviceGroupSubmitInfo] :: DeviceGroupSubmitInfo -> Vector Word32
-- | pSignalSemaphoreDeviceIndices is a pointer to an array of
-- signalSemaphoreCount device indices indicating which physical
-- device executes the semaphore signal operation in the corresponding
-- element of SubmitInfo::pSignalSemaphores.
[$sel:signalSemaphoreDeviceIndices:DeviceGroupSubmitInfo] :: DeviceGroupSubmitInfo -> Vector Word32
-- | VkDeviceGroupBindSparseInfo - Structure indicating which instances are
-- bound
--
-- Description
--
-- These device indices apply to all buffer and image memory binds
-- included in the batch pointing to this structure. The semaphore waits
-- and signals for the batch are executed only by the physical device
-- specified by the resourceDeviceIndex.
--
-- If this structure is not present, resourceDeviceIndex and
-- memoryDeviceIndex are assumed to be zero.
--
-- Valid Usage
--
--
-- - resourceDeviceIndex and memoryDeviceIndex
-- must both be valid device indices
--
--
--
-- - Each memory allocation bound in this batch must have
-- allocated an instance for memoryDeviceIndex
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- StructureType
data DeviceGroupBindSparseInfo
DeviceGroupBindSparseInfo :: Word32 -> Word32 -> DeviceGroupBindSparseInfo
-- | resourceDeviceIndex is a device index indicating which
-- instance of the resource is bound.
[$sel:resourceDeviceIndex:DeviceGroupBindSparseInfo] :: DeviceGroupBindSparseInfo -> Word32
-- | memoryDeviceIndex is a device index indicating which instance
-- of the memory the resource instance is bound to.
[$sel:memoryDeviceIndex:DeviceGroupBindSparseInfo] :: DeviceGroupBindSparseInfo -> Word32
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkPipelineCreateFlagBits - Bitmask controlling how a pipeline is
-- created
--
-- Description
--
--
--
--
--
-- It is valid to set both PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT
-- and PIPELINE_CREATE_DERIVATIVE_BIT. This allows a pipeline to
-- be both a parent and possibly a child in a pipeline hierarchy. See
-- Pipeline Derivatives for more information.
--
-- See Also
--
-- PipelineCreateFlags
newtype PipelineCreateFlagBits
PipelineCreateFlagBits :: Flags -> PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DERIVATIVE_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_LIBRARY_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DEFER_COMPILE_BIT_NV :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISPATCH_BASE_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: PipelineCreateFlagBits
type PipelineCreateFlags = PipelineCreateFlagBits
-- | VkDependencyFlagBits - Bitmask specifying how execution and memory
-- dependencies are formed
--
-- See Also
--
-- DependencyFlags
newtype DependencyFlagBits
DependencyFlagBits :: Flags -> DependencyFlagBits
-- | DEPENDENCY_BY_REGION_BIT specifies that dependencies will be
-- framebuffer-local.
pattern DEPENDENCY_BY_REGION_BIT :: DependencyFlagBits
-- | DEPENDENCY_VIEW_LOCAL_BIT specifies that a subpass has more
-- than one view.
pattern DEPENDENCY_VIEW_LOCAL_BIT :: DependencyFlagBits
-- | DEPENDENCY_DEVICE_GROUP_BIT specifies that dependencies are
-- non-device-local dependency.
pattern DEPENDENCY_DEVICE_GROUP_BIT :: DependencyFlagBits
type DependencyFlags = DependencyFlagBits
-- | VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory
-- features
--
-- Description
--
-- Note
--
-- The peer memory features of a memory heap also apply to any accesses
-- that may be performed during image layout transitions.
--
-- PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for
-- all host local heaps and for at least one device local heap.
--
-- If a device does not support a peer memory feature, it is still valid
-- to use a resource that includes both local and peer memory bindings
-- with the corresponding access type as long as only the local bindings
-- are actually accessed. For example, an application doing split-frame
-- rendering would use framebuffer attachments that include both local
-- and peer memory bindings, but would scissor the rendering to only
-- update local memory.
--
-- See Also
--
-- PeerMemoryFeatureFlags
newtype PeerMemoryFeatureFlagBits
PeerMemoryFeatureFlagBits :: Flags -> PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory
-- can be accessed as the source of a cmdCopyBuffer,
-- cmdCopyImage, cmdCopyBufferToImage, or
-- cmdCopyImageToBuffer command.
pattern PEER_MEMORY_FEATURE_COPY_SRC_BIT :: PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory
-- can be accessed as the destination of a cmdCopyBuffer,
-- cmdCopyImage, cmdCopyBufferToImage, or
-- cmdCopyImageToBuffer command.
pattern PEER_MEMORY_FEATURE_COPY_DST_BIT :: PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory
-- can be read as any memory access type.
pattern PEER_MEMORY_FEATURE_GENERIC_SRC_BIT :: PeerMemoryFeatureFlagBits
-- | PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory
-- can be written as any memory access type. Shader atomics are
-- considered to be writes.
pattern PEER_MEMORY_FEATURE_GENERIC_DST_BIT :: PeerMemoryFeatureFlagBits
type PeerMemoryFeatureFlags = PeerMemoryFeatureFlagBits
-- | VkMemoryAllocateFlagBits - Bitmask specifying flags for a device
-- memory allocation
--
-- See Also
--
-- MemoryAllocateFlags
newtype MemoryAllocateFlagBits
MemoryAllocateFlagBits :: Flags -> MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_MASK_BIT specifies that memory will be
-- allocated for the devices in
-- MemoryAllocateFlagsInfo::deviceMask.
pattern MEMORY_ALLOCATE_DEVICE_MASK_BIT :: MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies
-- that the memory’s address can be saved and reused on a
-- subsequent run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: MemoryAllocateFlagBits
-- | MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT specifies that the memory
-- can be attached to a buffer object created with the
-- BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT bit set in
-- usage, and that the memory handle can be used to
-- retrieve an opaque address via
-- getDeviceMemoryOpaqueCaptureAddress.
pattern MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT :: MemoryAllocateFlagBits
type MemoryAllocateFlags = MemoryAllocateFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupSubmitInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupSubmitInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupBindSparseInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupSubmitInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupSubmitInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupSubmitInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupCommandBufferBeginInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group.DeviceGroupRenderPassBeginInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_device_group.MemoryAllocateFlagsInfo
module Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation
-- | VkMemoryDedicatedRequirements - Structure describing dedicated
-- allocation requirements of buffer and image resources
--
-- Description
--
-- When the implementation sets requiresDedicatedAllocation to
-- TRUE, it must also set
-- prefersDedicatedAllocation to TRUE.
--
-- If the MemoryDedicatedRequirements structure is included in the
-- pNext chain of the MemoryRequirements2 structure
-- passed as the pMemoryRequirements parameter of a
-- getBufferMemoryRequirements2 call,
-- requiresDedicatedAllocation may be TRUE under
-- one of the following conditions:
--
--
--
-- In all other cases, requiresDedicatedAllocation must
-- be set to FALSE by the implementation whenever a
-- MemoryDedicatedRequirements structure is included in the
-- pNext chain of the MemoryRequirements2 structure
-- passed to a call to getBufferMemoryRequirements2.
--
-- If the MemoryDedicatedRequirements structure is included in the
-- pNext chain of the MemoryRequirements2 structure
-- passed as the pMemoryRequirements parameter of a
-- getBufferMemoryRequirements2 call and
-- BUFFER_CREATE_SPARSE_BINDING_BIT was set in
-- BufferCreateInfo::flags when buffer was
-- created then the implementation must set both
-- prefersDedicatedAllocation and
-- requiresDedicatedAllocation to FALSE.
--
-- If the MemoryDedicatedRequirements structure is included in the
-- pNext chain of the MemoryRequirements2 structure
-- passed as the pMemoryRequirements parameter of a
-- getImageMemoryRequirements2 call,
-- requiresDedicatedAllocation may be TRUE under
-- one of the following conditions:
--
--
--
-- In all other cases, requiresDedicatedAllocation must
-- be set to FALSE by the implementation whenever a
-- MemoryDedicatedRequirements structure is included in the
-- pNext chain of the MemoryRequirements2 structure
-- passed to a call to getImageMemoryRequirements2.
--
-- If the MemoryDedicatedRequirements structure is included in the
-- pNext chain of the MemoryRequirements2 structure
-- passed as the pMemoryRequirements parameter of a
-- getImageMemoryRequirements2 call and
-- IMAGE_CREATE_SPARSE_BINDING_BIT was set in
-- ImageCreateInfo::flags when image was created
-- then the implementation must set both
-- prefersDedicatedAllocation and
-- requiresDedicatedAllocation to FALSE.
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data MemoryDedicatedRequirements
MemoryDedicatedRequirements :: Bool -> Bool -> MemoryDedicatedRequirements
-- | prefersDedicatedAllocation specifies that the implementation
-- would prefer a dedicated allocation for this resource. The application
-- is still free to suballocate the resource but it may get better
-- performance if a dedicated allocation is used.
[$sel:prefersDedicatedAllocation:MemoryDedicatedRequirements] :: MemoryDedicatedRequirements -> Bool
-- | requiresDedicatedAllocation specifies that a dedicated
-- allocation is required for this resource.
[$sel:requiresDedicatedAllocation:MemoryDedicatedRequirements] :: MemoryDedicatedRequirements -> Bool
-- | VkMemoryDedicatedAllocateInfo - Specify a dedicated memory allocation
-- resource
--
-- Valid Usage
--
--
-- - At least one of image and buffer must be
-- NULL_HANDLE
--
--
--
-- - If image is not NULL_HANDLE and the memory is not
-- an imported Android Hardware Buffer,
-- MemoryAllocateInfo::allocationSize must equal
-- the MemoryRequirements::size of the image
-- - If image is not NULL_HANDLE, image
-- must have been created without
-- IMAGE_CREATE_SPARSE_BINDING_BIT set in
-- ImageCreateInfo::flags
-- - If buffer is not NULL_HANDLE and the memory is not
-- an imported Android Hardware Buffer,
-- MemoryAllocateInfo::allocationSize must equal
-- the MemoryRequirements::size of the buffer
-- - If buffer is not NULL_HANDLE, buffer
-- must have been created without
-- BUFFER_CREATE_SPARSE_BINDING_BIT set in
-- BufferCreateInfo::flags
-- - If image is not NULL_HANDLE and
-- MemoryAllocateInfo defines a memory import operation with
-- handle type EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the
-- external handle was created by the Vulkan API, then the memory being
-- imported must also be a dedicated image allocation and
-- image must be identical to the image associated with the
-- imported memory
-- - If buffer is not NULL_HANDLE and
-- MemoryAllocateInfo defines a memory import operation with
-- handle type EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the
-- external handle was created by the Vulkan API, then the memory being
-- imported must also be a dedicated buffer allocation and
-- buffer must be identical to the buffer associated with
-- the imported memory
-- - If image is not NULL_HANDLE and
-- MemoryAllocateInfo defines a memory import operation with
-- handle type EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the
-- memory being imported must also be a dedicated image allocation
-- and image must be identical to the image associated
-- with the imported memory
-- - If buffer is not NULL_HANDLE and
-- MemoryAllocateInfo defines a memory import operation with
-- handle type EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the
-- memory being imported must also be a dedicated buffer
-- allocation and buffer must be identical to the buffer
-- associated with the imported memory
-- - If image is not NULL_HANDLE, image
-- must not have been created with
-- IMAGE_CREATE_DISJOINT_BIT set in
-- ImageCreateInfo::flags
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If image is not NULL_HANDLE, image
-- must be a valid Image handle
-- - If buffer is not NULL_HANDLE, buffer
-- must be a valid Buffer handle
-- - Both of buffer, and image that are valid handles
-- of non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- See Also
--
-- Buffer, Image, StructureType
data MemoryDedicatedAllocateInfo
MemoryDedicatedAllocateInfo :: Image -> Buffer -> MemoryDedicatedAllocateInfo
-- | image is NULL_HANDLE or a handle of an image which
-- this memory will be bound to.
[$sel:image:MemoryDedicatedAllocateInfo] :: MemoryDedicatedAllocateInfo -> Image
-- | buffer is NULL_HANDLE or a handle of a buffer which
-- this memory will be bound to.
[$sel:buffer:MemoryDedicatedAllocateInfo] :: MemoryDedicatedAllocateInfo -> Buffer
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedAllocateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_dedicated_allocation.MemoryDedicatedRequirements
module Vulkan.Extensions.VK_KHR_dedicated_allocation
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR :: StructureType
type MemoryDedicatedRequirementsKHR = MemoryDedicatedRequirements
type MemoryDedicatedAllocateInfoKHR = MemoryDedicatedAllocateInfo
type KHR_DEDICATED_ALLOCATION_SPEC_VERSION = 3
pattern KHR_DEDICATED_ALLOCATION_SPEC_VERSION :: forall a. Integral a => a
type KHR_DEDICATED_ALLOCATION_EXTENSION_NAME = "VK_KHR_dedicated_allocation"
pattern KHR_DEDICATED_ALLOCATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory
-- | vkGetDeviceQueue2 - Get a queue handle from a device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device, DeviceQueueInfo2, Queue
getDeviceQueue2 :: forall io. MonadIO io => Device -> DeviceQueueInfo2 -> io Queue
-- | VkProtectedSubmitInfo - Structure indicating whether the submission is
-- protected
--
-- Valid Usage
--
--
-- - If the protected memory feature is not enabled,
-- protectedSubmit must not be TRUE
--
--
--
-- - If protectedSubmit is TRUE, then each element of
-- the pCommandBuffers array must be a protected command
-- buffer
-- - If protectedSubmit is FALSE, then each element of
-- the pCommandBuffers array must be an unprotected
-- command buffer
-- - If the SubmitInfo::pNext chain does not include a
-- ProtectedSubmitInfo structure, then each element of the command
-- buffer of the pCommandBuffers array must be an
-- unprotected command buffer
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data ProtectedSubmitInfo
ProtectedSubmitInfo :: Bool -> ProtectedSubmitInfo
-- | protectedSubmit specifies whether the batch is protected. If
-- protectedSubmit is TRUE, the batch is protected. If
-- protectedSubmit is FALSE, the batch is unprotected. If
-- the SubmitInfo::pNext chain does not include this
-- structure, the batch is unprotected.
[$sel:protectedSubmit:ProtectedSubmitInfo] :: ProtectedSubmitInfo -> Bool
-- | VkPhysicalDeviceProtectedMemoryFeatures - Structure describing
-- protected memory features that can be supported by an implementation
--
-- Description
--
-- If the PhysicalDeviceProtectedMemoryFeatures structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with a value indicating
-- whether the feature is supported.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceProtectedMemoryFeatures
PhysicalDeviceProtectedMemoryFeatures :: Bool -> PhysicalDeviceProtectedMemoryFeatures
-- | protectedMemory specifies whether protected memory is
-- supported.
[$sel:protectedMemory:PhysicalDeviceProtectedMemoryFeatures] :: PhysicalDeviceProtectedMemoryFeatures -> Bool
-- | VkPhysicalDeviceProtectedMemoryProperties - Structure describing
-- protected memory properties that can be supported by an implementation
--
-- Description
--
-- If the PhysicalDeviceProtectedMemoryProperties structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with a value indicating
-- the implementation-dependent behavior.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceProtectedMemoryProperties
PhysicalDeviceProtectedMemoryProperties :: Bool -> PhysicalDeviceProtectedMemoryProperties
-- | protectedNoFault specifies the behavior of the implementation
-- when protected memory access rules are broken. If
-- protectedNoFault is TRUE, breaking those rules will
-- not result in process termination or device loss.
[$sel:protectedNoFault:PhysicalDeviceProtectedMemoryProperties] :: PhysicalDeviceProtectedMemoryProperties -> Bool
-- | VkDeviceQueueInfo2 - Structure specifying the parameters used for
-- device queue creation
--
-- Description
--
-- The queue returned by getDeviceQueue2 must have the same
-- flags value from this structure as that used at device
-- creation time in a DeviceQueueCreateInfo instance. If no
-- matching flags were specified at device creation time then
-- pQueue will return NULL_HANDLE.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceQueueCreateFlags, StructureType,
-- getDeviceQueue2
data DeviceQueueInfo2
DeviceQueueInfo2 :: DeviceQueueCreateFlags -> Word32 -> Word32 -> DeviceQueueInfo2
-- | flags is a DeviceQueueCreateFlags value indicating the
-- flags used to create the device queue.
--
-- flags must be a valid combination of
-- DeviceQueueCreateFlagBits values
[$sel:flags:DeviceQueueInfo2] :: DeviceQueueInfo2 -> DeviceQueueCreateFlags
-- | queueFamilyIndex is the index of the queue family to which
-- the queue belongs.
--
-- queueFamilyIndex must be one of the queue family
-- indices specified when device was created, via the
-- DeviceQueueCreateInfo structure
[$sel:queueFamilyIndex:DeviceQueueInfo2] :: DeviceQueueInfo2 -> Word32
-- | queueIndex is the index within this queue family of the queue
-- to retrieve.
--
-- queueIndex must be less than the number of queues
-- created for the specified queue family index and
-- DeviceQueueCreateFlags member flags equal to this
-- flags value when device was created, via the
-- queueCount member of the DeviceQueueCreateInfo
-- structure
[$sel:queueIndex:DeviceQueueInfo2] :: DeviceQueueInfo2 -> Word32
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkQueueFlagBits - Bitmask specifying capabilities of queues in a queue
-- family
--
-- Description
--
--
-- - QUEUE_GRAPHICS_BIT specifies that queues in this queue
-- family support graphics operations.
--
--
--
-- - QUEUE_COMPUTE_BIT specifies that queues in this queue
-- family support compute operations.
-- - QUEUE_TRANSFER_BIT specifies that queues in this queue
-- family support transfer operations.
-- - QUEUE_SPARSE_BINDING_BIT specifies that queues in this
-- queue family support sparse memory management operations (see
-- Sparse Resources). If any of the sparse resource features are
-- enabled, then at least one queue family must support this
-- bit.
-- - if QUEUE_PROTECTED_BIT is set, then the queues in this
-- queue family support the DEVICE_QUEUE_CREATE_PROTECTED_BIT bit.
-- (see Protected Memory). If the protected memory physical device
-- feature is supported, then at least one queue family of at least one
-- physical device exposed by the implementation must support this
-- bit.
--
--
-- If an implementation exposes any queue family that supports graphics
-- operations, at least one queue family of at least one physical device
-- exposed by the implementation must support both graphics and
-- compute operations.
--
-- Furthermore, if the protected memory physical device feature is
-- supported, then at least one queue family of at least one physical
-- device exposed by the implementation must support graphics
-- operations, compute operations, and protected memory operations.
--
-- Note
--
-- All commands that are allowed on a queue that supports transfer
-- operations are also allowed on a queue that supports either graphics
-- or compute operations. Thus, if the capabilities of a queue family
-- include QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT, then
-- reporting the QUEUE_TRANSFER_BIT capability separately for that
-- queue family is optional.
--
-- For further details see Queues.
--
-- See Also
--
-- QueueFlags
newtype QueueFlagBits
QueueFlagBits :: Flags -> QueueFlagBits
pattern QUEUE_GRAPHICS_BIT :: QueueFlagBits
pattern QUEUE_COMPUTE_BIT :: QueueFlagBits
pattern QUEUE_TRANSFER_BIT :: QueueFlagBits
pattern QUEUE_SPARSE_BINDING_BIT :: QueueFlagBits
pattern QUEUE_PROTECTED_BIT :: QueueFlagBits
type QueueFlags = QueueFlagBits
-- | VkDeviceQueueCreateFlagBits - Bitmask specifying behavior of the queue
--
-- See Also
--
-- DeviceQueueCreateFlags
newtype DeviceQueueCreateFlagBits
DeviceQueueCreateFlagBits :: Flags -> DeviceQueueCreateFlagBits
-- | DEVICE_QUEUE_CREATE_PROTECTED_BIT specifies that the device
-- queue is a protected-capable queue.
pattern DEVICE_QUEUE_CREATE_PROTECTED_BIT :: DeviceQueueCreateFlagBits
type DeviceQueueCreateFlags = DeviceQueueCreateFlagBits
-- | VkMemoryPropertyFlagBits - Bitmask specifying properties for a memory
-- type
--
-- Description
--
-- For any memory allocated with both the
-- MEMORY_PROPERTY_HOST_COHERENT_BIT and the
-- MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD, host or device
-- accesses also perform automatic memory domain transfer operations,
-- such that writes are always automatically available and visible to
-- both host and device memory domains.
--
-- Note
--
-- Device coherence is a useful property for certain debugging use cases
-- (e.g. crash analysis, where performing separate coherence actions
-- could mean values are not reported correctly). However, device
-- coherent accesses may be slower than equivalent accesses without
-- device coherence, particularly if they are also device uncached. For
-- device uncached memory in particular, repeated accesses to the same or
-- neighbouring memory locations over a short time period (e.g. within a
-- frame) may be slower than it would be for the equivalent cached memory
-- type. As such, it is generally inadvisable to use device coherent or
-- device uncached memory except when really needed.
--
-- See Also
--
-- MemoryPropertyFlags
newtype MemoryPropertyFlagBits
MemoryPropertyFlagBits :: Flags -> MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_LOCAL_BIT bit specifies that memory
-- allocated with this type is the most efficient for device access. This
-- property will be set if and only if the memory type belongs to a heap
-- with the MEMORY_HEAP_DEVICE_LOCAL_BIT set.
pattern MEMORY_PROPERTY_DEVICE_LOCAL_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_VISIBLE_BIT bit specifies that memory
-- allocated with this type can be mapped for host access using
-- mapMemory.
pattern MEMORY_PROPERTY_HOST_VISIBLE_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_COHERENT_BIT bit specifies that the host
-- cache management commands flushMappedMemoryRanges and
-- invalidateMappedMemoryRanges are not needed to flush host
-- writes to the device or make device writes visible to the host,
-- respectively.
pattern MEMORY_PROPERTY_HOST_COHERENT_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_CACHED_BIT bit specifies that memory
-- allocated with this type is cached on the host. Host memory accesses
-- to uncached memory are slower than to cached memory, however uncached
-- memory is always host coherent.
pattern MEMORY_PROPERTY_HOST_CACHED_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT bit specifies that the
-- memory type only allows device access to the memory. Memory types
-- must not have both MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT
-- and MEMORY_PROPERTY_HOST_VISIBLE_BIT set. Additionally, the
-- object’s backing memory may be provided by the implementation
-- lazily as specified in Lazily Allocated Memory.
pattern MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD bit specifies that
-- memory allocated with this type is not cached on the device. Uncached
-- device memory is always device coherent.
pattern MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD bit specifies that
-- device accesses to allocations of this memory type are automatically
-- made available and visible.
pattern MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_PROTECTED_BIT bit specifies that the memory
-- type only allows device access to the memory, and allows protected
-- queue operations to access the memory. Memory types must not
-- have MEMORY_PROPERTY_PROTECTED_BIT set and any of
-- MEMORY_PROPERTY_HOST_VISIBLE_BIT set, or
-- MEMORY_PROPERTY_HOST_COHERENT_BIT set, or
-- MEMORY_PROPERTY_HOST_CACHED_BIT set.
pattern MEMORY_PROPERTY_PROTECTED_BIT :: MemoryPropertyFlagBits
type MemoryPropertyFlags = MemoryPropertyFlagBits
-- | VkBufferCreateFlagBits - Bitmask specifying additional parameters of a
-- buffer
--
-- Description
--
-- See Sparse Resource Features and Physical Device
-- Features for details of the sparse memory features supported on a
-- device.
--
-- See Also
--
-- BufferCreateFlags
newtype BufferCreateFlagBits
BufferCreateFlagBits :: Flags -> BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_BINDING_BIT specifies that the buffer will
-- be backed using sparse memory binding.
pattern BUFFER_CREATE_SPARSE_BINDING_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_RESIDENCY_BIT specifies that the buffer
-- can be partially backed using sparse memory binding. Buffers
-- created with this flag must also be created with the
-- BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_ALIASED_BIT specifies that the buffer will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another buffer (or another portion of
-- the same buffer). Buffers created with this flag must also be
-- created with the BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_ALIASED_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies that
-- the buffer’s address can be saved and reused on a subsequent
-- run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_PROTECTED_BIT specifies that the buffer is a
-- protected buffer.
pattern BUFFER_CREATE_PROTECTED_BIT :: BufferCreateFlagBits
type BufferCreateFlags = BufferCreateFlagBits
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
-- | VkCommandPoolCreateFlagBits - Bitmask specifying usage behavior for a
-- command pool
--
-- See Also
--
-- CommandPoolCreateFlags
newtype CommandPoolCreateFlagBits
CommandPoolCreateFlagBits :: Flags -> CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_TRANSIENT_BIT specifies that command
-- buffers allocated from the pool will be short-lived, meaning that they
-- will be reset or freed in a relatively short timeframe. This flag
-- may be used by the implementation to control memory allocation
-- behavior within the pool.
pattern COMMAND_POOL_CREATE_TRANSIENT_BIT :: CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT allows any command
-- buffer allocated from a pool to be individually reset to the
-- initial state; either by calling resetCommandBuffer, or
-- via the implicit reset when calling beginCommandBuffer. If this
-- flag is not set on a pool, then resetCommandBuffer must
-- not be called for any command buffer allocated from that pool.
pattern COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT :: CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_PROTECTED_BIT specifies that command
-- buffers allocated from the pool are protected command buffers.
pattern COMMAND_POOL_CREATE_PROTECTED_BIT :: CommandPoolCreateFlagBits
type CommandPoolCreateFlags = CommandPoolCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance GHC.Classes.Eq Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance GHC.Classes.Eq Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance GHC.Classes.Eq Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
instance GHC.Generics.Generic Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
instance GHC.Show.Show Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
instance GHC.Generics.Generic Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance GHC.Show.Show Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance GHC.Generics.Generic Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance GHC.Show.Show Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance GHC.Generics.Generic Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance GHC.Show.Show Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance Foreign.Storable.Storable Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance Vulkan.Zero.Zero Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.DeviceQueueInfo2
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance Foreign.Storable.Storable Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance Foreign.Storable.Storable Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance Vulkan.Zero.Zero Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.PhysicalDeviceProtectedMemoryFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
instance Foreign.Storable.Storable Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Originally_Based_On_VK_KHR_protected_memory.ProtectedSubmitInfo
module Vulkan.Core11.Handles
-- | VkDescriptorUpdateTemplate - Opaque handle to a descriptor update
-- template
--
-- See Also
--
-- cmdPushDescriptorSetWithTemplateKHR,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR,
-- updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorUpdateTemplate
DescriptorUpdateTemplate :: Word64 -> DescriptorUpdateTemplate
-- | VkSamplerYcbcrConversion - Opaque handle to a device-specific sampler
-- Y′CBCR conversion description
--
-- See Also
--
-- SamplerYcbcrConversionInfo,
-- createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR
newtype SamplerYcbcrConversion
SamplerYcbcrConversion :: Word64 -> SamplerYcbcrConversion
-- | VkInstance - Opaque handle to an instance object
--
-- See Also
--
-- createAndroidSurfaceKHR, createDebugReportCallbackEXT,
-- createDebugUtilsMessengerEXT,
-- createDisplayPlaneSurfaceKHR, createHeadlessSurfaceEXT,
-- createIOSSurfaceMVK, createImagePipeSurfaceFUCHSIA,
-- createInstance, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, debugReportMessageEXT,
-- destroyDebugReportCallbackEXT,
-- destroyDebugUtilsMessengerEXT, destroyInstance,
-- destroySurfaceKHR, enumeratePhysicalDeviceGroups,
-- enumeratePhysicalDeviceGroupsKHR,
-- enumeratePhysicalDevices, getInstanceProcAddr,
-- submitDebugUtilsMessageEXT
data Instance
Instance :: Ptr Instance_T -> InstanceCmds -> Instance
[$sel:instanceHandle:Instance] :: Instance -> Ptr Instance_T
[$sel:instanceCmds:Instance] :: Instance -> InstanceCmds
-- | VkPhysicalDevice - Opaque handle to a physical device object
--
-- See Also
--
-- DeviceGroupDeviceCreateInfo,
-- PhysicalDeviceGroupProperties, acquireXlibDisplayEXT,
-- createDevice, createDisplayModeKHR,
-- enumerateDeviceExtensionProperties,
-- enumerateDeviceLayerProperties,
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR,
-- enumeratePhysicalDevices, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneCapabilities2KHR,
-- getDisplayPlaneCapabilitiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getPhysicalDeviceCalibrateableTimeDomainsEXT,
-- getPhysicalDeviceCooperativeMatrixPropertiesNV,
-- getPhysicalDeviceDisplayPlaneProperties2KHR,
-- getPhysicalDeviceDisplayPlanePropertiesKHR,
-- getPhysicalDeviceDisplayProperties2KHR,
-- getPhysicalDeviceDisplayPropertiesKHR,
-- getPhysicalDeviceExternalBufferProperties,
-- getPhysicalDeviceExternalBufferPropertiesKHR,
-- getPhysicalDeviceExternalFenceProperties,
-- getPhysicalDeviceExternalFencePropertiesKHR,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceExternalSemaphoreProperties,
-- getPhysicalDeviceExternalSemaphorePropertiesKHR,
-- getPhysicalDeviceFeatures, getPhysicalDeviceFeatures2,
-- getPhysicalDeviceFeatures2KHR,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceImageFormatProperties2,
-- getPhysicalDeviceImageFormatProperties2KHR,
-- getPhysicalDeviceMemoryProperties,
-- getPhysicalDeviceMemoryProperties2,
-- getPhysicalDeviceMemoryProperties2KHR,
-- getPhysicalDeviceMultisamplePropertiesEXT,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceProperties,
-- getPhysicalDeviceProperties2,
-- getPhysicalDeviceProperties2KHR,
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR,
-- getPhysicalDeviceQueueFamilyProperties,
-- getPhysicalDeviceQueueFamilyProperties2,
-- getPhysicalDeviceQueueFamilyProperties2KHR,
-- getPhysicalDeviceSparseImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties2,
-- getPhysicalDeviceSparseImageFormatProperties2KHR,
-- getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilities2KHR,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormats2KHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR,
-- getPhysicalDeviceToolPropertiesEXT,
-- getPhysicalDeviceWaylandPresentationSupportKHR,
-- getPhysicalDeviceWin32PresentationSupportKHR,
-- getPhysicalDeviceXcbPresentationSupportKHR,
-- getPhysicalDeviceXlibPresentationSupportKHR,
-- getRandROutputDisplayEXT, releaseDisplayEXT
data PhysicalDevice
PhysicalDevice :: Ptr PhysicalDevice_T -> InstanceCmds -> PhysicalDevice
[$sel:physicalDeviceHandle:PhysicalDevice] :: PhysicalDevice -> Ptr PhysicalDevice_T
[$sel:instanceCmds:PhysicalDevice] :: PhysicalDevice -> InstanceCmds
-- | VkDevice - Opaque handle to a device object
--
-- See Also
--
-- acquireFullScreenExclusiveModeEXT, acquireNextImage2KHR,
-- acquireNextImageKHR,
-- acquirePerformanceConfigurationINTEL,
-- acquireProfilingLockKHR, allocateCommandBuffers,
-- allocateDescriptorSets, allocateMemory,
-- bindAccelerationStructureMemoryKHR,
-- bindAccelerationStructureMemoryNV, bindBufferMemory,
-- bindBufferMemory2, bindBufferMemory2KHR,
-- bindImageMemory, bindImageMemory2,
-- bindImageMemory2KHR, buildAccelerationStructureKHR,
-- compileDeferredNV, copyAccelerationStructureKHR,
-- copyAccelerationStructureToMemoryKHR,
-- copyMemoryToAccelerationStructureKHR,
-- createAccelerationStructureKHR,
-- createAccelerationStructureNV, createBuffer,
-- createBufferView, createCommandPool,
-- createComputePipelines, createDeferredOperationKHR,
-- createDescriptorPool, createDescriptorSetLayout,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR, createDevice,
-- createEvent, createFence, createFramebuffer,
-- createGraphicsPipelines, createImage,
-- createImageView, createIndirectCommandsLayoutNV,
-- createPipelineCache, createPipelineLayout,
-- createPrivateDataSlotEXT, createQueryPool,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, createRenderPass,
-- createRenderPass2, createRenderPass2KHR,
-- createSampler, createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR, createSemaphore,
-- createShaderModule, createSharedSwapchainsKHR,
-- createSwapchainKHR, createValidationCacheEXT,
-- debugMarkerSetObjectNameEXT, debugMarkerSetObjectTagEXT,
-- deferredOperationJoinKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV, destroyBuffer,
-- destroyBufferView, destroyCommandPool,
-- destroyDeferredOperationKHR, destroyDescriptorPool,
-- destroyDescriptorSetLayout,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR, destroyDevice,
-- destroyEvent, destroyFence, destroyFramebuffer,
-- destroyImage, destroyImageView,
-- destroyIndirectCommandsLayoutNV, destroyPipeline,
-- destroyPipelineCache, destroyPipelineLayout,
-- destroyPrivateDataSlotEXT, destroyQueryPool,
-- destroyRenderPass, destroySampler,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR, destroySemaphore,
-- destroyShaderModule, destroySwapchainKHR,
-- destroyValidationCacheEXT, deviceWaitIdle,
-- displayPowerControlEXT, flushMappedMemoryRanges,
-- freeCommandBuffers, freeDescriptorSets,
-- freeMemory, getAccelerationStructureDeviceAddressKHR,
-- getAccelerationStructureHandleNV,
-- getAccelerationStructureMemoryRequirementsKHR,
-- getAccelerationStructureMemoryRequirementsNV,
-- getAndroidHardwareBufferPropertiesANDROID,
-- getBufferDeviceAddress, getBufferDeviceAddressEXT,
-- getBufferDeviceAddressKHR, getBufferMemoryRequirements,
-- getBufferMemoryRequirements2,
-- getBufferMemoryRequirements2KHR,
-- getBufferOpaqueCaptureAddress,
-- getBufferOpaqueCaptureAddressKHR,
-- getCalibratedTimestampsEXT,
-- getDeferredOperationMaxConcurrencyKHR,
-- getDeferredOperationResultKHR,
-- getDescriptorSetLayoutSupport,
-- getDescriptorSetLayoutSupportKHR,
-- getDeviceAccelerationStructureCompatibilityKHR,
-- getDeviceGroupPeerMemoryFeatures,
-- getDeviceGroupPeerMemoryFeaturesKHR,
-- getDeviceGroupPresentCapabilitiesKHR,
-- getDeviceGroupSurfacePresentModes2EXT,
-- getDeviceGroupSurfacePresentModesKHR,
-- getDeviceMemoryCommitment,
-- getDeviceMemoryOpaqueCaptureAddress,
-- getDeviceMemoryOpaqueCaptureAddressKHR,
-- getDeviceProcAddr, getDeviceQueue,
-- getDeviceQueue2, getEventStatus, getFenceFdKHR,
-- getFenceStatus, getFenceWin32HandleKHR,
-- getGeneratedCommandsMemoryRequirementsNV,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements, getImageMemoryRequirements2,
-- getImageMemoryRequirements2KHR,
-- getImageSparseMemoryRequirements,
-- getImageSparseMemoryRequirements2,
-- getImageSparseMemoryRequirements2KHR,
-- getImageSubresourceLayout, getImageViewAddressNVX,
-- getImageViewHandleNVX,
-- getMemoryAndroidHardwareBufferANDROID, getMemoryFdKHR,
-- getMemoryFdPropertiesKHR,
-- getMemoryHostPointerPropertiesEXT,
-- getMemoryWin32HandleKHR, getMemoryWin32HandleNV,
-- getMemoryWin32HandlePropertiesKHR,
-- getPastPresentationTimingGOOGLE,
-- getPerformanceParameterINTEL, getPipelineCacheData,
-- getPipelineExecutableInternalRepresentationsKHR,
-- getPipelineExecutablePropertiesKHR,
-- getPipelineExecutableStatisticsKHR, getPrivateDataEXT,
-- getQueryPoolResults,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV,
-- getRefreshCycleDurationGOOGLE, getRenderAreaGranularity,
-- getSemaphoreCounterValue, getSemaphoreCounterValueKHR,
-- getSemaphoreFdKHR, getSemaphoreWin32HandleKHR,
-- getShaderInfoAMD, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- getValidationCacheDataEXT, importFenceFdKHR,
-- importFenceWin32HandleKHR, importSemaphoreFdKHR,
-- importSemaphoreWin32HandleKHR,
-- initializePerformanceApiINTEL,
-- invalidateMappedMemoryRanges, mapMemory,
-- mergePipelineCaches, mergeValidationCachesEXT,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- releaseFullScreenExclusiveModeEXT,
-- releasePerformanceConfigurationINTEL,
-- releaseProfilingLockKHR, resetCommandPool,
-- resetDescriptorPool, resetEvent, resetFences,
-- resetQueryPool, resetQueryPoolEXT,
-- setDebugUtilsObjectNameEXT, setDebugUtilsObjectTagEXT,
-- setEvent, setHdrMetadataEXT, setLocalDimmingAMD,
-- setPrivateDataEXT, signalSemaphore,
-- signalSemaphoreKHR, trimCommandPool,
-- trimCommandPoolKHR, uninitializePerformanceApiINTEL,
-- unmapMemory, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR,
-- updateDescriptorSets, waitForFences,
-- waitSemaphores, waitSemaphoresKHR,
-- writeAccelerationStructuresPropertiesKHR
data Device
Device :: Ptr Device_T -> DeviceCmds -> Device
[$sel:deviceHandle:Device] :: Device -> Ptr Device_T
[$sel:deviceCmds:Device] :: Device -> DeviceCmds
-- | VkQueue - Opaque handle to a queue object
--
-- See Also
--
-- getDeviceQueue, getDeviceQueue2,
-- getQueueCheckpointDataNV, queueBeginDebugUtilsLabelEXT,
-- queueBindSparse, queueEndDebugUtilsLabelEXT,
-- queueInsertDebugUtilsLabelEXT, queuePresentKHR,
-- queueSetPerformanceConfigurationINTEL, queueSubmit,
-- queueWaitIdle
data Queue
Queue :: Ptr Queue_T -> DeviceCmds -> Queue
[$sel:queueHandle:Queue] :: Queue -> Ptr Queue_T
[$sel:deviceCmds:Queue] :: Queue -> DeviceCmds
-- | VkCommandBuffer - Opaque handle to a command buffer object
--
-- See Also
--
-- SubmitInfo, allocateCommandBuffers,
-- beginCommandBuffer, cmdBeginConditionalRenderingEXT,
-- cmdBeginDebugUtilsLabelEXT, cmdBeginQuery,
-- cmdBeginQueryIndexedEXT, cmdBeginRenderPass,
-- cmdBeginRenderPass2, cmdBeginRenderPass2KHR,
-- cmdBeginTransformFeedbackEXT, cmdBindDescriptorSets,
-- cmdBindIndexBuffer, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, cmdBindShadingRateImageNV,
-- cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers, cmdBlitImage,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV, cmdClearAttachments,
-- cmdClearColorImage, cmdClearDepthStencilImage,
-- cmdCopyAccelerationStructureKHR,
-- cmdCopyAccelerationStructureNV,
-- cmdCopyAccelerationStructureToMemoryKHR, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImage,
-- cmdCopyImageToBuffer,
-- cmdCopyMemoryToAccelerationStructureKHR,
-- cmdCopyQueryPoolResults, cmdDebugMarkerBeginEXT,
-- cmdDebugMarkerEndEXT, cmdDebugMarkerInsertEXT,
-- cmdDispatch, cmdDispatchBase, cmdDispatchBaseKHR,
-- cmdDispatchIndirect, cmdDraw, cmdDrawIndexed,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdDrawMeshTasksNV,
-- cmdEndConditionalRenderingEXT, cmdEndDebugUtilsLabelEXT,
-- cmdEndQuery, cmdEndQueryIndexedEXT,
-- cmdEndRenderPass, cmdEndRenderPass2,
-- cmdEndRenderPass2KHR, cmdEndTransformFeedbackEXT,
-- cmdExecuteCommands, cmdExecuteGeneratedCommandsNV,
-- cmdFillBuffer, cmdInsertDebugUtilsLabelEXT,
-- cmdNextSubpass, cmdNextSubpass2,
-- cmdNextSubpass2KHR, cmdPipelineBarrier,
-- cmdPreprocessGeneratedCommandsNV, cmdPushConstants,
-- cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR, cmdResetEvent,
-- cmdResetQueryPool, cmdResolveImage,
-- cmdSetBlendConstants, cmdSetCheckpointNV,
-- cmdSetCoarseSampleOrderNV, cmdSetDepthBias,
-- cmdSetDepthBounds, cmdSetDeviceMask,
-- cmdSetDeviceMaskKHR, cmdSetDiscardRectangleEXT,
-- cmdSetEvent, cmdSetExclusiveScissorNV,
-- cmdSetLineStippleEXT, cmdSetLineWidth,
-- cmdSetPerformanceMarkerINTEL,
-- cmdSetPerformanceOverrideINTEL,
-- cmdSetPerformanceStreamMarkerINTEL,
-- cmdSetSampleLocationsEXT, cmdSetScissor,
-- cmdSetStencilCompareMask, cmdSetStencilReference,
-- cmdSetStencilWriteMask, cmdSetViewport,
-- cmdSetViewportShadingRatePaletteNV,
-- cmdSetViewportWScalingNV, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysKHR, cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWaitEvents,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteBufferMarkerAMD, cmdWriteTimestamp,
-- endCommandBuffer, freeCommandBuffers,
-- resetCommandBuffer
data CommandBuffer
CommandBuffer :: Ptr CommandBuffer_T -> DeviceCmds -> CommandBuffer
[$sel:commandBufferHandle:CommandBuffer] :: CommandBuffer -> Ptr CommandBuffer_T
[$sel:deviceCmds:CommandBuffer] :: CommandBuffer -> DeviceCmds
-- | VkDeviceMemory - Opaque handle to a device memory object
--
-- See Also
--
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryInfo, BindImageMemoryInfo,
-- DeviceMemoryOpaqueCaptureAddressInfo, MappedMemoryRange,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- SparseImageMemoryBind, SparseMemoryBind,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV, allocateMemory,
-- bindBufferMemory, bindImageMemory, freeMemory,
-- getDeviceMemoryCommitment, getMemoryWin32HandleNV,
-- mapMemory, unmapMemory
newtype DeviceMemory
DeviceMemory :: Word64 -> DeviceMemory
-- | VkCommandPool - Opaque handle to a command pool object
--
-- See Also
--
-- CommandBufferAllocateInfo, createCommandPool,
-- destroyCommandPool, freeCommandBuffers,
-- resetCommandPool, trimCommandPool,
-- trimCommandPoolKHR
newtype CommandPool
CommandPool :: Word64 -> CommandPool
-- | VkBuffer - Opaque handle to a buffer object
--
-- See Also
--
-- BindBufferMemoryInfo, BufferDeviceAddressInfo,
-- BufferMemoryBarrier, BufferMemoryRequirementsInfo2,
-- BufferViewCreateInfo, ConditionalRenderingBeginInfoEXT,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DescriptorBufferInfo, GeneratedCommandsInfoNV,
-- GeometryAABBNV, GeometryTrianglesNV,
-- IndirectCommandsStreamNV, MemoryDedicatedAllocateInfo,
-- SparseBufferMemoryBindInfo, StridedBufferRegionKHR,
-- bindBufferMemory, cmdBeginTransformFeedbackEXT,
-- cmdBindIndexBuffer, cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureNV, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImageToBuffer,
-- cmdCopyQueryPoolResults, cmdDispatchIndirect,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdEndTransformFeedbackEXT,
-- cmdFillBuffer, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWriteBufferMarkerAMD, createBuffer,
-- destroyBuffer, getBufferMemoryRequirements
newtype Buffer
Buffer :: Word64 -> Buffer
-- | VkImage - Opaque handle to an image object
--
-- See Also
--
-- BindImageMemoryInfo,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImageSparseMemoryRequirementsInfo2, ImageViewCreateInfo,
-- MemoryDedicatedAllocateInfo, SparseImageMemoryBindInfo,
-- SparseImageOpaqueMemoryBindInfo, bindImageMemory,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage, createImage, destroyImage,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements,
-- getImageSparseMemoryRequirements,
-- getImageSubresourceLayout, getSwapchainImagesKHR
newtype Image
Image :: Word64 -> Image
-- | VkPipelineLayout - Opaque handle to a pipeline layout object
--
-- See Also
--
-- ComputePipelineCreateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- GraphicsPipelineCreateInfo,
-- IndirectCommandsLayoutTokenNV,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindDescriptorSets,
-- cmdPushConstants, cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR,
-- createPipelineLayout, destroyPipelineLayout
newtype PipelineLayout
PipelineLayout :: Word64 -> PipelineLayout
-- | VkSampler - Opaque handle to a sampler object
--
-- See Also
--
-- DescriptorImageInfo, DescriptorSetLayoutBinding,
-- ImageViewHandleInfoNVX, createSampler,
-- destroySampler
newtype Sampler
Sampler :: Word64 -> Sampler
-- | VkDescriptorSet - Opaque handle to a descriptor set object
--
-- See Also
--
-- CopyDescriptorSet, WriteDescriptorSet,
-- allocateDescriptorSets, cmdBindDescriptorSets,
-- freeDescriptorSets, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorSet
DescriptorSet :: Word64 -> DescriptorSet
-- | VkDescriptorSetLayout - Opaque handle to a descriptor set layout
-- object
--
-- See Also
--
-- DescriptorSetAllocateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- PipelineLayoutCreateInfo, createDescriptorSetLayout,
-- destroyDescriptorSetLayout
newtype DescriptorSetLayout
DescriptorSetLayout :: Word64 -> DescriptorSetLayout
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core11.Handles.SamplerYcbcrConversion
instance Vulkan.Zero.Zero Vulkan.Core11.Handles.SamplerYcbcrConversion
instance Foreign.Storable.Storable Vulkan.Core11.Handles.SamplerYcbcrConversion
instance GHC.Classes.Ord Vulkan.Core11.Handles.SamplerYcbcrConversion
instance GHC.Classes.Eq Vulkan.Core11.Handles.SamplerYcbcrConversion
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Core11.Handles.DescriptorUpdateTemplate
instance Vulkan.Zero.Zero Vulkan.Core11.Handles.DescriptorUpdateTemplate
instance Foreign.Storable.Storable Vulkan.Core11.Handles.DescriptorUpdateTemplate
instance GHC.Classes.Ord Vulkan.Core11.Handles.DescriptorUpdateTemplate
instance GHC.Classes.Eq Vulkan.Core11.Handles.DescriptorUpdateTemplate
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core11.Handles.SamplerYcbcrConversion
instance GHC.Show.Show Vulkan.Core11.Handles.SamplerYcbcrConversion
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Core11.Handles.DescriptorUpdateTemplate
instance GHC.Show.Show Vulkan.Core11.Handles.DescriptorUpdateTemplate
module Vulkan.Extensions.Handles
-- | VkIndirectCommandsLayoutNV - Opaque handle to an indirect commands
-- layout object
--
-- See Also
--
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- createIndirectCommandsLayoutNV,
-- destroyIndirectCommandsLayoutNV
newtype IndirectCommandsLayoutNV
IndirectCommandsLayoutNV :: Word64 -> IndirectCommandsLayoutNV
-- | VkValidationCacheEXT - Opaque handle to a validation cache object
--
-- See Also
--
-- ShaderModuleValidationCacheCreateInfoEXT,
-- createValidationCacheEXT, destroyValidationCacheEXT,
-- getValidationCacheDataEXT, mergeValidationCachesEXT
newtype ValidationCacheEXT
ValidationCacheEXT :: Word64 -> ValidationCacheEXT
-- | VkAccelerationStructureKHR - Opaque handle to an acceleration
-- structure object
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- BindAccelerationStructureMemoryInfoKHR,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- WriteDescriptorSetAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV,
-- cmdCopyAccelerationStructureNV,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- createAccelerationStructureKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV,
-- getAccelerationStructureHandleNV,
-- writeAccelerationStructuresPropertiesKHR
newtype AccelerationStructureKHR
AccelerationStructureKHR :: Word64 -> AccelerationStructureKHR
-- | VkPerformanceConfigurationINTEL - Device configuration for performance
-- queries
--
-- See Also
--
-- acquirePerformanceConfigurationINTEL,
-- queueSetPerformanceConfigurationINTEL,
-- releasePerformanceConfigurationINTEL
newtype PerformanceConfigurationINTEL
PerformanceConfigurationINTEL :: Word64 -> PerformanceConfigurationINTEL
-- | VkDeferredOperationKHR - A deferred operation
--
-- Description
--
-- This handle refers to a tracking structure which manages the execution
-- state for a deferred command.
--
-- See Also
--
-- DeferredOperationInfoKHR, createDeferredOperationKHR,
-- deferredOperationJoinKHR, destroyDeferredOperationKHR,
-- getDeferredOperationMaxConcurrencyKHR,
-- getDeferredOperationResultKHR
newtype DeferredOperationKHR
DeferredOperationKHR :: Word64 -> DeferredOperationKHR
-- | VkPrivateDataSlotEXT - Opaque handle to a private data slot object
--
-- See Also
--
-- createPrivateDataSlotEXT, destroyPrivateDataSlotEXT,
-- getPrivateDataEXT, setPrivateDataEXT
newtype PrivateDataSlotEXT
PrivateDataSlotEXT :: Word64 -> PrivateDataSlotEXT
-- | VkDisplayKHR - Opaque handle to a display object
--
-- See Also
--
-- DisplayPlanePropertiesKHR, DisplayPropertiesKHR,
-- acquireXlibDisplayEXT, createDisplayModeKHR,
-- displayPowerControlEXT, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getRandROutputDisplayEXT, registerDisplayEventEXT,
-- releaseDisplayEXT
newtype DisplayKHR
DisplayKHR :: Word64 -> DisplayKHR
-- | VkDisplayModeKHR - Opaque handle to a display mode object
--
-- See Also
--
-- DisplayModePropertiesKHR, DisplayPlaneInfo2KHR,
-- DisplaySurfaceCreateInfoKHR, createDisplayModeKHR,
-- getDisplayPlaneCapabilitiesKHR
newtype DisplayModeKHR
DisplayModeKHR :: Word64 -> DisplayModeKHR
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkDebugReportCallbackEXT - Opaque handle to a debug report callback
-- object
--
-- See Also
--
-- createDebugReportCallbackEXT,
-- destroyDebugReportCallbackEXT
newtype DebugReportCallbackEXT
DebugReportCallbackEXT :: Word64 -> DebugReportCallbackEXT
-- | VkDebugUtilsMessengerEXT - Opaque handle to a debug messenger object
--
-- Description
--
-- The debug messenger will provide detailed feedback on the
-- application’s use of Vulkan when events of interest occur. When an
-- event of interest does occur, the debug messenger will submit a debug
-- message to the debug callback that was provided during its creation.
-- Additionally, the debug messenger is responsible with filtering out
-- debug messages that the callback is not interested in and will only
-- provide desired debug messages.
--
-- See Also
--
-- createDebugUtilsMessengerEXT,
-- destroyDebugUtilsMessengerEXT
newtype DebugUtilsMessengerEXT
DebugUtilsMessengerEXT :: Word64 -> DebugUtilsMessengerEXT
-- | VkInstance - Opaque handle to an instance object
--
-- See Also
--
-- createAndroidSurfaceKHR, createDebugReportCallbackEXT,
-- createDebugUtilsMessengerEXT,
-- createDisplayPlaneSurfaceKHR, createHeadlessSurfaceEXT,
-- createIOSSurfaceMVK, createImagePipeSurfaceFUCHSIA,
-- createInstance, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, debugReportMessageEXT,
-- destroyDebugReportCallbackEXT,
-- destroyDebugUtilsMessengerEXT, destroyInstance,
-- destroySurfaceKHR, enumeratePhysicalDeviceGroups,
-- enumeratePhysicalDeviceGroupsKHR,
-- enumeratePhysicalDevices, getInstanceProcAddr,
-- submitDebugUtilsMessageEXT
data Instance
Instance :: Ptr Instance_T -> InstanceCmds -> Instance
[$sel:instanceHandle:Instance] :: Instance -> Ptr Instance_T
[$sel:instanceCmds:Instance] :: Instance -> InstanceCmds
-- | VkPhysicalDevice - Opaque handle to a physical device object
--
-- See Also
--
-- DeviceGroupDeviceCreateInfo,
-- PhysicalDeviceGroupProperties, acquireXlibDisplayEXT,
-- createDevice, createDisplayModeKHR,
-- enumerateDeviceExtensionProperties,
-- enumerateDeviceLayerProperties,
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR,
-- enumeratePhysicalDevices, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneCapabilities2KHR,
-- getDisplayPlaneCapabilitiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getPhysicalDeviceCalibrateableTimeDomainsEXT,
-- getPhysicalDeviceCooperativeMatrixPropertiesNV,
-- getPhysicalDeviceDisplayPlaneProperties2KHR,
-- getPhysicalDeviceDisplayPlanePropertiesKHR,
-- getPhysicalDeviceDisplayProperties2KHR,
-- getPhysicalDeviceDisplayPropertiesKHR,
-- getPhysicalDeviceExternalBufferProperties,
-- getPhysicalDeviceExternalBufferPropertiesKHR,
-- getPhysicalDeviceExternalFenceProperties,
-- getPhysicalDeviceExternalFencePropertiesKHR,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceExternalSemaphoreProperties,
-- getPhysicalDeviceExternalSemaphorePropertiesKHR,
-- getPhysicalDeviceFeatures, getPhysicalDeviceFeatures2,
-- getPhysicalDeviceFeatures2KHR,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceImageFormatProperties2,
-- getPhysicalDeviceImageFormatProperties2KHR,
-- getPhysicalDeviceMemoryProperties,
-- getPhysicalDeviceMemoryProperties2,
-- getPhysicalDeviceMemoryProperties2KHR,
-- getPhysicalDeviceMultisamplePropertiesEXT,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceProperties,
-- getPhysicalDeviceProperties2,
-- getPhysicalDeviceProperties2KHR,
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR,
-- getPhysicalDeviceQueueFamilyProperties,
-- getPhysicalDeviceQueueFamilyProperties2,
-- getPhysicalDeviceQueueFamilyProperties2KHR,
-- getPhysicalDeviceSparseImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties2,
-- getPhysicalDeviceSparseImageFormatProperties2KHR,
-- getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilities2KHR,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormats2KHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR,
-- getPhysicalDeviceToolPropertiesEXT,
-- getPhysicalDeviceWaylandPresentationSupportKHR,
-- getPhysicalDeviceWin32PresentationSupportKHR,
-- getPhysicalDeviceXcbPresentationSupportKHR,
-- getPhysicalDeviceXlibPresentationSupportKHR,
-- getRandROutputDisplayEXT, releaseDisplayEXT
data PhysicalDevice
PhysicalDevice :: Ptr PhysicalDevice_T -> InstanceCmds -> PhysicalDevice
[$sel:physicalDeviceHandle:PhysicalDevice] :: PhysicalDevice -> Ptr PhysicalDevice_T
[$sel:instanceCmds:PhysicalDevice] :: PhysicalDevice -> InstanceCmds
-- | VkDevice - Opaque handle to a device object
--
-- See Also
--
-- acquireFullScreenExclusiveModeEXT, acquireNextImage2KHR,
-- acquireNextImageKHR,
-- acquirePerformanceConfigurationINTEL,
-- acquireProfilingLockKHR, allocateCommandBuffers,
-- allocateDescriptorSets, allocateMemory,
-- bindAccelerationStructureMemoryKHR,
-- bindAccelerationStructureMemoryNV, bindBufferMemory,
-- bindBufferMemory2, bindBufferMemory2KHR,
-- bindImageMemory, bindImageMemory2,
-- bindImageMemory2KHR, buildAccelerationStructureKHR,
-- compileDeferredNV, copyAccelerationStructureKHR,
-- copyAccelerationStructureToMemoryKHR,
-- copyMemoryToAccelerationStructureKHR,
-- createAccelerationStructureKHR,
-- createAccelerationStructureNV, createBuffer,
-- createBufferView, createCommandPool,
-- createComputePipelines, createDeferredOperationKHR,
-- createDescriptorPool, createDescriptorSetLayout,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR, createDevice,
-- createEvent, createFence, createFramebuffer,
-- createGraphicsPipelines, createImage,
-- createImageView, createIndirectCommandsLayoutNV,
-- createPipelineCache, createPipelineLayout,
-- createPrivateDataSlotEXT, createQueryPool,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, createRenderPass,
-- createRenderPass2, createRenderPass2KHR,
-- createSampler, createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR, createSemaphore,
-- createShaderModule, createSharedSwapchainsKHR,
-- createSwapchainKHR, createValidationCacheEXT,
-- debugMarkerSetObjectNameEXT, debugMarkerSetObjectTagEXT,
-- deferredOperationJoinKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV, destroyBuffer,
-- destroyBufferView, destroyCommandPool,
-- destroyDeferredOperationKHR, destroyDescriptorPool,
-- destroyDescriptorSetLayout,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR, destroyDevice,
-- destroyEvent, destroyFence, destroyFramebuffer,
-- destroyImage, destroyImageView,
-- destroyIndirectCommandsLayoutNV, destroyPipeline,
-- destroyPipelineCache, destroyPipelineLayout,
-- destroyPrivateDataSlotEXT, destroyQueryPool,
-- destroyRenderPass, destroySampler,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR, destroySemaphore,
-- destroyShaderModule, destroySwapchainKHR,
-- destroyValidationCacheEXT, deviceWaitIdle,
-- displayPowerControlEXT, flushMappedMemoryRanges,
-- freeCommandBuffers, freeDescriptorSets,
-- freeMemory, getAccelerationStructureDeviceAddressKHR,
-- getAccelerationStructureHandleNV,
-- getAccelerationStructureMemoryRequirementsKHR,
-- getAccelerationStructureMemoryRequirementsNV,
-- getAndroidHardwareBufferPropertiesANDROID,
-- getBufferDeviceAddress, getBufferDeviceAddressEXT,
-- getBufferDeviceAddressKHR, getBufferMemoryRequirements,
-- getBufferMemoryRequirements2,
-- getBufferMemoryRequirements2KHR,
-- getBufferOpaqueCaptureAddress,
-- getBufferOpaqueCaptureAddressKHR,
-- getCalibratedTimestampsEXT,
-- getDeferredOperationMaxConcurrencyKHR,
-- getDeferredOperationResultKHR,
-- getDescriptorSetLayoutSupport,
-- getDescriptorSetLayoutSupportKHR,
-- getDeviceAccelerationStructureCompatibilityKHR,
-- getDeviceGroupPeerMemoryFeatures,
-- getDeviceGroupPeerMemoryFeaturesKHR,
-- getDeviceGroupPresentCapabilitiesKHR,
-- getDeviceGroupSurfacePresentModes2EXT,
-- getDeviceGroupSurfacePresentModesKHR,
-- getDeviceMemoryCommitment,
-- getDeviceMemoryOpaqueCaptureAddress,
-- getDeviceMemoryOpaqueCaptureAddressKHR,
-- getDeviceProcAddr, getDeviceQueue,
-- getDeviceQueue2, getEventStatus, getFenceFdKHR,
-- getFenceStatus, getFenceWin32HandleKHR,
-- getGeneratedCommandsMemoryRequirementsNV,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements, getImageMemoryRequirements2,
-- getImageMemoryRequirements2KHR,
-- getImageSparseMemoryRequirements,
-- getImageSparseMemoryRequirements2,
-- getImageSparseMemoryRequirements2KHR,
-- getImageSubresourceLayout, getImageViewAddressNVX,
-- getImageViewHandleNVX,
-- getMemoryAndroidHardwareBufferANDROID, getMemoryFdKHR,
-- getMemoryFdPropertiesKHR,
-- getMemoryHostPointerPropertiesEXT,
-- getMemoryWin32HandleKHR, getMemoryWin32HandleNV,
-- getMemoryWin32HandlePropertiesKHR,
-- getPastPresentationTimingGOOGLE,
-- getPerformanceParameterINTEL, getPipelineCacheData,
-- getPipelineExecutableInternalRepresentationsKHR,
-- getPipelineExecutablePropertiesKHR,
-- getPipelineExecutableStatisticsKHR, getPrivateDataEXT,
-- getQueryPoolResults,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV,
-- getRefreshCycleDurationGOOGLE, getRenderAreaGranularity,
-- getSemaphoreCounterValue, getSemaphoreCounterValueKHR,
-- getSemaphoreFdKHR, getSemaphoreWin32HandleKHR,
-- getShaderInfoAMD, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- getValidationCacheDataEXT, importFenceFdKHR,
-- importFenceWin32HandleKHR, importSemaphoreFdKHR,
-- importSemaphoreWin32HandleKHR,
-- initializePerformanceApiINTEL,
-- invalidateMappedMemoryRanges, mapMemory,
-- mergePipelineCaches, mergeValidationCachesEXT,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- releaseFullScreenExclusiveModeEXT,
-- releasePerformanceConfigurationINTEL,
-- releaseProfilingLockKHR, resetCommandPool,
-- resetDescriptorPool, resetEvent, resetFences,
-- resetQueryPool, resetQueryPoolEXT,
-- setDebugUtilsObjectNameEXT, setDebugUtilsObjectTagEXT,
-- setEvent, setHdrMetadataEXT, setLocalDimmingAMD,
-- setPrivateDataEXT, signalSemaphore,
-- signalSemaphoreKHR, trimCommandPool,
-- trimCommandPoolKHR, uninitializePerformanceApiINTEL,
-- unmapMemory, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR,
-- updateDescriptorSets, waitForFences,
-- waitSemaphores, waitSemaphoresKHR,
-- writeAccelerationStructuresPropertiesKHR
data Device
Device :: Ptr Device_T -> DeviceCmds -> Device
[$sel:deviceHandle:Device] :: Device -> Ptr Device_T
[$sel:deviceCmds:Device] :: Device -> DeviceCmds
-- | VkQueue - Opaque handle to a queue object
--
-- See Also
--
-- getDeviceQueue, getDeviceQueue2,
-- getQueueCheckpointDataNV, queueBeginDebugUtilsLabelEXT,
-- queueBindSparse, queueEndDebugUtilsLabelEXT,
-- queueInsertDebugUtilsLabelEXT, queuePresentKHR,
-- queueSetPerformanceConfigurationINTEL, queueSubmit,
-- queueWaitIdle
data Queue
Queue :: Ptr Queue_T -> DeviceCmds -> Queue
[$sel:queueHandle:Queue] :: Queue -> Ptr Queue_T
[$sel:deviceCmds:Queue] :: Queue -> DeviceCmds
-- | VkCommandBuffer - Opaque handle to a command buffer object
--
-- See Also
--
-- SubmitInfo, allocateCommandBuffers,
-- beginCommandBuffer, cmdBeginConditionalRenderingEXT,
-- cmdBeginDebugUtilsLabelEXT, cmdBeginQuery,
-- cmdBeginQueryIndexedEXT, cmdBeginRenderPass,
-- cmdBeginRenderPass2, cmdBeginRenderPass2KHR,
-- cmdBeginTransformFeedbackEXT, cmdBindDescriptorSets,
-- cmdBindIndexBuffer, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, cmdBindShadingRateImageNV,
-- cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers, cmdBlitImage,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV, cmdClearAttachments,
-- cmdClearColorImage, cmdClearDepthStencilImage,
-- cmdCopyAccelerationStructureKHR,
-- cmdCopyAccelerationStructureNV,
-- cmdCopyAccelerationStructureToMemoryKHR, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImage,
-- cmdCopyImageToBuffer,
-- cmdCopyMemoryToAccelerationStructureKHR,
-- cmdCopyQueryPoolResults, cmdDebugMarkerBeginEXT,
-- cmdDebugMarkerEndEXT, cmdDebugMarkerInsertEXT,
-- cmdDispatch, cmdDispatchBase, cmdDispatchBaseKHR,
-- cmdDispatchIndirect, cmdDraw, cmdDrawIndexed,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdDrawMeshTasksNV,
-- cmdEndConditionalRenderingEXT, cmdEndDebugUtilsLabelEXT,
-- cmdEndQuery, cmdEndQueryIndexedEXT,
-- cmdEndRenderPass, cmdEndRenderPass2,
-- cmdEndRenderPass2KHR, cmdEndTransformFeedbackEXT,
-- cmdExecuteCommands, cmdExecuteGeneratedCommandsNV,
-- cmdFillBuffer, cmdInsertDebugUtilsLabelEXT,
-- cmdNextSubpass, cmdNextSubpass2,
-- cmdNextSubpass2KHR, cmdPipelineBarrier,
-- cmdPreprocessGeneratedCommandsNV, cmdPushConstants,
-- cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR, cmdResetEvent,
-- cmdResetQueryPool, cmdResolveImage,
-- cmdSetBlendConstants, cmdSetCheckpointNV,
-- cmdSetCoarseSampleOrderNV, cmdSetDepthBias,
-- cmdSetDepthBounds, cmdSetDeviceMask,
-- cmdSetDeviceMaskKHR, cmdSetDiscardRectangleEXT,
-- cmdSetEvent, cmdSetExclusiveScissorNV,
-- cmdSetLineStippleEXT, cmdSetLineWidth,
-- cmdSetPerformanceMarkerINTEL,
-- cmdSetPerformanceOverrideINTEL,
-- cmdSetPerformanceStreamMarkerINTEL,
-- cmdSetSampleLocationsEXT, cmdSetScissor,
-- cmdSetStencilCompareMask, cmdSetStencilReference,
-- cmdSetStencilWriteMask, cmdSetViewport,
-- cmdSetViewportShadingRatePaletteNV,
-- cmdSetViewportWScalingNV, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysKHR, cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWaitEvents,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteBufferMarkerAMD, cmdWriteTimestamp,
-- endCommandBuffer, freeCommandBuffers,
-- resetCommandBuffer
data CommandBuffer
CommandBuffer :: Ptr CommandBuffer_T -> DeviceCmds -> CommandBuffer
[$sel:commandBufferHandle:CommandBuffer] :: CommandBuffer -> Ptr CommandBuffer_T
[$sel:deviceCmds:CommandBuffer] :: CommandBuffer -> DeviceCmds
-- | VkDeviceMemory - Opaque handle to a device memory object
--
-- See Also
--
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryInfo, BindImageMemoryInfo,
-- DeviceMemoryOpaqueCaptureAddressInfo, MappedMemoryRange,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- SparseImageMemoryBind, SparseMemoryBind,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV, allocateMemory,
-- bindBufferMemory, bindImageMemory, freeMemory,
-- getDeviceMemoryCommitment, getMemoryWin32HandleNV,
-- mapMemory, unmapMemory
newtype DeviceMemory
DeviceMemory :: Word64 -> DeviceMemory
-- | VkCommandPool - Opaque handle to a command pool object
--
-- See Also
--
-- CommandBufferAllocateInfo, createCommandPool,
-- destroyCommandPool, freeCommandBuffers,
-- resetCommandPool, trimCommandPool,
-- trimCommandPoolKHR
newtype CommandPool
CommandPool :: Word64 -> CommandPool
-- | VkBuffer - Opaque handle to a buffer object
--
-- See Also
--
-- BindBufferMemoryInfo, BufferDeviceAddressInfo,
-- BufferMemoryBarrier, BufferMemoryRequirementsInfo2,
-- BufferViewCreateInfo, ConditionalRenderingBeginInfoEXT,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DescriptorBufferInfo, GeneratedCommandsInfoNV,
-- GeometryAABBNV, GeometryTrianglesNV,
-- IndirectCommandsStreamNV, MemoryDedicatedAllocateInfo,
-- SparseBufferMemoryBindInfo, StridedBufferRegionKHR,
-- bindBufferMemory, cmdBeginTransformFeedbackEXT,
-- cmdBindIndexBuffer, cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureNV, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImageToBuffer,
-- cmdCopyQueryPoolResults, cmdDispatchIndirect,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdEndTransformFeedbackEXT,
-- cmdFillBuffer, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWriteBufferMarkerAMD, createBuffer,
-- destroyBuffer, getBufferMemoryRequirements
newtype Buffer
Buffer :: Word64 -> Buffer
-- | VkBufferView - Opaque handle to a buffer view object
--
-- See Also
--
-- WriteDescriptorSet, createBufferView,
-- destroyBufferView
newtype BufferView
BufferView :: Word64 -> BufferView
-- | VkImage - Opaque handle to an image object
--
-- See Also
--
-- BindImageMemoryInfo,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImageSparseMemoryRequirementsInfo2, ImageViewCreateInfo,
-- MemoryDedicatedAllocateInfo, SparseImageMemoryBindInfo,
-- SparseImageOpaqueMemoryBindInfo, bindImageMemory,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage, createImage, destroyImage,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements,
-- getImageSparseMemoryRequirements,
-- getImageSubresourceLayout, getSwapchainImagesKHR
newtype Image
Image :: Word64 -> Image
-- | VkImageView - Opaque handle to an image view object
--
-- See Also
--
-- DescriptorImageInfo, FramebufferCreateInfo,
-- ImageViewHandleInfoNVX, RenderPassAttachmentBeginInfo,
-- cmdBindShadingRateImageNV, createImageView,
-- destroyImageView, getImageViewAddressNVX
newtype ImageView
ImageView :: Word64 -> ImageView
-- | VkShaderModule - Opaque handle to a shader module object
--
-- See Also
--
-- PipelineShaderStageCreateInfo, createShaderModule,
-- destroyShaderModule
newtype ShaderModule
ShaderModule :: Word64 -> ShaderModule
-- | VkPipeline - Opaque handle to a pipeline object
--
-- See Also
--
-- ComputePipelineCreateInfo, GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- PipelineExecutableInfoKHR, PipelineInfoKHR,
-- PipelineLibraryCreateInfoKHR,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, compileDeferredNV,
-- createComputePipelines, createGraphicsPipelines,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, destroyPipeline,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV, getShaderInfoAMD
newtype Pipeline
Pipeline :: Word64 -> Pipeline
-- | VkPipelineLayout - Opaque handle to a pipeline layout object
--
-- See Also
--
-- ComputePipelineCreateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- GraphicsPipelineCreateInfo,
-- IndirectCommandsLayoutTokenNV,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindDescriptorSets,
-- cmdPushConstants, cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR,
-- createPipelineLayout, destroyPipelineLayout
newtype PipelineLayout
PipelineLayout :: Word64 -> PipelineLayout
-- | VkSampler - Opaque handle to a sampler object
--
-- See Also
--
-- DescriptorImageInfo, DescriptorSetLayoutBinding,
-- ImageViewHandleInfoNVX, createSampler,
-- destroySampler
newtype Sampler
Sampler :: Word64 -> Sampler
-- | VkDescriptorSet - Opaque handle to a descriptor set object
--
-- See Also
--
-- CopyDescriptorSet, WriteDescriptorSet,
-- allocateDescriptorSets, cmdBindDescriptorSets,
-- freeDescriptorSets, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorSet
DescriptorSet :: Word64 -> DescriptorSet
-- | VkDescriptorSetLayout - Opaque handle to a descriptor set layout
-- object
--
-- See Also
--
-- DescriptorSetAllocateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- PipelineLayoutCreateInfo, createDescriptorSetLayout,
-- destroyDescriptorSetLayout
newtype DescriptorSetLayout
DescriptorSetLayout :: Word64 -> DescriptorSetLayout
-- | VkFence - Opaque handle to a fence object
--
-- See Also
--
-- AcquireNextImageInfoKHR, FenceGetFdInfoKHR,
-- FenceGetWin32HandleInfoKHR, ImportFenceFdInfoKHR,
-- ImportFenceWin32HandleInfoKHR, acquireNextImageKHR,
-- createFence, destroyFence, getFenceStatus,
-- queueBindSparse, queueSubmit,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- resetFences, waitForFences
newtype Fence
Fence :: Word64 -> Fence
-- | VkSemaphore - Opaque handle to a semaphore object
--
-- See Also
--
-- AcquireNextImageInfoKHR, BindSparseInfo,
-- ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR, PresentInfoKHR,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreWaitInfo,
-- SubmitInfo, acquireNextImageKHR, createSemaphore,
-- destroySemaphore, getSemaphoreCounterValue,
-- getSemaphoreCounterValueKHR
newtype Semaphore
Semaphore :: Word64 -> Semaphore
-- | VkQueryPool - Opaque handle to a query pool object
--
-- See Also
--
-- cmdBeginQuery, cmdBeginQueryIndexedEXT,
-- cmdCopyQueryPoolResults, cmdEndQuery,
-- cmdEndQueryIndexedEXT, cmdResetQueryPool,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteTimestamp, createQueryPool,
-- destroyQueryPool, getQueryPoolResults,
-- resetQueryPool, resetQueryPoolEXT
newtype QueryPool
QueryPool :: Word64 -> QueryPool
-- | VkFramebuffer - Opaque handle to a framebuffer object
--
-- See Also
--
-- CommandBufferInheritanceInfo, RenderPassBeginInfo,
-- createFramebuffer, destroyFramebuffer
newtype Framebuffer
Framebuffer :: Word64 -> Framebuffer
-- | VkRenderPass - Opaque handle to a render pass object
--
-- See Also
--
-- CommandBufferInheritanceInfo, FramebufferCreateInfo,
-- GraphicsPipelineCreateInfo, RenderPassBeginInfo,
-- createRenderPass, createRenderPass2,
-- createRenderPass2KHR, destroyRenderPass,
-- getRenderAreaGranularity
newtype RenderPass
RenderPass :: Word64 -> RenderPass
-- | VkPipelineCache - Opaque handle to a pipeline cache object
--
-- See Also
--
-- createComputePipelines, createGraphicsPipelines,
-- createPipelineCache, createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, destroyPipelineCache,
-- getPipelineCacheData, mergePipelineCaches
newtype PipelineCache
PipelineCache :: Word64 -> PipelineCache
-- | VkDescriptorUpdateTemplate - Opaque handle to a descriptor update
-- template
--
-- See Also
--
-- cmdPushDescriptorSetWithTemplateKHR,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR,
-- updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorUpdateTemplate
DescriptorUpdateTemplate :: Word64 -> DescriptorUpdateTemplate
-- | VkSamplerYcbcrConversion - Opaque handle to a device-specific sampler
-- Y′CBCR conversion description
--
-- See Also
--
-- SamplerYcbcrConversionInfo,
-- createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR
newtype SamplerYcbcrConversion
SamplerYcbcrConversion :: Word64 -> SamplerYcbcrConversion
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance GHC.Classes.Ord Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance GHC.Classes.Eq Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance GHC.Classes.Ord Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance GHC.Classes.Eq Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.SwapchainKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.SwapchainKHR
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.SwapchainKHR
instance GHC.Classes.Ord Vulkan.Extensions.Handles.SwapchainKHR
instance GHC.Classes.Eq Vulkan.Extensions.Handles.SwapchainKHR
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.SurfaceKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.SurfaceKHR
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.SurfaceKHR
instance GHC.Classes.Ord Vulkan.Extensions.Handles.SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.Handles.SurfaceKHR
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.DisplayModeKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.DisplayModeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.DisplayModeKHR
instance GHC.Classes.Ord Vulkan.Extensions.Handles.DisplayModeKHR
instance GHC.Classes.Eq Vulkan.Extensions.Handles.DisplayModeKHR
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.DisplayKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.DisplayKHR
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.DisplayKHR
instance GHC.Classes.Ord Vulkan.Extensions.Handles.DisplayKHR
instance GHC.Classes.Eq Vulkan.Extensions.Handles.DisplayKHR
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance GHC.Classes.Ord Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance GHC.Classes.Eq Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.DeferredOperationKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.DeferredOperationKHR
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.DeferredOperationKHR
instance GHC.Classes.Ord Vulkan.Extensions.Handles.DeferredOperationKHR
instance GHC.Classes.Eq Vulkan.Extensions.Handles.DeferredOperationKHR
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance GHC.Classes.Ord Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance GHC.Classes.Eq Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.AccelerationStructureKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.AccelerationStructureKHR
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.AccelerationStructureKHR
instance GHC.Classes.Ord Vulkan.Extensions.Handles.AccelerationStructureKHR
instance GHC.Classes.Eq Vulkan.Extensions.Handles.AccelerationStructureKHR
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.ValidationCacheEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.ValidationCacheEXT
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.ValidationCacheEXT
instance GHC.Classes.Ord Vulkan.Extensions.Handles.ValidationCacheEXT
instance GHC.Classes.Eq Vulkan.Extensions.Handles.ValidationCacheEXT
instance Vulkan.Core10.APIConstants.IsHandle Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
instance Vulkan.Zero.Zero Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
instance Foreign.Storable.Storable Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
instance GHC.Classes.Ord Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
instance GHC.Classes.Eq Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance GHC.Show.Show Vulkan.Extensions.Handles.DebugUtilsMessengerEXT
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance GHC.Show.Show Vulkan.Extensions.Handles.DebugReportCallbackEXT
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.SwapchainKHR
instance GHC.Show.Show Vulkan.Extensions.Handles.SwapchainKHR
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.SurfaceKHR
instance GHC.Show.Show Vulkan.Extensions.Handles.SurfaceKHR
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.DisplayModeKHR
instance GHC.Show.Show Vulkan.Extensions.Handles.DisplayModeKHR
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.DisplayKHR
instance GHC.Show.Show Vulkan.Extensions.Handles.DisplayKHR
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance GHC.Show.Show Vulkan.Extensions.Handles.PrivateDataSlotEXT
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.DeferredOperationKHR
instance GHC.Show.Show Vulkan.Extensions.Handles.DeferredOperationKHR
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance GHC.Show.Show Vulkan.Extensions.Handles.PerformanceConfigurationINTEL
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.AccelerationStructureKHR
instance GHC.Show.Show Vulkan.Extensions.Handles.AccelerationStructureKHR
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.ValidationCacheEXT
instance GHC.Show.Show Vulkan.Extensions.Handles.ValidationCacheEXT
instance Vulkan.Core10.APIConstants.HasObjectType Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
instance GHC.Show.Show Vulkan.Extensions.Handles.IndirectCommandsLayoutNV
module Vulkan.Extensions.VK_NN_vi_surface
-- | vkCreateViSurfaceNN - Create a SurfaceKHR object for a VI layer
--
-- Description
--
-- During the lifetime of a surface created using a particular
-- nn::vi::NativeWindowHandle, applications
-- must not attempt to create another surface for the same
-- nn::vi::Layer or attempt to connect to the
-- same nn::vi::Layer through other platform
-- mechanisms.
--
-- If the native window is created with a specified size,
-- currentExtent will reflect that size. In this case,
-- applications should use the same size for the swapchain’s
-- imageExtent. Otherwise, the currentExtent will have
-- the special value (0xFFFFFFFF, 0xFFFFFFFF), indicating that
-- applications are expected to choose an appropriate size for the
-- swapchain’s imageExtent (e.g., by matching the result of a
-- call to nn::vi::GetDisplayResolution).
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- ViSurfaceCreateInfoNN structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSurface must be a valid pointer to a
-- SurfaceKHR handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance, SurfaceKHR,
-- ViSurfaceCreateInfoNN
createViSurfaceNN :: forall io. MonadIO io => Instance -> ViSurfaceCreateInfoNN -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkViSurfaceCreateInfoNN - Structure specifying parameters of a newly
-- created VI surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, ViSurfaceCreateFlagsNN,
-- createViSurfaceNN
data ViSurfaceCreateInfoNN
ViSurfaceCreateInfoNN :: ViSurfaceCreateFlagsNN -> Ptr () -> ViSurfaceCreateInfoNN
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:ViSurfaceCreateInfoNN] :: ViSurfaceCreateInfoNN -> ViSurfaceCreateFlagsNN
-- | window is the
-- nn::vi::NativeWindowHandle for the
-- nn::vi::Layer with which to associate the
-- surface.
--
-- window must be a valid
-- nn::vi::NativeWindowHandle
[$sel:window:ViSurfaceCreateInfoNN] :: ViSurfaceCreateInfoNN -> Ptr ()
-- | VkViSurfaceCreateFlagsNN - Reserved for future use
--
-- Description
--
-- ViSurfaceCreateFlagsNN is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- ViSurfaceCreateInfoNN
newtype ViSurfaceCreateFlagsNN
ViSurfaceCreateFlagsNN :: Flags -> ViSurfaceCreateFlagsNN
type NN_VI_SURFACE_SPEC_VERSION = 1
pattern NN_VI_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type NN_VI_SURFACE_EXTENSION_NAME = "VK_NN_vi_surface"
pattern NN_VI_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
instance GHC.Classes.Ord Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
instance GHC.Classes.Eq Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
instance GHC.Generics.Generic Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateInfoNN
instance GHC.Show.Show Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateInfoNN
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateInfoNN
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateInfoNN
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateInfoNN
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateInfoNN
instance GHC.Show.Show Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
instance GHC.Read.Read Vulkan.Extensions.VK_NN_vi_surface.ViSurfaceCreateFlagsNN
module Vulkan.Extensions.VK_MVK_macos_surface
-- | vkCreateMacOSSurfaceMVK - Create a VkSurfaceKHR object for a macOS
-- NSView
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance,
-- MacOSSurfaceCreateInfoMVK, SurfaceKHR
createMacOSSurfaceMVK :: forall io. MonadIO io => Instance -> MacOSSurfaceCreateInfoMVK -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkMacOSSurfaceCreateInfoMVK - Structure specifying parameters of a
-- newly created macOS surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- MacOSSurfaceCreateFlagsMVK, StructureType,
-- createMacOSSurfaceMVK
data MacOSSurfaceCreateInfoMVK
MacOSSurfaceCreateInfoMVK :: MacOSSurfaceCreateFlagsMVK -> Ptr () -> MacOSSurfaceCreateInfoMVK
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:MacOSSurfaceCreateInfoMVK] :: MacOSSurfaceCreateInfoMVK -> MacOSSurfaceCreateFlagsMVK
-- | pView is a reference to a NSView object which will
-- display this surface. This NSView must be backed by a
-- CALayer instance of type CAMetalLayer.
--
-- pView must be a valid NSView and must
-- be backed by a CALayer instance of type CAMetalLayer
[$sel:view:MacOSSurfaceCreateInfoMVK] :: MacOSSurfaceCreateInfoMVK -> Ptr ()
-- | VkMacOSSurfaceCreateFlagsMVK - Reserved for future use
--
-- Description
--
-- MacOSSurfaceCreateFlagsMVK is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- MacOSSurfaceCreateInfoMVK
newtype MacOSSurfaceCreateFlagsMVK
MacOSSurfaceCreateFlagsMVK :: Flags -> MacOSSurfaceCreateFlagsMVK
type MVK_MACOS_SURFACE_SPEC_VERSION = 2
pattern MVK_MACOS_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type MVK_MACOS_SURFACE_EXTENSION_NAME = "VK_MVK_macos_surface"
pattern MVK_MACOS_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
instance Foreign.Storable.Storable Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
instance GHC.Classes.Ord Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
instance GHC.Classes.Eq Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
instance GHC.Generics.Generic Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateInfoMVK
instance GHC.Show.Show Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateInfoMVK
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateInfoMVK
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateInfoMVK
instance Foreign.Storable.Storable Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateInfoMVK
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateInfoMVK
instance GHC.Show.Show Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
instance GHC.Read.Read Vulkan.Extensions.VK_MVK_macos_surface.MacOSSurfaceCreateFlagsMVK
module Vulkan.Extensions.VK_MVK_ios_surface
-- | vkCreateIOSSurfaceMVK - Create a VkSurfaceKHR object for an iOS UIView
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- IOSSurfaceCreateInfoMVK structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSurface must be a valid pointer to a
-- SurfaceKHR handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, IOSSurfaceCreateInfoMVK,
-- Instance, SurfaceKHR
createIOSSurfaceMVK :: forall io. MonadIO io => Instance -> IOSSurfaceCreateInfoMVK -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkIOSSurfaceCreateInfoMVK - Structure specifying parameters of a newly
-- created iOS surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- IOSSurfaceCreateFlagsMVK, StructureType,
-- createIOSSurfaceMVK
data IOSSurfaceCreateInfoMVK
IOSSurfaceCreateInfoMVK :: IOSSurfaceCreateFlagsMVK -> Ptr () -> IOSSurfaceCreateInfoMVK
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:IOSSurfaceCreateInfoMVK] :: IOSSurfaceCreateInfoMVK -> IOSSurfaceCreateFlagsMVK
-- | pView is a reference to a UIView object which will
-- display this surface. This UIView must be backed by a
-- CALayer instance of type CAMetalLayer.
--
-- pView must be a valid UIView and must
-- be backed by a CALayer instance of type CAMetalLayer
[$sel:view:IOSSurfaceCreateInfoMVK] :: IOSSurfaceCreateInfoMVK -> Ptr ()
-- | VkIOSSurfaceCreateFlagsMVK - Reserved for future use
--
-- Description
--
-- IOSSurfaceCreateFlagsMVK is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- IOSSurfaceCreateInfoMVK
newtype IOSSurfaceCreateFlagsMVK
IOSSurfaceCreateFlagsMVK :: Flags -> IOSSurfaceCreateFlagsMVK
type MVK_IOS_SURFACE_SPEC_VERSION = 2
pattern MVK_IOS_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type MVK_IOS_SURFACE_EXTENSION_NAME = "VK_MVK_ios_surface"
pattern MVK_IOS_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
instance Foreign.Storable.Storable Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
instance GHC.Classes.Ord Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
instance GHC.Classes.Eq Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
instance GHC.Generics.Generic Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateInfoMVK
instance GHC.Show.Show Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateInfoMVK
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateInfoMVK
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateInfoMVK
instance Foreign.Storable.Storable Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateInfoMVK
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateInfoMVK
instance GHC.Show.Show Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
instance GHC.Read.Read Vulkan.Extensions.VK_MVK_ios_surface.IOSSurfaceCreateFlagsMVK
module Vulkan.Extensions.VK_KHR_xlib_surface
-- | vkCreateXlibSurfaceKHR - Create a SurfaceKHR object for an X11
-- window, using the Xlib client-side library
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance, SurfaceKHR,
-- XlibSurfaceCreateInfoKHR
createXlibSurfaceKHR :: forall io. MonadIO io => Instance -> XlibSurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | vkGetPhysicalDeviceXlibPresentationSupportKHR - Query physical device
-- for presentation to X11 server using Xlib
--
-- Description
--
-- This platform-specific function can be called prior to creating
-- a surface.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice
getPhysicalDeviceXlibPresentationSupportKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> ("dpy" ::: Ptr Display) -> VisualID -> io Bool
-- | VkXlibSurfaceCreateInfoKHR - Structure specifying parameters of a
-- newly created Xlib surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, XlibSurfaceCreateFlagsKHR,
-- createXlibSurfaceKHR
data XlibSurfaceCreateInfoKHR
XlibSurfaceCreateInfoKHR :: XlibSurfaceCreateFlagsKHR -> Ptr Display -> Window -> XlibSurfaceCreateInfoKHR
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:XlibSurfaceCreateInfoKHR] :: XlibSurfaceCreateInfoKHR -> XlibSurfaceCreateFlagsKHR
-- | dpy is a pointer to an Xlib Display connection to the
-- X server.
--
-- dpy must point to a valid Xlib Display
[$sel:dpy:XlibSurfaceCreateInfoKHR] :: XlibSurfaceCreateInfoKHR -> Ptr Display
-- | window is an Xlib Window to associate the surface
-- with.
--
-- window must be a valid Xlib Window
[$sel:window:XlibSurfaceCreateInfoKHR] :: XlibSurfaceCreateInfoKHR -> Window
-- | VkXlibSurfaceCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- XlibSurfaceCreateFlagsKHR is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- XlibSurfaceCreateInfoKHR
newtype XlibSurfaceCreateFlagsKHR
XlibSurfaceCreateFlagsKHR :: Flags -> XlibSurfaceCreateFlagsKHR
type KHR_XLIB_SURFACE_SPEC_VERSION = 6
pattern KHR_XLIB_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type KHR_XLIB_SURFACE_EXTENSION_NAME = "VK_KHR_xlib_surface"
pattern KHR_XLIB_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type Display = Ptr ()
type VisualID = Word64
type Window = Word64
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_xlib_surface.XlibSurfaceCreateFlagsKHR
module Vulkan.Extensions.VK_KHR_xcb_surface
-- | vkCreateXcbSurfaceKHR - Create a SurfaceKHR object for a X11
-- window, using the XCB client-side library
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- XcbSurfaceCreateInfoKHR structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSurface must be a valid pointer to a
-- SurfaceKHR handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance, SurfaceKHR,
-- XcbSurfaceCreateInfoKHR
createXcbSurfaceKHR :: forall io. MonadIO io => Instance -> XcbSurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | vkGetPhysicalDeviceXcbPresentationSupportKHR - Query physical device
-- for presentation to X11 server using XCB
--
-- Description
--
-- This platform-specific function can be called prior to creating
-- a surface.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice
getPhysicalDeviceXcbPresentationSupportKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> Ptr Xcb_connection_t -> ("visual_id" ::: Xcb_visualid_t) -> io Bool
-- | VkXcbSurfaceCreateInfoKHR - Structure specifying parameters of a newly
-- created Xcb surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, XcbSurfaceCreateFlagsKHR,
-- createXcbSurfaceKHR
data XcbSurfaceCreateInfoKHR
XcbSurfaceCreateInfoKHR :: XcbSurfaceCreateFlagsKHR -> Ptr Xcb_connection_t -> Xcb_window_t -> XcbSurfaceCreateInfoKHR
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:XcbSurfaceCreateInfoKHR] :: XcbSurfaceCreateInfoKHR -> XcbSurfaceCreateFlagsKHR
-- | connection is a pointer to an xcb_connection_t to
-- the X server.
--
-- connection must point to a valid X11
-- xcb_connection_t
[$sel:connection:XcbSurfaceCreateInfoKHR] :: XcbSurfaceCreateInfoKHR -> Ptr Xcb_connection_t
-- | window is the xcb_window_t for the X11 window to
-- associate the surface with.
--
-- window must be a valid X11 xcb_window_t
[$sel:window:XcbSurfaceCreateInfoKHR] :: XcbSurfaceCreateInfoKHR -> Xcb_window_t
-- | VkXcbSurfaceCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- XcbSurfaceCreateFlagsKHR is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- XcbSurfaceCreateInfoKHR
newtype XcbSurfaceCreateFlagsKHR
XcbSurfaceCreateFlagsKHR :: Flags -> XcbSurfaceCreateFlagsKHR
type KHR_XCB_SURFACE_SPEC_VERSION = 6
pattern KHR_XCB_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type KHR_XCB_SURFACE_EXTENSION_NAME = "VK_KHR_xcb_surface"
pattern KHR_XCB_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type Xcb_visualid_t = Word32
type Xcb_window_t = Word32
data Xcb_connection_t
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_xcb_surface.XcbSurfaceCreateFlagsKHR
module Vulkan.Extensions.VK_KHR_win32_surface
-- | vkCreateWin32SurfaceKHR - Create a SurfaceKHR object for an
-- Win32 native window
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance, SurfaceKHR,
-- Win32SurfaceCreateInfoKHR
createWin32SurfaceKHR :: forall io. MonadIO io => Instance -> Win32SurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | vkGetPhysicalDeviceWin32PresentationSupportKHR - query queue family
-- support for presentation on a Win32 display
--
-- Description
--
-- This platform-specific function can be called prior to creating
-- a surface.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice
getPhysicalDeviceWin32PresentationSupportKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> io Bool
-- | VkWin32SurfaceCreateInfoKHR - Structure specifying parameters of a
-- newly created Win32 surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, Win32SurfaceCreateFlagsKHR,
-- createWin32SurfaceKHR
data Win32SurfaceCreateInfoKHR
Win32SurfaceCreateInfoKHR :: Win32SurfaceCreateFlagsKHR -> HINSTANCE -> HWND -> Win32SurfaceCreateInfoKHR
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:Win32SurfaceCreateInfoKHR] :: Win32SurfaceCreateInfoKHR -> Win32SurfaceCreateFlagsKHR
-- | hinstance is the Win32 HINSTANCE for the window to
-- associate the surface with.
--
-- hinstance must be a valid Win32 HINSTANCE
[$sel:hinstance:Win32SurfaceCreateInfoKHR] :: Win32SurfaceCreateInfoKHR -> HINSTANCE
-- | hwnd is the Win32 HWND for the window to associate the
-- surface with.
--
-- hwnd must be a valid Win32 HWND
[$sel:hwnd:Win32SurfaceCreateInfoKHR] :: Win32SurfaceCreateInfoKHR -> HWND
-- | VkWin32SurfaceCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- Win32SurfaceCreateFlagsKHR is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- Win32SurfaceCreateInfoKHR
newtype Win32SurfaceCreateFlagsKHR
Win32SurfaceCreateFlagsKHR :: Flags -> Win32SurfaceCreateFlagsKHR
type KHR_WIN32_SURFACE_SPEC_VERSION = 6
pattern KHR_WIN32_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type KHR_WIN32_SURFACE_EXTENSION_NAME = "VK_KHR_win32_surface"
pattern KHR_WIN32_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type HINSTANCE = Ptr ()
type HWND = Ptr ()
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_win32_surface.Win32SurfaceCreateFlagsKHR
module Vulkan.Extensions.VK_KHR_wayland_surface
-- | vkCreateWaylandSurfaceKHR - Create a SurfaceKHR object for a
-- Wayland window
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance, SurfaceKHR,
-- WaylandSurfaceCreateInfoKHR
createWaylandSurfaceKHR :: forall io. MonadIO io => Instance -> WaylandSurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | vkGetPhysicalDeviceWaylandPresentationSupportKHR - Query physical
-- device for presentation to Wayland
--
-- Description
--
-- This platform-specific function can be called prior to creating
-- a surface.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice
getPhysicalDeviceWaylandPresentationSupportKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> Ptr Wl_display -> io Bool
-- | VkWaylandSurfaceCreateInfoKHR - Structure specifying parameters of a
-- newly created Wayland surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, WaylandSurfaceCreateFlagsKHR,
-- createWaylandSurfaceKHR
data WaylandSurfaceCreateInfoKHR
WaylandSurfaceCreateInfoKHR :: WaylandSurfaceCreateFlagsKHR -> Ptr Wl_display -> Ptr Wl_surface -> WaylandSurfaceCreateInfoKHR
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:WaylandSurfaceCreateInfoKHR] :: WaylandSurfaceCreateInfoKHR -> WaylandSurfaceCreateFlagsKHR
-- | display and surface are pointers to the Wayland
-- wl_display and wl_surface to associate the surface
-- with.
--
-- display must point to a valid Wayland
-- wl_display
[$sel:display:WaylandSurfaceCreateInfoKHR] :: WaylandSurfaceCreateInfoKHR -> Ptr Wl_display
-- | surface must point to a valid Wayland
-- wl_surface
[$sel:surface:WaylandSurfaceCreateInfoKHR] :: WaylandSurfaceCreateInfoKHR -> Ptr Wl_surface
-- | VkWaylandSurfaceCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- WaylandSurfaceCreateFlagsKHR is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- WaylandSurfaceCreateInfoKHR
newtype WaylandSurfaceCreateFlagsKHR
WaylandSurfaceCreateFlagsKHR :: Flags -> WaylandSurfaceCreateFlagsKHR
type KHR_WAYLAND_SURFACE_SPEC_VERSION = 6
pattern KHR_WAYLAND_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type KHR_WAYLAND_SURFACE_EXTENSION_NAME = "VK_KHR_wayland_surface"
pattern KHR_WAYLAND_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
data Wl_display
data Wl_surface
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_wayland_surface.WaylandSurfaceCreateFlagsKHR
module Vulkan.Extensions.VK_KHR_surface
-- | vkDestroySurfaceKHR - Destroy a VkSurfaceKHR object
--
-- Description
--
-- Destroying a SurfaceKHR merely severs the connection between
-- Vulkan and the native surface, and does not imply destroying the
-- native surface, closing a window, or similar behavior.
--
-- Valid Usage
--
--
-- - All SwapchainKHR objects created for surface
-- must have been destroyed prior to destroying
-- surface
--
--
--
-- - If AllocationCallbacks were provided when surface
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when
-- surface was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - If surface is not NULL_HANDLE, surface
-- must be a valid SurfaceKHR handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If surface is a valid handle, it must have been
-- created, allocated, or retrieved from instance
--
--
-- Host Synchronization
--
--
-- - Host access to surface must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Instance, SurfaceKHR
destroySurfaceKHR :: forall io. MonadIO io => Instance -> SurfaceKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetPhysicalDeviceSurfaceSupportKHR - Query if presentation is
-- supported
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pSupported must be a valid pointer to a
-- Bool32 value
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Bool32, PhysicalDevice, SurfaceKHR
getPhysicalDeviceSurfaceSupportKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> SurfaceKHR -> io ("supported" ::: Bool)
-- | vkGetPhysicalDeviceSurfaceCapabilitiesKHR - Query surface capabilities
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pSurfaceCapabilities must be a valid pointer to a
-- SurfaceCapabilitiesKHR structure
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, SurfaceCapabilitiesKHR,
-- SurfaceKHR
getPhysicalDeviceSurfaceCapabilitiesKHR :: forall io. MonadIO io => PhysicalDevice -> SurfaceKHR -> io SurfaceCapabilitiesKHR
-- | vkGetPhysicalDeviceSurfaceFormatsKHR - Query color formats supported
-- by surface
--
-- Description
--
-- If pSurfaceFormats is NULL, then the number of
-- format pairs supported for the given surface is returned in
-- pSurfaceFormatCount. Otherwise, pSurfaceFormatCount
-- must point to a variable set by the user to the number of
-- elements in the pSurfaceFormats array, and on return the
-- variable is overwritten with the number of structures actually written
-- to pSurfaceFormats. If the value of
-- pSurfaceFormatCount is less than the number of format pairs
-- supported, at most pSurfaceFormatCount structures will be
-- written. If pSurfaceFormatCount is smaller than the number of
-- format pairs supported for the given surface,
-- INCOMPLETE will be returned instead of SUCCESS to
-- indicate that not all the available values were returned.
--
-- The number of format pairs supported must be greater than or
-- equal to 1. pSurfaceFormats must not contain an entry
-- whose value for format is FORMAT_UNDEFINED.
--
-- If pSurfaceFormats includes an entry whose value for
-- colorSpace is COLOR_SPACE_SRGB_NONLINEAR_KHR and whose
-- value for format is a UNORM (or SRGB) format and the
-- corresponding SRGB (or UNORM) format is a color renderable format for
-- IMAGE_TILING_OPTIMAL, then pSurfaceFormats must
-- also contain an entry with the same value for colorSpace and
-- format equal to the corresponding SRGB (or UNORM) format.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pSurfaceFormatCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pSurfaceFormatCount is not
-- 0, and pSurfaceFormats is not NULL,
-- pSurfaceFormats must be a valid pointer to an array of
-- pSurfaceFormatCount SurfaceFormatKHR structures
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, SurfaceFormatKHR, SurfaceKHR
getPhysicalDeviceSurfaceFormatsKHR :: forall io. MonadIO io => PhysicalDevice -> SurfaceKHR -> io (Result, "surfaceFormats" ::: Vector SurfaceFormatKHR)
-- | vkGetPhysicalDeviceSurfacePresentModesKHR - Query supported
-- presentation modes
--
-- Description
--
-- If pPresentModes is NULL, then the number of
-- presentation modes supported for the given surface is
-- returned in pPresentModeCount. Otherwise,
-- pPresentModeCount must point to a variable set by the
-- user to the number of elements in the pPresentModes array,
-- and on return the variable is overwritten with the number of values
-- actually written to pPresentModes. If the value of
-- pPresentModeCount is less than the number of presentation
-- modes supported, at most pPresentModeCount values will be
-- written. If pPresentModeCount is smaller than the number of
-- presentation modes supported for the given surface,
-- INCOMPLETE will be returned instead of SUCCESS to
-- indicate that not all the available values were returned.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pPresentModeCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPresentModeCount is not
-- 0, and pPresentModes is not NULL,
-- pPresentModes must be a valid pointer to an array of
-- pPresentModeCount PresentModeKHR values
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, PresentModeKHR, SurfaceKHR
getPhysicalDeviceSurfacePresentModesKHR :: forall io. MonadIO io => PhysicalDevice -> SurfaceKHR -> io (Result, "presentModes" ::: Vector PresentModeKHR)
-- | VkSurfaceCapabilitiesKHR - Structure describing capabilities of a
-- surface
--
-- Description
--
-- Note
--
-- Supported usage flags of a presentable image when using
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR presentation mode
-- are provided by
-- SharedPresentSurfaceCapabilitiesKHR::sharedPresentSupportedUsageFlags.
--
-- Note
--
-- Formulas such as min(N, maxImageCount) are not correct, since
-- maxImageCount may be zero.
--
-- See Also
--
-- CompositeAlphaFlagsKHR, Extent2D,
-- ImageUsageFlags, SurfaceCapabilities2KHR,
-- SurfaceTransformFlagBitsKHR, SurfaceTransformFlagsKHR,
-- getPhysicalDeviceSurfaceCapabilitiesKHR
data SurfaceCapabilitiesKHR
SurfaceCapabilitiesKHR :: Word32 -> Word32 -> Extent2D -> Extent2D -> Extent2D -> Word32 -> SurfaceTransformFlagsKHR -> SurfaceTransformFlagBitsKHR -> CompositeAlphaFlagsKHR -> ImageUsageFlags -> SurfaceCapabilitiesKHR
-- | minImageCount is the minimum number of images the specified
-- device supports for a swapchain created for the surface, and will be
-- at least one.
[$sel:minImageCount:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Word32
-- | 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.
[$sel:maxImageCount:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Word32
-- | 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.
[$sel:currentExtent:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Extent2D
-- | 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.
[$sel:minImageExtent:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Extent2D
-- | 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.
[$sel:maxImageExtent:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Extent2D
-- | 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.
[$sel:maxImageArrayLayers:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Word32
-- | supportedTransforms is a bitmask of
-- SurfaceTransformFlagBitsKHR indicating the presentation
-- transforms supported for the surface on the specified device. At least
-- one bit will be set.
[$sel:supportedTransforms:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> SurfaceTransformFlagsKHR
-- | currentTransform is SurfaceTransformFlagBitsKHR value
-- indicating the surface’s current transform relative to the
-- presentation engine’s natural orientation.
[$sel:currentTransform:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> SurfaceTransformFlagBitsKHR
-- | supportedCompositeAlpha is a bitmask of
-- 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.
[$sel:supportedCompositeAlpha:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> CompositeAlphaFlagsKHR
-- | supportedUsageFlags is a bitmask of ImageUsageFlagBits
-- representing the ways the application can use the presentable
-- images of a swapchain created with PresentModeKHR set to
-- PRESENT_MODE_IMMEDIATE_KHR, PRESENT_MODE_MAILBOX_KHR,
-- PRESENT_MODE_FIFO_KHR or PRESENT_MODE_FIFO_RELAXED_KHR
-- for the surface on the specified device.
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT must be included in the
-- set but implementations may support additional usages.
[$sel:supportedUsageFlags:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> ImageUsageFlags
-- | VkSurfaceFormatKHR - Structure describing a supported swapchain
-- format-color space pair
--
-- See Also
--
-- ColorSpaceKHR, Format, SurfaceFormat2KHR,
-- getPhysicalDeviceSurfaceFormatsKHR
data SurfaceFormatKHR
SurfaceFormatKHR :: Format -> ColorSpaceKHR -> SurfaceFormatKHR
-- | format is a Format that is compatible with the
-- specified surface.
[$sel:format:SurfaceFormatKHR] :: SurfaceFormatKHR -> Format
-- | colorSpace is a presentation ColorSpaceKHR that is
-- compatible with the surface.
[$sel:colorSpace:SurfaceFormatKHR] :: SurfaceFormatKHR -> ColorSpaceKHR
-- | VkPresentModeKHR - presentation mode supported for a surface
--
-- Description
--
-- The supported ImageUsageFlagBits of the presentable images of a
-- swapchain created for a surface may differ depending on the
-- presentation mode, and can be determined as per the table below:
--
-- TODO: table
--
-- Presentable image usage queries
--
-- Note
--
-- For reference, the mode indicated by PRESENT_MODE_FIFO_KHR is
-- equivalent to the behavior of {wgl|glX|egl}SwapBuffers with a swap
-- interval of 1, while the mode indicated by
-- PRESENT_MODE_FIFO_RELAXED_KHR is equivalent to the behavior of
-- {wgl|glX}SwapBuffers with a swap interval of -1 (from the
-- {WGL|GLX}_EXT_swap_control_tear extensions).
--
-- See Also
--
-- SwapchainCreateInfoKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR
newtype PresentModeKHR
PresentModeKHR :: Int32 -> PresentModeKHR
-- | PRESENT_MODE_IMMEDIATE_KHR specifies that the presentation
-- engine does not wait for a vertical blanking period to update the
-- current image, meaning this mode may result in visible tearing.
-- No internal queuing of presentation requests is needed, as the
-- requests are applied immediately.
pattern PRESENT_MODE_IMMEDIATE_KHR :: PresentModeKHR
-- | PRESENT_MODE_MAILBOX_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal single-entry
-- queue is used to hold pending presentation requests. If the queue is
-- full when a new presentation request is received, the new request
-- replaces the existing entry, and any images associated with the prior
-- entry become available for re-use by the application. One request is
-- removed from the queue and processed during each vertical blanking
-- period in which the queue is non-empty.
pattern PRESENT_MODE_MAILBOX_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal queue is used to
-- hold pending presentation requests. New requests are appended to the
-- end of the queue, and one request is removed from the beginning of the
-- queue and processed during each vertical blanking period in which the
-- queue is non-empty. This is the only value of presentMode
-- that is required to be supported.
pattern PRESENT_MODE_FIFO_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_RELAXED_KHR specifies that the presentation
-- engine generally waits for the next vertical blanking period to update
-- the current image. If a vertical blanking period has already passed
-- since the last update of the current image then the presentation
-- engine does not wait for another vertical blanking period for the
-- update, meaning this mode may result in visible tearing in this
-- case. This mode is useful for reducing visual stutter with an
-- application that will mostly present a new image before the next
-- vertical blanking period, but may occasionally be late, and present a
-- new image just after the next vertical blanking period. An internal
-- queue is used to hold pending presentation requests. New requests are
-- appended to the end of the queue, and one request is removed from the
-- beginning of the queue and processed during or after each vertical
-- blanking period in which the queue is non-empty.
pattern PRESENT_MODE_FIFO_RELAXED_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine periodically updates the current image on its
-- regular refresh cycle. The application is only required to make one
-- initial presentation request, after which the presentation engine
-- must update the current image without any need for further
-- presentation requests. The application can indicate the image
-- contents have been updated by making a presentation request, but this
-- does not guarantee the timing of when it will be updated. This mode
-- may result in visible tearing if rendering to the image is not
-- timed correctly.
pattern PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine is only required to update the current image after
-- a new presentation request is received. Therefore the application
-- must make a presentation request whenever an update is
-- required. However, the presentation engine may update the
-- current image at any point, meaning this mode may result in
-- visible tearing.
pattern PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR :: PresentModeKHR
-- | VkColorSpaceKHR - supported color space of the presentation engine
--
-- Description
--
-- Note
--
-- In the initial release of the VK_KHR_surface and
-- VK_KHR_swapchain extensions, the token
-- VK_COLORSPACE_SRGB_NONLINEAR_KHR was used. Starting in the
-- 2016-05-13 updates to the extension branches, matching release 1.0.13
-- of the core API specification, COLOR_SPACE_SRGB_NONLINEAR_KHR
-- is used instead for consistency with Vulkan naming rules. The older
-- enum is still available for backwards compatibility.
--
-- Note
--
-- In older versions of this extension
-- COLOR_SPACE_DISPLAY_P3_LINEAR_EXT was misnamed
-- COLOR_SPACE_DCI_P3_LINEAR_EXT. This has been updated to
-- indicate that it uses RGB color encoding, not XYZ. The old name is
-- deprecated but is maintained for backwards compatibility.
--
-- The color components of non-linear color space swap chain images
-- must have had the appropriate transfer function applied. The
-- color space selected for the swap chain image will not affect the
-- processing of data written into the image by the implementation.
-- Vulkan requires that all implementations support the sRGB transfer
-- function by use of an SRGB pixel format. Other transfer functions,
-- such as SMPTE 170M or SMPTE2084, can be performed by the
-- application shader. This extension defines enums for
-- ColorSpaceKHR that correspond to the following color spaces:
--
-- TODO: table
--
-- Color Spaces and Attributes
--
-- The transfer functions are described in the “Transfer Functions”
-- chapter of the Khronos Data Format Specification.
--
-- Except Display-P3 OETF, which is:
--
-- [begin{aligned} E & = begin{cases} 1.055 times L^{1 over 2.4} -
-- 0.055 & text{for} 0.0030186 leq L leq 1 -- 12.92 times L &
-- text{for} 0 leq L < 0.0030186
newtype ColorSpaceKHR
ColorSpaceKHR :: Int32 -> ColorSpaceKHR
-- | COLOR_SPACE_SRGB_NONLINEAR_KHR specifies support for the sRGB
-- color space.
pattern COLOR_SPACE_SRGB_NONLINEAR_KHR :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_NATIVE_AMD specifies support for the
-- display’s native color space. This matches the color space
-- expectations of AMD’s FreeSync2 standard, for displays supporting it.
pattern COLOR_SPACE_DISPLAY_NATIVE_AMD :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT specifies support for
-- the extended sRGB color space to be displayed using an sRGB EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_PASS_THROUGH_EXT specifies that color components
-- are used “as is”. This is intended to allow applications to supply
-- data for color spaces not described here.
pattern COLOR_SPACE_PASS_THROUGH_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_NONLINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using the Gamma 2.2 EOTF.
pattern COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_LINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_ADOBERGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_HLG_EXT specifies support for the HDR10
-- (BT2020 color space) to be displayed using the Hybrid Log Gamma (HLG)
-- EOTF.
pattern COLOR_SPACE_HDR10_HLG_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DOLBYVISION_EXT specifies support for the Dolby
-- Vision (BT2020 color space), proprietary encoding, to be displayed
-- using the SMPTE ST2084 EOTF.
pattern COLOR_SPACE_DOLBYVISION_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_ST2084_EXT specifies support for the HDR10
-- (BT2020 color) space to be displayed using the SMPTE ST2084 Perceptual
-- Quantizer (PQ) EOTF.
pattern COLOR_SPACE_HDR10_ST2084_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT2020_LINEAR_EXT specifies support for the BT2020
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT2020_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_NONLINEAR_EXT specifies support for the BT709
-- color space to be displayed using the SMPTE 170M EOTF.
pattern COLOR_SPACE_BT709_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_LINEAR_EXT specifies support for the BT709
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT709_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DCI_P3_NONLINEAR_EXT specifies support for the
-- DCI-P3 color space to be displayed using the DCI-P3 EOTF. Note that
-- values in such an image are interpreted as XYZ encoded color data by
-- the presentation engine.
pattern COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_LINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT specifies support for the
-- extended sRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using an sRGB-like EOTF
-- (defined below).
pattern COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | VkCompositeAlphaFlagBitsKHR - alpha compositing modes supported on a
-- device
--
-- Description
--
-- These values are described as follows:
--
-- See Also
--
-- CompositeAlphaFlagsKHR, SwapchainCreateInfoKHR
newtype CompositeAlphaFlagBitsKHR
CompositeAlphaFlagBitsKHR :: Flags -> CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_OPAQUE_BIT_KHR: The alpha channel, if it
-- exists, of the images is ignored in the compositing process. Instead,
-- the image is treated as if it has a constant alpha of 1.0.
pattern COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are expected to already be multiplied
-- by the alpha channel by the application.
pattern COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are not expected to already be
-- multiplied by the alpha channel by the application; instead, the
-- compositor will multiply the non-alpha channels of the image by the
-- alpha channel during compositing.
pattern COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_INHERIT_BIT_KHR: The way in which the
-- presentation engine treats the alpha channel in the images is unknown
-- to the Vulkan API. Instead, the application is responsible for setting
-- the composite alpha blending mode using native window system commands.
-- If the application does not set the blending mode using native window
-- system commands, then a platform-specific default will be used.
pattern COMPOSITE_ALPHA_INHERIT_BIT_KHR :: CompositeAlphaFlagBitsKHR
type CompositeAlphaFlagsKHR = CompositeAlphaFlagBitsKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
type KHR_SURFACE_SPEC_VERSION = 25
pattern KHR_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type KHR_SURFACE_EXTENSION_NAME = "VK_KHR_surface"
pattern KHR_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface.PresentModeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_surface.PresentModeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_surface.PresentModeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_surface.PresentModeKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_surface.SurfaceCapabilitiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface.SurfaceCapabilitiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_surface.SurfaceCapabilitiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_surface.SurfaceCapabilitiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface.SurfaceCapabilitiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_surface.SurfaceTransformFlagBitsKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_surface.CompositeAlphaFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_surface.SurfaceFormatKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_surface.PresentModeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_surface.PresentModeKHR
module Vulkan.Extensions.VK_QCOM_render_pass_transform
-- | VkRenderPassTransformBeginInfoQCOM - Structure describing transform
-- parameters of a render pass instance
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- StructureType, SurfaceTransformFlagBitsKHR
data RenderPassTransformBeginInfoQCOM
RenderPassTransformBeginInfoQCOM :: SurfaceTransformFlagBitsKHR -> RenderPassTransformBeginInfoQCOM
-- | transform is a SurfaceTransformFlagBitsKHR value
-- describing the transform to be applied to rasterization.
[$sel:transform:RenderPassTransformBeginInfoQCOM] :: RenderPassTransformBeginInfoQCOM -> SurfaceTransformFlagBitsKHR
-- | VkCommandBufferInheritanceRenderPassTransformInfoQCOM - Structure
-- describing transformed render pass parameters command buffer
--
-- Description
--
-- When the secondary is recorded to execute within a render pass
-- instance using cmdExecuteCommands, the render pass transform
-- parameters of the secondary command buffer must be consistent
-- with the render pass transform parameters specified for the render
-- pass instance. In particular, the transform and
-- renderArea for command buffer must be identical to the
-- transform and renderArea of the render pass
-- instance.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Rect2D, StructureType,
-- SurfaceTransformFlagBitsKHR
data CommandBufferInheritanceRenderPassTransformInfoQCOM
CommandBufferInheritanceRenderPassTransformInfoQCOM :: SurfaceTransformFlagBitsKHR -> Rect2D -> CommandBufferInheritanceRenderPassTransformInfoQCOM
-- | transform is a SurfaceTransformFlagBitsKHR value
-- describing the transform to be applied to the render pass.
--
-- transform must be
-- SURFACE_TRANSFORM_IDENTITY_BIT_KHR,
-- SURFACE_TRANSFORM_ROTATE_90_BIT_KHR,
-- SURFACE_TRANSFORM_ROTATE_180_BIT_KHR, or
-- SURFACE_TRANSFORM_ROTATE_270_BIT_KHR
[$sel:transform:CommandBufferInheritanceRenderPassTransformInfoQCOM] :: CommandBufferInheritanceRenderPassTransformInfoQCOM -> SurfaceTransformFlagBitsKHR
-- | renderArea is the render area that is affected by the command
-- buffer.
[$sel:renderArea:CommandBufferInheritanceRenderPassTransformInfoQCOM] :: CommandBufferInheritanceRenderPassTransformInfoQCOM -> Rect2D
type QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION = 1
pattern QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION :: forall a. Integral a => a
type QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME = "VK_QCOM_render_pass_transform"
pattern QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
instance GHC.Generics.Generic Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
instance GHC.Show.Show Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
instance GHC.Generics.Generic Vulkan.Extensions.VK_QCOM_render_pass_transform.CommandBufferInheritanceRenderPassTransformInfoQCOM
instance GHC.Show.Show Vulkan.Extensions.VK_QCOM_render_pass_transform.CommandBufferInheritanceRenderPassTransformInfoQCOM
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_QCOM_render_pass_transform.CommandBufferInheritanceRenderPassTransformInfoQCOM
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_QCOM_render_pass_transform.CommandBufferInheritanceRenderPassTransformInfoQCOM
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_QCOM_render_pass_transform.CommandBufferInheritanceRenderPassTransformInfoQCOM
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
instance Foreign.Storable.Storable Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_QCOM_render_pass_transform.RenderPassTransformBeginInfoQCOM
module Vulkan.Extensions.VK_KHR_swapchain
-- | vkCreateSwapchainKHR - Create a swapchain
--
-- Description
--
-- If the oldSwapchain parameter of pCreateInfo is a
-- valid swapchain, which has exclusive full-screen access, that access
-- is released from oldSwapchain. If the command succeeds in
-- this case, the newly created swapchain will automatically acquire
-- exclusive full-screen access from oldSwapchain.
--
-- Note
--
-- This implicit transfer is intended to avoid exiting and entering
-- full-screen exclusive mode, which may otherwise cause unwanted visual
-- updates to the display.
--
-- In some cases, swapchain creation may fail if exclusive
-- full-screen mode is requested for application control, but for some
-- implementation-specific reason exclusive full-screen access is
-- unavailable for the particular combination of parameters provided. If
-- this occurs, ERROR_INITIALIZATION_FAILED will be returned.
--
-- Note
--
-- In particular, it will fail if the imageExtent member of
-- pCreateInfo does not match the extents of the monitor. Other
-- reasons for failure may include the app not being set as high-dpi
-- aware, or if the physical device and monitor are not compatible in
-- this mode.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- SwapchainCreateInfoKHR structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSwapchain must be a valid pointer to a
-- SwapchainKHR handle
--
--
-- Host Synchronization
--
--
-- - Host access to pCreateInfo->surface must be
-- externally synchronized
--
--
--
-- - Host access to pCreateInfo->oldSwapchain must
-- be externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- SwapchainCreateInfoKHR, SwapchainKHR
createSwapchainKHR :: forall a io. (Extendss SwapchainCreateInfoKHR a, PokeChain a, MonadIO io) => Device -> SwapchainCreateInfoKHR a -> ("allocator" ::: Maybe AllocationCallbacks) -> io SwapchainKHR
-- | A convenience wrapper to make a compatible pair of calls to
-- createSwapchainKHR and destroySwapchainKHR
--
-- To ensure that destroySwapchainKHR is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withSwapchainKHR :: forall a io r. (Extendss SwapchainCreateInfoKHR a, PokeChain a, MonadIO io) => Device -> SwapchainCreateInfoKHR a -> Maybe AllocationCallbacks -> (io SwapchainKHR -> (SwapchainKHR -> io ()) -> r) -> r
-- | vkDestroySwapchainKHR - Destroy a swapchain object
--
-- Description
--
-- The application must not destroy a swapchain until after
-- completion of all outstanding operations on images that were acquired
-- from the swapchain. swapchain and all associated Image
-- handles are destroyed, and must not be acquired or used any
-- more by the application. The memory of each Image will only be
-- freed after that image is no longer used by the presentation engine.
-- For example, if one image of the swapchain is being displayed in a
-- window, the memory for that image may not be freed until the
-- window is destroyed, or another swapchain is created for the window.
-- Destroying the swapchain does not invalidate the parent
-- SurfaceKHR, and a new swapchain can be created with it.
--
-- When a swapchain associated with a display surface is destroyed, if
-- the image most recently presented to the display surface is from the
-- swapchain being destroyed, then either any display resources modified
-- by presenting images from any swapchain associated with the display
-- surface must be reverted by the implementation to their state
-- prior to the first present performed on one of these swapchains, or
-- such resources must be left in their current state.
--
-- If swapchain has exclusive full-screen access, it is released
-- before the swapchain is destroyed.
--
-- Valid Usage
--
--
-- - All uses of presentable images acquired from swapchain
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- swapchain was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- swapchain was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If swapchain is not NULL_HANDLE,
-- swapchain must be a valid SwapchainKHR
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - Both of device, and swapchain that are valid
-- handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, SwapchainKHR
destroySwapchainKHR :: forall io. MonadIO io => Device -> SwapchainKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetSwapchainImagesKHR - Obtain the array of presentable images
-- associated with a swapchain
--
-- Description
--
-- If pSwapchainImages is NULL, then the number of
-- presentable images for swapchain is returned in
-- pSwapchainImageCount. Otherwise,
-- pSwapchainImageCount must point to a variable set by
-- the user to the number of elements in the pSwapchainImages
-- array, and on return the variable is overwritten with the number of
-- structures actually written to pSwapchainImages. If the value
-- of pSwapchainImageCount is less than the number of
-- presentable images for swapchain, at most
-- pSwapchainImageCount structures will be written. If
-- pSwapchainImageCount is smaller than the number of
-- presentable images for swapchain, INCOMPLETE will be
-- returned instead of SUCCESS to indicate that not all the
-- available values were returned.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - pSwapchainImageCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pSwapchainImageCount is not
-- 0, and pSwapchainImages is not NULL,
-- pSwapchainImages must be a valid pointer to an array
-- of pSwapchainImageCount Image handles
-- - Both of device, and swapchain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Image, SwapchainKHR
getSwapchainImagesKHR :: forall io. MonadIO io => Device -> SwapchainKHR -> io (Result, "swapchainImages" ::: Vector Image)
-- | vkAcquireNextImageKHR - Retrieve the index of the next available
-- presentable image
--
-- Valid Usage
--
--
-- - swapchain must not be in the retired state
--
--
--
-- - If semaphore is not NULL_HANDLE it must be
-- unsignaled
-- - If semaphore is not NULL_HANDLE it must not
-- have any uncompleted signal or wait operations pending
-- - If fence is not NULL_HANDLE it must be
-- unsignaled and must not be associated with any other queue
-- command that has not yet completed execution on that queue
-- - semaphore and fence must not both be
-- equal to NULL_HANDLE
-- - If the number of currently acquired images is greater than the
-- difference between the number of images in swapchain and the
-- value of SurfaceCapabilitiesKHR::minImageCount as
-- returned by a call to getPhysicalDeviceSurfaceCapabilities2KHR
-- with the surface used to create swapchain,
-- timeout must not be UINT64_MAX
-- - semaphore must have a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - If semaphore is not NULL_HANDLE,
-- semaphore must be a valid Semaphore handle
-- - If fence is not NULL_HANDLE, fence
-- must be a valid Fence handle
-- - pImageIndex must be a valid pointer to a
-- uint32_t value
-- - If semaphore is a valid handle, it must have been
-- created, allocated, or retrieved from device
-- - If fence is a valid handle, it must have been
-- created, allocated, or retrieved from device
-- - Both of device, and swapchain that are valid
-- handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
--
-- - Host access to semaphore must be externally
-- synchronized
-- - Host access to fence must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Fence, Semaphore, SwapchainKHR
acquireNextImageKHR :: forall io. MonadIO io => Device -> SwapchainKHR -> ("timeout" ::: Word64) -> Semaphore -> Fence -> io (Result, "imageIndex" ::: Word32)
-- | A variant of acquireNextImageKHR which makes a *safe* FFI call
acquireNextImageKHRSafe :: forall io. MonadIO io => Device -> SwapchainKHR -> ("timeout" ::: Word64) -> Semaphore -> Fence -> io (Result, "imageIndex" ::: Word32)
-- | vkQueuePresentKHR - Queue an image for presentation
--
-- Description
--
-- Note
--
-- There is no requirement for an application to present images in the
-- same order that they were acquired - applications can arbitrarily
-- present any image that is currently acquired.
--
-- Valid Usage
--
--
-- - Each element of pSwapchains member of
-- pPresentInfo must be a swapchain that is created for a
-- surface for which presentation is supported from queue as
-- determined using a call to
-- getPhysicalDeviceSurfaceSupportKHR
--
--
--
-- - If more than one member of pSwapchains was created from a
-- display surface, all display surfaces referenced that refer to the
-- same display must use the same display mode
-- - When a semaphore wait operation referring to a binary semaphore
-- defined by the elements of the pWaitSemaphores member of
-- pPresentInfo executes on queue, there must be
-- no other queues waiting on the same semaphore
-- - All elements of the pWaitSemaphores member of
-- pPresentInfo must be semaphores that are signaled, or
-- have semaphore signal operations previously submitted for
-- execution
-- - All elements of the pWaitSemaphores member of
-- pPresentInfo must be created with a
-- SemaphoreType of SEMAPHORE_TYPE_BINARY
-- - All elements of the pWaitSemaphores member of
-- pPresentInfo must reference a semaphore signal
-- operation that has been submitted for execution and any semaphore
-- signal operations on which it depends (if any) must have also
-- been submitted for execution
--
--
-- Any writes to memory backing the images referenced by the
-- pImageIndices and pSwapchains members of
-- pPresentInfo, that are available before
-- queuePresentKHR is executed, are automatically made visible to
-- the read access performed by the presentation engine. This automatic
-- visibility operation for an image happens-after the semaphore signal
-- operation, and happens-before the presentation engine accesses the
-- image.
--
-- Queueing an image for presentation defines a set of queue
-- operations, including waiting on the semaphores and submitting a
-- presentation request to the presentation engine. However, the scope of
-- this set of queue operations does not include the actual processing of
-- the image by the presentation engine.
--
-- Note
--
-- The origin of the native orientation of the surface coordinate system
-- is not specified in the Vulkan specification; it depends on the
-- platform. For most platforms the origin is by default upper-left,
-- meaning the pixel of the presented Image at coordinates (0,0)
-- would appear at the upper left pixel of the platform surface (assuming
-- SURFACE_TRANSFORM_IDENTITY_BIT_KHR, and the display standing
-- the right way up).
--
-- If queuePresentKHR fails to enqueue the corresponding set of
-- queue operations, it may return ERROR_OUT_OF_HOST_MEMORY
-- or ERROR_OUT_OF_DEVICE_MEMORY. If it does, the implementation
-- must ensure that the state and contents of any resources or
-- synchronization primitives referenced is unaffected by the call or its
-- failure.
--
-- If queuePresentKHR fails in such a way that the implementation
-- is unable to make that guarantee, the implementation must
-- return ERROR_DEVICE_LOST.
--
-- However, if the presentation request is rejected by the presentation
-- engine with an error ERROR_OUT_OF_DATE_KHR,
-- ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT, or
-- ERROR_SURFACE_LOST_KHR, the set of queue operations are still
-- considered to be enqueued and thus any semaphore wait operation
-- specified in PresentInfoKHR will execute when the corresponding
-- queue operation is complete.
--
-- If any swapchain member of pPresentInfo was created
-- with FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT,
-- ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT will be returned if
-- that swapchain does not have exclusive full-screen access, possibly
-- for implementation-specific reasons outside of the application’s
-- control.
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
--
-- - pPresentInfo must be a valid pointer to a valid
-- PresentInfoKHR structure
--
--
-- Host Synchronization
--
--
-- - Host access to queue must be externally
-- synchronized
--
--
--
-- - Host access to pPresentInfo->pWaitSemaphores[]
-- must be externally synchronized
-- - Host access to pPresentInfo->pSwapchains[] must
-- be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PresentInfoKHR, Queue
queuePresentKHR :: forall a io. (Extendss PresentInfoKHR a, PokeChain a, MonadIO io) => Queue -> PresentInfoKHR a -> io Result
-- | vkGetDeviceGroupPresentCapabilitiesKHR - Query present capabilities
-- from other physical devices
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceGroupPresentCapabilitiesKHR
getDeviceGroupPresentCapabilitiesKHR :: forall io. MonadIO io => Device -> io DeviceGroupPresentCapabilitiesKHR
-- | vkGetDeviceGroupSurfacePresentModesKHR - Query present capabilities
-- for a surface
--
-- Description
--
-- The modes returned by this command are not invariant, and may
-- change in response to the surface being moved, resized, or occluded.
-- These modes must be a subset of the modes returned by
-- getDeviceGroupPresentCapabilitiesKHR.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to surface must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceGroupPresentModeFlagsKHR,
-- SurfaceKHR
getDeviceGroupSurfacePresentModesKHR :: forall io. MonadIO io => Device -> SurfaceKHR -> io ("modes" ::: DeviceGroupPresentModeFlagsKHR)
-- | vkAcquireNextImage2KHR - Retrieve the index of the next available
-- presentable image
--
-- Valid Usage
--
--
-- - If the number of currently acquired images is greater than the
-- difference between the number of images in the swapchain
-- member of pAcquireInfo and the value of
-- SurfaceCapabilitiesKHR::minImageCount as returned by a
-- call to getPhysicalDeviceSurfaceCapabilities2KHR with the
-- surface used to create swapchain, the
-- timeout member of pAcquireInfo must not be
-- UINT64_MAX
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pAcquireInfo must be a valid pointer to a valid
-- AcquireNextImageInfoKHR structure
-- - pImageIndex must be a valid pointer to a
-- uint32_t value
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AcquireNextImageInfoKHR, Device
acquireNextImage2KHR :: forall io. MonadIO io => Device -> ("acquireInfo" ::: AcquireNextImageInfoKHR) -> io (Result, "imageIndex" ::: Word32)
-- | A variant of acquireNextImage2KHR which makes a *safe* FFI call
acquireNextImage2KHRSafe :: forall io. MonadIO io => Device -> ("acquireInfo" ::: AcquireNextImageInfoKHR) -> io (Result, "imageIndex" ::: Word32)
-- | vkGetPhysicalDevicePresentRectanglesKHR - Query present rectangles for
-- a surface on a physical device
--
-- Description
--
-- If pRects is NULL, then the number of rectangles
-- used when presenting the given surface is returned in
-- pRectCount. Otherwise, pRectCount must point
-- to a variable set by the user to the number of elements in the
-- pRects array, and on return the variable is overwritten with
-- the number of structures actually written to pRects. If the
-- value of pRectCount is less than the number of rectangles, at
-- most pRectCount structures will be written. If
-- pRectCount is smaller than the number of rectangles used for
-- the given surface, INCOMPLETE will be returned instead
-- of SUCCESS to indicate that not all the available values were
-- returned.
--
-- The values returned by this command are not invariant, and may
-- change in response to the surface being moved, resized, or occluded.
--
-- The rectangles returned by this command must not overlap.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pRectCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pRectCount is not 0,
-- and pRects is not NULL, pRects must
-- be a valid pointer to an array of pRectCount Rect2D
-- structures
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Host Synchronization
--
--
-- - Host access to surface must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, Rect2D, SurfaceKHR
getPhysicalDevicePresentRectanglesKHR :: forall io. MonadIO io => PhysicalDevice -> SurfaceKHR -> io (Result, "rects" ::: Vector Rect2D)
-- | VkSwapchainCreateInfoKHR - Structure specifying parameters of a newly
-- created swapchain object
--
-- Description
--
-- Note
--
-- On some platforms, it is normal that maxImageExtent
-- may become (0, 0), for example when the window is
-- minimized. In such a case, it is not possible to create a swapchain
-- due to the Valid Usage requirements.
--
--
-- - imageArrayLayers is the number of views in a
-- multiview/stereo surface. For non-stereoscopic-3D applications, this
-- value is 1.
-- - imageUsage is a bitmask of ImageUsageFlagBits
-- describing the intended usage of the (acquired) swapchain images.
-- - imageSharingMode is the sharing mode used for the
-- image(s) of the swapchain.
-- - queueFamilyIndexCount is the number of queue families
-- having access to the image(s) of the swapchain when
-- imageSharingMode is SHARING_MODE_CONCURRENT.
-- - pQueueFamilyIndices is a pointer to an array of queue
-- family indices having access to the images(s) of the swapchain when
-- imageSharingMode is SHARING_MODE_CONCURRENT.
-- - preTransform is a SurfaceTransformFlagBitsKHR
-- value describing the transform, relative to the presentation engine’s
-- natural orientation, applied to the image content prior to
-- presentation. If it does not match the currentTransform value
-- returned by getPhysicalDeviceSurfaceCapabilitiesKHR, the
-- presentation engine will transform the image content as part of the
-- presentation operation.
-- - compositeAlpha is a CompositeAlphaFlagBitsKHR
-- value indicating the alpha compositing mode to use when this surface
-- is composited together with other surfaces on certain window
-- systems.
-- - presentMode is the presentation mode the swapchain will
-- use. A swapchain’s present mode determines how incoming present
-- requests will be processed and queued internally.
-- - clipped specifies whether the Vulkan implementation is
-- allowed to discard rendering operations that affect regions of the
-- surface that are not visible.
- If set to TRUE, the
-- presentable images associated with the swapchain may not own
-- all of their pixels. Pixels in the presentable images that correspond
-- to regions of the target surface obscured by another window on the
-- desktop, or subject to some other clipping mechanism will have
-- undefined content when read back. Fragment shaders may not
-- execute for these pixels, and thus any side effects they would have
-- had will not occur. TRUE value does not guarantee any clipping
-- will occur, but allows more optimal presentation methods to be used on
-- some platforms.
- If set to FALSE, presentable images
-- associated with the swapchain will own all of the pixels they
-- contain.
--
--
-- Note
--
-- Applications should set this value to TRUE if they do
-- not expect to read back the content of presentable images before
-- presenting them or after reacquiring them, and if their fragment
-- shaders do not have any side effects that require them to run for all
-- pixels in the presentable image.
--
--
-- - oldSwapchain is NULL_HANDLE, or the existing
-- non-retired swapchain currently associated with surface.
-- Providing a valid oldSwapchain may aid in the resource
-- reuse, and also allows the application to still present any images
-- that are already acquired from it.
--
--
-- Upon calling createSwapchainKHR with an oldSwapchain
-- that is not NULL_HANDLE, oldSwapchain is retired —
-- even if creation of the new swapchain fails. The new swapchain is
-- created in the non-retired state whether or not oldSwapchain
-- is NULL_HANDLE.
--
-- Upon calling createSwapchainKHR with an oldSwapchain
-- that is not NULL_HANDLE, any images from oldSwapchain
-- that are not acquired by the application may be freed by the
-- implementation, which may occur even if creation of the new
-- swapchain fails. The application can destroy
-- oldSwapchain to free all memory associated with
-- oldSwapchain.
--
-- Note
--
-- Multiple retired swapchains can be associated with the same
-- SurfaceKHR through multiple uses of oldSwapchain that
-- outnumber calls to destroySwapchainKHR.
--
-- After oldSwapchain is retired, the application can
-- pass to queuePresentKHR any images it had already acquired from
-- oldSwapchain. E.g., an application may present an image from
-- the old swapchain before an image from the new swapchain is ready to
-- be presented. As usual, queuePresentKHR may fail if
-- oldSwapchain has entered a state that causes
-- ERROR_OUT_OF_DATE_KHR to be returned.
--
-- The application can continue to use a shared presentable image
-- obtained from oldSwapchain until a presentable image is
-- acquired from the new swapchain, as long as it has not entered a state
-- that causes it to return ERROR_OUT_OF_DATE_KHR.
--
-- Valid Usage
--
--
--
--
-- - minImageCount must be less than or equal to the
-- value returned in the maxImageCount member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface if the
-- returned maxImageCount is not zero
-- - If presentMode is not
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR nor
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR, then
-- minImageCount must be greater than or equal to the
-- value returned in the minImageCount member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - minImageCount must be 1 if
-- presentMode is either
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR
-- - imageFormat and imageColorSpace must
-- match the format and colorSpace members,
-- respectively, of one of the SurfaceFormatKHR structures
-- returned by getPhysicalDeviceSurfaceFormatsKHR for the
-- surface
-- - imageExtent must be between
-- minImageExtent and maxImageExtent, inclusive, where
-- minImageExtent and maxImageExtent are members of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - imageExtent members width and height
-- must both be non-zero
-- - imageArrayLayers must be greater than 0
-- and less than or equal to the maxImageArrayLayers member of
-- the SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - If presentMode is PRESENT_MODE_IMMEDIATE_KHR,
-- PRESENT_MODE_MAILBOX_KHR, PRESENT_MODE_FIFO_KHR or
-- PRESENT_MODE_FIFO_RELAXED_KHR, imageUsage must
-- be a subset of the supported usage flags present in the
-- supportedUsageFlags member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for
-- surface
-- - If presentMode is
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR, imageUsage
-- must be a subset of the supported usage flags present in the
-- sharedPresentSupportedUsageFlags member of the
-- SharedPresentSurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilities2KHR for
-- surface
-- - If imageSharingMode is SHARING_MODE_CONCURRENT,
-- pQueueFamilyIndices must be a valid pointer to an
-- array of queueFamilyIndexCount uint32_t values
-- - If imageSharingMode is SHARING_MODE_CONCURRENT,
-- queueFamilyIndexCount must be greater than
-- 1
-- - If imageSharingMode is SHARING_MODE_CONCURRENT,
-- each element of pQueueFamilyIndices must be unique and
-- must be less than pQueueFamilyPropertyCount returned
-- by either getPhysicalDeviceQueueFamilyProperties or
-- getPhysicalDeviceQueueFamilyProperties2 for the
-- physicalDevice that was used to create device
-- - preTransform must be one of the bits present in
-- the supportedTransforms member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - compositeAlpha must be one of the bits present in
-- the supportedCompositeAlpha member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - presentMode must be one of the
-- PresentModeKHR values returned by
-- getPhysicalDeviceSurfacePresentModesKHR for the surface
-- - If the logical device was created with
-- DeviceGroupDeviceCreateInfo::physicalDeviceCount equal
-- to 1, flags must not contain
-- SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR
-- - If oldSwapchain is not NULL_HANDLE,
-- oldSwapchain must be a non-retired swapchain
-- associated with native window referred to by surface
-- - The implied image creation parameters of the swapchain
-- must be supported as reported by
-- getPhysicalDeviceImageFormatProperties
-- - If flags contains
-- SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR then the pNext
-- chain must include a ImageFormatListCreateInfo structure
-- with a viewFormatCount greater than zero and
-- pViewFormats must have an element equal to
-- imageFormat
-- - If flags contains
-- SWAPCHAIN_CREATE_PROTECTED_BIT_KHR, then
-- SurfaceProtectedCapabilitiesKHR::supportsProtected
-- must be TRUE in the
-- SurfaceProtectedCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilities2KHR for
-- surface
-- - If the pNext chain includes a
-- SurfaceFullScreenExclusiveInfoEXT structure with its
-- fullScreenExclusive member set to
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT, and
-- surface was created using createWin32SurfaceKHR, a
-- SurfaceFullScreenExclusiveWin32InfoEXT structure must be
-- included in the pNext chain
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- DeviceGroupSwapchainCreateInfoKHR,
-- ImageFormatListCreateInfo,
-- SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SwapchainCounterCreateInfoEXT, or
-- SwapchainDisplayNativeHdrCreateInfoAMD
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be a valid combination of
-- SwapchainCreateFlagBitsKHR values
-- - surface must be a valid SurfaceKHR
-- handle
-- - imageFormat must be a valid Format
-- value
-- - imageColorSpace must be a valid
-- ColorSpaceKHR value
-- - imageUsage must be a valid combination of
-- ImageUsageFlagBits values
-- - imageUsage must not be 0
-- - imageSharingMode must be a valid
-- SharingMode value
-- - preTransform must be a valid
-- SurfaceTransformFlagBitsKHR value
-- - compositeAlpha must be a valid
-- CompositeAlphaFlagBitsKHR value
-- - presentMode must be a valid PresentModeKHR
-- value
-- - If oldSwapchain is not NULL_HANDLE,
-- oldSwapchain must be a valid SwapchainKHR
-- handle
-- - If oldSwapchain is a valid handle, it must have
-- been created, allocated, or retrieved from surface
-- - Both of oldSwapchain, and surface that are valid
-- handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Instance
--
--
-- See Also
--
-- Bool32, ColorSpaceKHR, CompositeAlphaFlagBitsKHR,
-- Extent2D, Format, ImageUsageFlags,
-- PresentModeKHR, SharingMode, StructureType,
-- SurfaceKHR, SurfaceTransformFlagBitsKHR,
-- SwapchainCreateFlagsKHR, SwapchainKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR
data SwapchainCreateInfoKHR (es :: [Type])
SwapchainCreateInfoKHR :: Chain es -> SwapchainCreateFlagsKHR -> SurfaceKHR -> Word32 -> Format -> ColorSpaceKHR -> Extent2D -> Word32 -> ImageUsageFlags -> SharingMode -> Vector Word32 -> SurfaceTransformFlagBitsKHR -> CompositeAlphaFlagBitsKHR -> PresentModeKHR -> Bool -> SwapchainKHR -> SwapchainCreateInfoKHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Chain es
-- | flags is a bitmask of SwapchainCreateFlagBitsKHR
-- indicating parameters of the swapchain creation.
[$sel:flags:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SwapchainCreateFlagsKHR
-- | surface is the surface onto which the swapchain will present
-- images. If the creation succeeds, the swapchain becomes associated
-- with surface.
[$sel:surface:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SurfaceKHR
-- | minImageCount is the minimum number of presentable images
-- that the application needs. The implementation will either create the
-- swapchain with at least that many images, or it will fail to create
-- the swapchain.
[$sel:minImageCount:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Word32
-- | imageFormat is a Format value specifying the format
-- the swapchain image(s) will be created with.
[$sel:imageFormat:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Format
-- | imageColorSpace is a ColorSpaceKHR value specifying
-- the way the swapchain interprets image data.
[$sel:imageColorSpace:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> ColorSpaceKHR
-- | imageExtent is the size (in pixels) of the swapchain
-- image(s). The behavior is platform-dependent if the image extent does
-- not match the surface’s currentExtent as returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR.
[$sel:imageExtent:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Extent2D
[$sel:imageArrayLayers:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Word32
[$sel:imageUsage:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> ImageUsageFlags
[$sel:imageSharingMode:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SharingMode
[$sel:queueFamilyIndices:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Vector Word32
[$sel:preTransform:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SurfaceTransformFlagBitsKHR
[$sel:compositeAlpha:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> CompositeAlphaFlagBitsKHR
[$sel:presentMode:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> PresentModeKHR
[$sel:clipped:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Bool
[$sel:oldSwapchain:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SwapchainKHR
-- | VkPresentInfoKHR - Structure describing parameters of a queue
-- presentation
--
-- Description
--
-- Before an application can present an image, the image’s layout
-- must be transitioned to the IMAGE_LAYOUT_PRESENT_SRC_KHR
-- layout, or for a shared presentable image the
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR layout.
--
-- Note
--
-- When transitioning the image to IMAGE_LAYOUT_SHARED_PRESENT_KHR
-- or IMAGE_LAYOUT_PRESENT_SRC_KHR, there is no need to delay
-- subsequent processing, or perform any visibility operations (as
-- queuePresentKHR performs automatic visibility operations). To
-- achieve this, the dstAccessMask member of the
-- ImageMemoryBarrier should be set to 0, and the
-- dstStageMask parameter should be set to
-- PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT.
--
-- Valid Usage
--
--
-- - Each element of pImageIndices must be the index of
-- a presentable image acquired from the swapchain specified by the
-- corresponding element of the pSwapchains array, and the
-- presented image subresource must be in the
-- IMAGE_LAYOUT_PRESENT_SRC_KHR or
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR layout at the time the
-- operation is executed on a Device
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of DeviceGroupPresentInfoKHR,
-- DisplayPresentInfoKHR, PresentFrameTokenGGP,
-- PresentRegionsKHR, or PresentTimesInfoGOOGLE
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - If waitSemaphoreCount is not 0,
-- pWaitSemaphores must be a valid pointer to an array of
-- waitSemaphoreCount valid Semaphore handles
-- - pSwapchains must be a valid pointer to an array of
-- swapchainCount valid SwapchainKHR handles
-- - pImageIndices must be a valid pointer to an array
-- of swapchainCount uint32_t values
-- - If pResults is not NULL, pResults
-- must be a valid pointer to an array of swapchainCount
-- Result values
-- - swapchainCount must be greater than
-- 0
-- - Both of the elements of pSwapchains, and the elements of
-- pWaitSemaphores that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Instance
--
--
-- See Also
--
-- Result, Semaphore, StructureType,
-- SwapchainKHR, queuePresentKHR
data PresentInfoKHR (es :: [Type])
PresentInfoKHR :: Chain es -> Vector Semaphore -> Vector SwapchainKHR -> Vector Word32 -> Ptr Result -> PresentInfoKHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PresentInfoKHR] :: PresentInfoKHR (es :: [Type]) -> Chain es
-- | pWaitSemaphores is NULL or a pointer to an array of
-- Semaphore objects with waitSemaphoreCount entries, and
-- specifies the semaphores to wait for before issuing the present
-- request.
[$sel:waitSemaphores:PresentInfoKHR] :: PresentInfoKHR (es :: [Type]) -> Vector Semaphore
-- | pSwapchains is a pointer to an array of SwapchainKHR
-- objects with swapchainCount entries. A given swapchain
-- must not appear in this list more than once.
[$sel:swapchains:PresentInfoKHR] :: PresentInfoKHR (es :: [Type]) -> Vector SwapchainKHR
-- | pImageIndices is a pointer to an array of indices into the
-- array of each swapchain’s presentable images, with
-- swapchainCount entries. Each entry in this array identifies
-- the image to present on the corresponding entry in the
-- pSwapchains array.
[$sel:imageIndices:PresentInfoKHR] :: PresentInfoKHR (es :: [Type]) -> Vector Word32
-- | pResults is a pointer to an array of Result typed
-- elements with swapchainCount entries. Applications that do
-- not need per-swapchain results can use NULL for
-- pResults. If non-NULL, each entry in
-- pResults will be set to the Result for presenting the
-- swapchain corresponding to the same index in pSwapchains.
[$sel:results:PresentInfoKHR] :: PresentInfoKHR (es :: [Type]) -> Ptr Result
-- | VkDeviceGroupPresentCapabilitiesKHR - Present capabilities from other
-- physical devices
--
-- Description
--
-- modes always has
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR set.
--
-- The present mode flags are also used when presenting an image, in
-- DeviceGroupPresentInfoKHR::mode.
--
-- If a device group only includes a single physical device, then
-- modes must equal
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceGroupPresentModeFlagsKHR, StructureType,
-- getDeviceGroupPresentCapabilitiesKHR
data DeviceGroupPresentCapabilitiesKHR
DeviceGroupPresentCapabilitiesKHR :: Vector Word32 -> DeviceGroupPresentModeFlagsKHR -> DeviceGroupPresentCapabilitiesKHR
-- | presentMask is an array of MAX_DEVICE_GROUP_SIZE
-- uint32_t masks, where the mask at element i is non-zero if
-- physical device i has a presentation engine, and where bit j is set in
-- element i if physical device i can present swapchain images
-- from physical device j. If element i is non-zero, then bit i
-- must be set.
[$sel:presentMask:DeviceGroupPresentCapabilitiesKHR] :: DeviceGroupPresentCapabilitiesKHR -> Vector Word32
-- | modes is a bitmask of
-- DeviceGroupPresentModeFlagBitsKHR indicating which device group
-- presentation modes are supported.
[$sel:modes:DeviceGroupPresentCapabilitiesKHR] :: DeviceGroupPresentCapabilitiesKHR -> DeviceGroupPresentModeFlagsKHR
-- | VkImageSwapchainCreateInfoKHR - Specify that an image will be bound to
-- swapchain memory
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, SwapchainKHR
data ImageSwapchainCreateInfoKHR
ImageSwapchainCreateInfoKHR :: SwapchainKHR -> ImageSwapchainCreateInfoKHR
-- | swapchain is NULL_HANDLE or a handle of a swapchain
-- that the image will be bound to.
[$sel:swapchain:ImageSwapchainCreateInfoKHR] :: ImageSwapchainCreateInfoKHR -> SwapchainKHR
-- | VkBindImageMemorySwapchainInfoKHR - Structure specifying swapchain
-- image memory to bind to
--
-- Description
--
-- If swapchain is not NULL, the swapchain and
-- imageIndex are used to determine the memory that the image is
-- bound to, instead of memory and memoryOffset.
--
-- Memory can be bound to a swapchain and use the
-- pDeviceIndices or pSplitInstanceBindRegions members
-- of BindImageMemoryDeviceGroupInfo.
--
-- Valid Usage
--
--
-- - imageIndex must be less than the number of images
-- in swapchain
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
-- See Also
--
-- StructureType, SwapchainKHR
data BindImageMemorySwapchainInfoKHR
BindImageMemorySwapchainInfoKHR :: SwapchainKHR -> Word32 -> BindImageMemorySwapchainInfoKHR
-- | swapchain is NULL_HANDLE or a swapchain handle.
[$sel:swapchain:BindImageMemorySwapchainInfoKHR] :: BindImageMemorySwapchainInfoKHR -> SwapchainKHR
-- | imageIndex is an image index within swapchain.
[$sel:imageIndex:BindImageMemorySwapchainInfoKHR] :: BindImageMemorySwapchainInfoKHR -> Word32
-- | VkAcquireNextImageInfoKHR - Structure specifying parameters of the
-- acquire
--
-- Description
--
-- If acquireNextImageKHR is used, the device mask is considered
-- to include all physical devices in the logical device.
--
-- Note
--
-- acquireNextImage2KHR signals at most one semaphore, even if the
-- application requests waiting for multiple physical devices to be ready
-- via the deviceMask. However, only a single physical device
-- can wait on that semaphore, since the semaphore becomes
-- unsignaled when the wait succeeds. For other physical devices to wait
-- for the image to be ready, it is necessary for the application to
-- submit semaphore signal operation(s) to that first physical device to
-- signal additional semaphore(s) after the wait succeeds, which the
-- other physical device(s) can wait upon.
--
-- Valid Usage
--
--
-- - swapchain must not be in the retired state
--
--
--
-- - If semaphore is not NULL_HANDLE it must be
-- unsignaled
-- - If semaphore is not NULL_HANDLE it must not
-- have any uncompleted signal or wait operations pending
-- - If fence is not NULL_HANDLE it must be
-- unsignaled and must not be associated with any other queue
-- command that has not yet completed execution on that queue
-- - semaphore and fence must not both be
-- equal to NULL_HANDLE
-- - deviceMask must be a valid device mask
-- - deviceMask must not be zero
-- - semaphore must have a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - If semaphore is not NULL_HANDLE,
-- semaphore must be a valid Semaphore handle
-- - If fence is not NULL_HANDLE, fence
-- must be a valid Fence handle
-- - Each of fence, semaphore, and swapchain
-- that are valid handles of non-ignored parameters must have been
-- created, allocated, or retrieved from the same Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
--
-- - Host access to semaphore must be externally
-- synchronized
-- - Host access to fence must be externally
-- synchronized
--
--
-- See Also
--
-- Fence, Semaphore, StructureType,
-- SwapchainKHR, acquireNextImage2KHR
data AcquireNextImageInfoKHR
AcquireNextImageInfoKHR :: SwapchainKHR -> Word64 -> Semaphore -> Fence -> Word32 -> AcquireNextImageInfoKHR
-- | swapchain is a non-retired swapchain from which an image is
-- acquired.
[$sel:swapchain:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> SwapchainKHR
-- | timeout specifies how long the function waits, in
-- nanoseconds, if no image is available.
[$sel:timeout:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Word64
-- | semaphore is NULL_HANDLE or a semaphore to signal.
[$sel:semaphore:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Semaphore
-- | fence is NULL_HANDLE or a fence to signal.
[$sel:fence:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Fence
-- | deviceMask is a mask of physical devices for which the
-- swapchain image will be ready to use when the semaphore or fence is
-- signaled.
[$sel:deviceMask:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Word32
-- | VkDeviceGroupPresentInfoKHR - Mode and mask controlling which physical
-- devices' images are presented
--
-- Description
--
-- If mode is DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR,
-- then each element of pDeviceMasks selects which instance of
-- the swapchain image is presented. Each element of
-- pDeviceMasks must have exactly one bit set, and the
-- corresponding physical device must have a presentation engine
-- as reported by DeviceGroupPresentCapabilitiesKHR.
--
-- If mode is DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR,
-- then each element of pDeviceMasks selects which instance of
-- the swapchain image is presented. Each element of
-- pDeviceMasks must have exactly one bit set, and some
-- physical device in the logical device must include that bit in
-- its DeviceGroupPresentCapabilitiesKHR::presentMask.
--
-- If mode is DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR, then
-- each element of pDeviceMasks selects which instances of the
-- swapchain image are component-wise summed and the sum of those images
-- is presented. If the sum in any component is outside the representable
-- range, the value of that component is undefined. Each element of
-- pDeviceMasks must have a value for which all set bits
-- are set in one of the elements of
-- DeviceGroupPresentCapabilitiesKHR::presentMask.
--
-- If mode is
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR, then each
-- element of pDeviceMasks selects which instance(s) of the
-- swapchain images are presented. For each bit set in each element of
-- pDeviceMasks, the corresponding physical device must
-- have a presentation engine as reported by
-- DeviceGroupPresentCapabilitiesKHR.
--
-- If DeviceGroupPresentInfoKHR is not provided or
-- swapchainCount is zero then the masks are considered to be
-- 1. If DeviceGroupPresentInfoKHR is not provided,
-- mode is considered to be
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR.
--
-- Valid Usage
--
--
-- - swapchainCount must equal 0 or
-- PresentInfoKHR::swapchainCount
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If swapchainCount is not 0,
-- pDeviceMasks must be a valid pointer to an array of
-- swapchainCount uint32_t values
-- - mode must be a valid
-- DeviceGroupPresentModeFlagBitsKHR value
--
--
-- See Also
--
-- DeviceGroupPresentModeFlagBitsKHR, StructureType
data DeviceGroupPresentInfoKHR
DeviceGroupPresentInfoKHR :: Vector Word32 -> DeviceGroupPresentModeFlagBitsKHR -> DeviceGroupPresentInfoKHR
-- | pDeviceMasks is a pointer to an array of device masks, one
-- for each element of PresentInfoKHR::pSwapchains.
[$sel:deviceMasks:DeviceGroupPresentInfoKHR] :: DeviceGroupPresentInfoKHR -> Vector Word32
-- | mode is the device group present mode that will be used for
-- this present.
[$sel:mode:DeviceGroupPresentInfoKHR] :: DeviceGroupPresentInfoKHR -> DeviceGroupPresentModeFlagBitsKHR
-- | VkDeviceGroupSwapchainCreateInfoKHR - Structure specifying parameters
-- of a newly created swapchain object
--
-- Description
--
-- If this structure is not present, modes is considered to be
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceGroupPresentModeFlagsKHR, StructureType
data DeviceGroupSwapchainCreateInfoKHR
DeviceGroupSwapchainCreateInfoKHR :: DeviceGroupPresentModeFlagsKHR -> DeviceGroupSwapchainCreateInfoKHR
-- | modes is a bitfield of modes that the swapchain can be
-- used with.
--
-- modes must be a valid combination of
-- DeviceGroupPresentModeFlagBitsKHR values
--
-- modes must not be 0
[$sel:modes:DeviceGroupSwapchainCreateInfoKHR] :: DeviceGroupSwapchainCreateInfoKHR -> DeviceGroupPresentModeFlagsKHR
-- | VkDeviceGroupPresentModeFlagBitsKHR - Bitmask specifying supported
-- device group present modes
--
-- See Also
--
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupPresentModeFlagsKHR
newtype DeviceGroupPresentModeFlagBitsKHR
DeviceGroupPresentModeFlagBitsKHR :: Flags -> DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR specifies that any
-- physical device with a presentation engine can present its own
-- swapchain images.
pattern DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR specifies that any
-- physical device with a presentation engine can present
-- swapchain images from any physical device in its presentMask.
pattern DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR specifies that any
-- physical device with a presentation engine can present the sum
-- of swapchain images from any physical devices in its
-- presentMask.
pattern DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR specifies
-- that multiple physical devices with a presentation engine can
-- each present their own swapchain images.
pattern DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
type DeviceGroupPresentModeFlagsKHR = DeviceGroupPresentModeFlagBitsKHR
-- | VkSwapchainCreateFlagBitsKHR - Bitmask controlling swapchain creation
--
-- See Also
--
-- SwapchainCreateFlagsKHR
newtype SwapchainCreateFlagBitsKHR
SwapchainCreateFlagBitsKHR :: Flags -> SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR specifies that the
-- images of the swapchain can be used to create a
-- ImageView with a different format than what the swapchain was
-- created with. The list of allowed image view formats are specified by
-- adding a ImageFormatListCreateInfo structure to the
-- pNext chain of SwapchainCreateInfoKHR. In addition,
-- this flag also specifies that the swapchain can be created with
-- usage flags that are not supported for the format the swapchain is
-- created with but are supported for at least one of the allowed image
-- view formats.
pattern SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR specifies
-- that images created from the swapchain (i.e. with the
-- swapchain member of ImageSwapchainCreateInfoKHR set to
-- this swapchain’s handle) must use
-- IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT.
pattern SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_PROTECTED_BIT_KHR specifies that images
-- created from the swapchain are protected images.
pattern SWAPCHAIN_CREATE_PROTECTED_BIT_KHR :: SwapchainCreateFlagBitsKHR
type SwapchainCreateFlagsKHR = SwapchainCreateFlagBitsKHR
type KHR_SWAPCHAIN_SPEC_VERSION = 70
pattern KHR_SWAPCHAIN_SPEC_VERSION :: forall a. Integral a => a
type KHR_SWAPCHAIN_EXTENSION_NAME = "VK_KHR_swapchain"
pattern KHR_SWAPCHAIN_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkPresentModeKHR - presentation mode supported for a surface
--
-- Description
--
-- The supported ImageUsageFlagBits of the presentable images of a
-- swapchain created for a surface may differ depending on the
-- presentation mode, and can be determined as per the table below:
--
-- TODO: table
--
-- Presentable image usage queries
--
-- Note
--
-- For reference, the mode indicated by PRESENT_MODE_FIFO_KHR is
-- equivalent to the behavior of {wgl|glX|egl}SwapBuffers with a swap
-- interval of 1, while the mode indicated by
-- PRESENT_MODE_FIFO_RELAXED_KHR is equivalent to the behavior of
-- {wgl|glX}SwapBuffers with a swap interval of -1 (from the
-- {WGL|GLX}_EXT_swap_control_tear extensions).
--
-- See Also
--
-- SwapchainCreateInfoKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR
newtype PresentModeKHR
PresentModeKHR :: Int32 -> PresentModeKHR
-- | PRESENT_MODE_IMMEDIATE_KHR specifies that the presentation
-- engine does not wait for a vertical blanking period to update the
-- current image, meaning this mode may result in visible tearing.
-- No internal queuing of presentation requests is needed, as the
-- requests are applied immediately.
pattern PRESENT_MODE_IMMEDIATE_KHR :: PresentModeKHR
-- | PRESENT_MODE_MAILBOX_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal single-entry
-- queue is used to hold pending presentation requests. If the queue is
-- full when a new presentation request is received, the new request
-- replaces the existing entry, and any images associated with the prior
-- entry become available for re-use by the application. One request is
-- removed from the queue and processed during each vertical blanking
-- period in which the queue is non-empty.
pattern PRESENT_MODE_MAILBOX_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal queue is used to
-- hold pending presentation requests. New requests are appended to the
-- end of the queue, and one request is removed from the beginning of the
-- queue and processed during each vertical blanking period in which the
-- queue is non-empty. This is the only value of presentMode
-- that is required to be supported.
pattern PRESENT_MODE_FIFO_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_RELAXED_KHR specifies that the presentation
-- engine generally waits for the next vertical blanking period to update
-- the current image. If a vertical blanking period has already passed
-- since the last update of the current image then the presentation
-- engine does not wait for another vertical blanking period for the
-- update, meaning this mode may result in visible tearing in this
-- case. This mode is useful for reducing visual stutter with an
-- application that will mostly present a new image before the next
-- vertical blanking period, but may occasionally be late, and present a
-- new image just after the next vertical blanking period. An internal
-- queue is used to hold pending presentation requests. New requests are
-- appended to the end of the queue, and one request is removed from the
-- beginning of the queue and processed during or after each vertical
-- blanking period in which the queue is non-empty.
pattern PRESENT_MODE_FIFO_RELAXED_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine periodically updates the current image on its
-- regular refresh cycle. The application is only required to make one
-- initial presentation request, after which the presentation engine
-- must update the current image without any need for further
-- presentation requests. The application can indicate the image
-- contents have been updated by making a presentation request, but this
-- does not guarantee the timing of when it will be updated. This mode
-- may result in visible tearing if rendering to the image is not
-- timed correctly.
pattern PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine is only required to update the current image after
-- a new presentation request is received. Therefore the application
-- must make a presentation request whenever an update is
-- required. However, the presentation engine may update the
-- current image at any point, meaning this mode may result in
-- visible tearing.
pattern PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR :: PresentModeKHR
-- | VkColorSpaceKHR - supported color space of the presentation engine
--
-- Description
--
-- Note
--
-- In the initial release of the VK_KHR_surface and
-- VK_KHR_swapchain extensions, the token
-- VK_COLORSPACE_SRGB_NONLINEAR_KHR was used. Starting in the
-- 2016-05-13 updates to the extension branches, matching release 1.0.13
-- of the core API specification, COLOR_SPACE_SRGB_NONLINEAR_KHR
-- is used instead for consistency with Vulkan naming rules. The older
-- enum is still available for backwards compatibility.
--
-- Note
--
-- In older versions of this extension
-- COLOR_SPACE_DISPLAY_P3_LINEAR_EXT was misnamed
-- COLOR_SPACE_DCI_P3_LINEAR_EXT. This has been updated to
-- indicate that it uses RGB color encoding, not XYZ. The old name is
-- deprecated but is maintained for backwards compatibility.
--
-- The color components of non-linear color space swap chain images
-- must have had the appropriate transfer function applied. The
-- color space selected for the swap chain image will not affect the
-- processing of data written into the image by the implementation.
-- Vulkan requires that all implementations support the sRGB transfer
-- function by use of an SRGB pixel format. Other transfer functions,
-- such as SMPTE 170M or SMPTE2084, can be performed by the
-- application shader. This extension defines enums for
-- ColorSpaceKHR that correspond to the following color spaces:
--
-- TODO: table
--
-- Color Spaces and Attributes
--
-- The transfer functions are described in the “Transfer Functions”
-- chapter of the Khronos Data Format Specification.
--
-- Except Display-P3 OETF, which is:
--
-- [begin{aligned} E & = begin{cases} 1.055 times L^{1 over 2.4} -
-- 0.055 & text{for} 0.0030186 leq L leq 1 -- 12.92 times L &
-- text{for} 0 leq L < 0.0030186
newtype ColorSpaceKHR
ColorSpaceKHR :: Int32 -> ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_LINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_SRGB_NONLINEAR_KHR specifies support for the sRGB
-- color space.
pattern COLOR_SPACE_SRGB_NONLINEAR_KHR :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_NATIVE_AMD specifies support for the
-- display’s native color space. This matches the color space
-- expectations of AMD’s FreeSync2 standard, for displays supporting it.
pattern COLOR_SPACE_DISPLAY_NATIVE_AMD :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT specifies support for
-- the extended sRGB color space to be displayed using an sRGB EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_PASS_THROUGH_EXT specifies that color components
-- are used “as is”. This is intended to allow applications to supply
-- data for color spaces not described here.
pattern COLOR_SPACE_PASS_THROUGH_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_NONLINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using the Gamma 2.2 EOTF.
pattern COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_LINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_ADOBERGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_HLG_EXT specifies support for the HDR10
-- (BT2020 color space) to be displayed using the Hybrid Log Gamma (HLG)
-- EOTF.
pattern COLOR_SPACE_HDR10_HLG_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DOLBYVISION_EXT specifies support for the Dolby
-- Vision (BT2020 color space), proprietary encoding, to be displayed
-- using the SMPTE ST2084 EOTF.
pattern COLOR_SPACE_DOLBYVISION_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_ST2084_EXT specifies support for the HDR10
-- (BT2020 color) space to be displayed using the SMPTE ST2084 Perceptual
-- Quantizer (PQ) EOTF.
pattern COLOR_SPACE_HDR10_ST2084_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT2020_LINEAR_EXT specifies support for the BT2020
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT2020_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_NONLINEAR_EXT specifies support for the BT709
-- color space to be displayed using the SMPTE 170M EOTF.
pattern COLOR_SPACE_BT709_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_LINEAR_EXT specifies support for the BT709
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT709_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DCI_P3_NONLINEAR_EXT specifies support for the
-- DCI-P3 color space to be displayed using the DCI-P3 EOTF. Note that
-- values in such an image are interpreted as XYZ encoded color data by
-- the presentation engine.
pattern COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT specifies support for the
-- extended sRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using an sRGB-like EOTF
-- (defined below).
pattern COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | VkCompositeAlphaFlagBitsKHR - alpha compositing modes supported on a
-- device
--
-- Description
--
-- These values are described as follows:
--
-- See Also
--
-- CompositeAlphaFlagsKHR, SwapchainCreateInfoKHR
newtype CompositeAlphaFlagBitsKHR
CompositeAlphaFlagBitsKHR :: Flags -> CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_OPAQUE_BIT_KHR: The alpha channel, if it
-- exists, of the images is ignored in the compositing process. Instead,
-- the image is treated as if it has a constant alpha of 1.0.
pattern COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are expected to already be multiplied
-- by the alpha channel by the application.
pattern COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are not expected to already be
-- multiplied by the alpha channel by the application; instead, the
-- compositor will multiply the non-alpha channels of the image by the
-- alpha channel during compositing.
pattern COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_INHERIT_BIT_KHR: The way in which the
-- presentation engine treats the alpha channel in the images is unknown
-- to the Vulkan API. Instead, the application is responsible for setting
-- the composite alpha blending mode using native window system commands.
-- If the application does not set the blending mode using native window
-- system commands, then a platform-specific default will be used.
pattern COMPOSITE_ALPHA_INHERIT_BIT_KHR :: CompositeAlphaFlagBitsKHR
type CompositeAlphaFlagsKHR = CompositeAlphaFlagBitsKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es)
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentCapabilitiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentCapabilitiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateInfoKHR es)
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_swapchain.SwapchainCreateFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentCapabilitiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentCapabilitiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentCapabilitiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentCapabilitiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupSwapchainCreateInfoKHR
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_swapchain.DeviceGroupPresentModeFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.AcquireNextImageInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.BindImageMemorySwapchainInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_swapchain.ImageSwapchainCreateInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_swapchain.PresentInfoKHR es)
module Vulkan.Extensions.VK_KHR_swapchain_mutable_format
type KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION = 1
pattern KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION :: forall a. Integral a => a
type KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME = "VK_KHR_swapchain_mutable_format"
pattern KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSwapchainCreateFlagBitsKHR - Bitmask controlling swapchain creation
--
-- See Also
--
-- SwapchainCreateFlagsKHR
newtype SwapchainCreateFlagBitsKHR
SwapchainCreateFlagBitsKHR :: Flags -> SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR specifies that the
-- images of the swapchain can be used to create a
-- ImageView with a different format than what the swapchain was
-- created with. The list of allowed image view formats are specified by
-- adding a ImageFormatListCreateInfo structure to the
-- pNext chain of SwapchainCreateInfoKHR. In addition,
-- this flag also specifies that the swapchain can be created with
-- usage flags that are not supported for the format the swapchain is
-- created with but are supported for at least one of the allowed image
-- view formats.
pattern SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR specifies
-- that images created from the swapchain (i.e. with the
-- swapchain member of ImageSwapchainCreateInfoKHR set to
-- this swapchain’s handle) must use
-- IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT.
pattern SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_PROTECTED_BIT_KHR specifies that images
-- created from the swapchain are protected images.
pattern SWAPCHAIN_CREATE_PROTECTED_BIT_KHR :: SwapchainCreateFlagBitsKHR
type SwapchainCreateFlagsKHR = SwapchainCreateFlagBitsKHR
module Vulkan.Extensions.VK_EXT_swapchain_colorspace
pattern COLOR_SPACE_DCI_P3_LINEAR_EXT :: ColorSpaceKHR
type EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION = 4
pattern EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION :: forall a. Integral a => a
type EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME = "VK_EXT_swapchain_colorspace"
pattern EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkColorSpaceKHR - supported color space of the presentation engine
--
-- Description
--
-- Note
--
-- In the initial release of the VK_KHR_surface and
-- VK_KHR_swapchain extensions, the token
-- VK_COLORSPACE_SRGB_NONLINEAR_KHR was used. Starting in the
-- 2016-05-13 updates to the extension branches, matching release 1.0.13
-- of the core API specification, COLOR_SPACE_SRGB_NONLINEAR_KHR
-- is used instead for consistency with Vulkan naming rules. The older
-- enum is still available for backwards compatibility.
--
-- Note
--
-- In older versions of this extension
-- COLOR_SPACE_DISPLAY_P3_LINEAR_EXT was misnamed
-- COLOR_SPACE_DCI_P3_LINEAR_EXT. This has been updated to
-- indicate that it uses RGB color encoding, not XYZ. The old name is
-- deprecated but is maintained for backwards compatibility.
--
-- The color components of non-linear color space swap chain images
-- must have had the appropriate transfer function applied. The
-- color space selected for the swap chain image will not affect the
-- processing of data written into the image by the implementation.
-- Vulkan requires that all implementations support the sRGB transfer
-- function by use of an SRGB pixel format. Other transfer functions,
-- such as SMPTE 170M or SMPTE2084, can be performed by the
-- application shader. This extension defines enums for
-- ColorSpaceKHR that correspond to the following color spaces:
--
-- TODO: table
--
-- Color Spaces and Attributes
--
-- The transfer functions are described in the “Transfer Functions”
-- chapter of the Khronos Data Format Specification.
--
-- Except Display-P3 OETF, which is:
--
-- [begin{aligned} E & = begin{cases} 1.055 times L^{1 over 2.4} -
-- 0.055 & text{for} 0.0030186 leq L leq 1 -- 12.92 times L &
-- text{for} 0 leq L < 0.0030186
newtype ColorSpaceKHR
ColorSpaceKHR :: Int32 -> ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_LINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_SRGB_NONLINEAR_KHR specifies support for the sRGB
-- color space.
pattern COLOR_SPACE_SRGB_NONLINEAR_KHR :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_NATIVE_AMD specifies support for the
-- display’s native color space. This matches the color space
-- expectations of AMD’s FreeSync2 standard, for displays supporting it.
pattern COLOR_SPACE_DISPLAY_NATIVE_AMD :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT specifies support for
-- the extended sRGB color space to be displayed using an sRGB EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_PASS_THROUGH_EXT specifies that color components
-- are used “as is”. This is intended to allow applications to supply
-- data for color spaces not described here.
pattern COLOR_SPACE_PASS_THROUGH_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_NONLINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using the Gamma 2.2 EOTF.
pattern COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_LINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_ADOBERGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_HLG_EXT specifies support for the HDR10
-- (BT2020 color space) to be displayed using the Hybrid Log Gamma (HLG)
-- EOTF.
pattern COLOR_SPACE_HDR10_HLG_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DOLBYVISION_EXT specifies support for the Dolby
-- Vision (BT2020 color space), proprietary encoding, to be displayed
-- using the SMPTE ST2084 EOTF.
pattern COLOR_SPACE_DOLBYVISION_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_ST2084_EXT specifies support for the HDR10
-- (BT2020 color) space to be displayed using the SMPTE ST2084 Perceptual
-- Quantizer (PQ) EOTF.
pattern COLOR_SPACE_HDR10_ST2084_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT2020_LINEAR_EXT specifies support for the BT2020
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT2020_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_NONLINEAR_EXT specifies support for the BT709
-- color space to be displayed using the SMPTE 170M EOTF.
pattern COLOR_SPACE_BT709_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_LINEAR_EXT specifies support for the BT709
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT709_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DCI_P3_NONLINEAR_EXT specifies support for the
-- DCI-P3 color space to be displayed using the DCI-P3 EOTF. Note that
-- values in such an image are interpreted as XYZ encoded color data by
-- the presentation engine.
pattern COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT specifies support for the
-- extended sRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using an sRGB-like EOTF
-- (defined below).
pattern COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: ColorSpaceKHR
module Vulkan.Extensions.VK_KHR_shared_presentable_image
-- | vkGetSwapchainStatusKHR - Get a swapchain’s status
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - Both of device, and swapchain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SwapchainKHR
getSwapchainStatusKHR :: forall io. MonadIO io => Device -> SwapchainKHR -> io Result
-- | VkSharedPresentSurfaceCapabilitiesKHR - structure describing
-- capabilities of a surface for shared presentation
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageUsageFlags, StructureType
data SharedPresentSurfaceCapabilitiesKHR
SharedPresentSurfaceCapabilitiesKHR :: ImageUsageFlags -> SharedPresentSurfaceCapabilitiesKHR
-- | sharedPresentSupportedUsageFlags is a bitmask of
-- ImageUsageFlagBits representing the ways the application
-- can use the shared presentable image from a swapchain created
-- with PresentModeKHR set to
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR for the surface on
-- the specified device. IMAGE_USAGE_COLOR_ATTACHMENT_BIT
-- must be included in the set but implementations may
-- support additional usages.
[$sel:sharedPresentSupportedUsageFlags:SharedPresentSurfaceCapabilitiesKHR] :: SharedPresentSurfaceCapabilitiesKHR -> ImageUsageFlags
type KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION = 1
pattern KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION :: forall a. Integral a => a
type KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME = "VK_KHR_shared_presentable_image"
pattern KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkPresentModeKHR - presentation mode supported for a surface
--
-- Description
--
-- The supported ImageUsageFlagBits of the presentable images of a
-- swapchain created for a surface may differ depending on the
-- presentation mode, and can be determined as per the table below:
--
-- TODO: table
--
-- Presentable image usage queries
--
-- Note
--
-- For reference, the mode indicated by PRESENT_MODE_FIFO_KHR is
-- equivalent to the behavior of {wgl|glX|egl}SwapBuffers with a swap
-- interval of 1, while the mode indicated by
-- PRESENT_MODE_FIFO_RELAXED_KHR is equivalent to the behavior of
-- {wgl|glX}SwapBuffers with a swap interval of -1 (from the
-- {WGL|GLX}_EXT_swap_control_tear extensions).
--
-- See Also
--
-- SwapchainCreateInfoKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR
newtype PresentModeKHR
PresentModeKHR :: Int32 -> PresentModeKHR
-- | PRESENT_MODE_IMMEDIATE_KHR specifies that the presentation
-- engine does not wait for a vertical blanking period to update the
-- current image, meaning this mode may result in visible tearing.
-- No internal queuing of presentation requests is needed, as the
-- requests are applied immediately.
pattern PRESENT_MODE_IMMEDIATE_KHR :: PresentModeKHR
-- | PRESENT_MODE_MAILBOX_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal single-entry
-- queue is used to hold pending presentation requests. If the queue is
-- full when a new presentation request is received, the new request
-- replaces the existing entry, and any images associated with the prior
-- entry become available for re-use by the application. One request is
-- removed from the queue and processed during each vertical blanking
-- period in which the queue is non-empty.
pattern PRESENT_MODE_MAILBOX_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal queue is used to
-- hold pending presentation requests. New requests are appended to the
-- end of the queue, and one request is removed from the beginning of the
-- queue and processed during each vertical blanking period in which the
-- queue is non-empty. This is the only value of presentMode
-- that is required to be supported.
pattern PRESENT_MODE_FIFO_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_RELAXED_KHR specifies that the presentation
-- engine generally waits for the next vertical blanking period to update
-- the current image. If a vertical blanking period has already passed
-- since the last update of the current image then the presentation
-- engine does not wait for another vertical blanking period for the
-- update, meaning this mode may result in visible tearing in this
-- case. This mode is useful for reducing visual stutter with an
-- application that will mostly present a new image before the next
-- vertical blanking period, but may occasionally be late, and present a
-- new image just after the next vertical blanking period. An internal
-- queue is used to hold pending presentation requests. New requests are
-- appended to the end of the queue, and one request is removed from the
-- beginning of the queue and processed during or after each vertical
-- blanking period in which the queue is non-empty.
pattern PRESENT_MODE_FIFO_RELAXED_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine periodically updates the current image on its
-- regular refresh cycle. The application is only required to make one
-- initial presentation request, after which the presentation engine
-- must update the current image without any need for further
-- presentation requests. The application can indicate the image
-- contents have been updated by making a presentation request, but this
-- does not guarantee the timing of when it will be updated. This mode
-- may result in visible tearing if rendering to the image is not
-- timed correctly.
pattern PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine is only required to update the current image after
-- a new presentation request is received. Therefore the application
-- must make a presentation request whenever an update is
-- required. However, the presentation engine may update the
-- current image at any point, meaning this mode may result in
-- visible tearing.
pattern PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR :: PresentModeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_shared_presentable_image.SharedPresentSurfaceCapabilitiesKHR
module Vulkan.Extensions.VK_KHR_get_surface_capabilities2
-- | vkGetPhysicalDeviceSurfaceCapabilities2KHR - Reports capabilities of a
-- surface on a physical device
--
-- Description
--
-- getPhysicalDeviceSurfaceCapabilities2KHR behaves similarly to
-- getPhysicalDeviceSurfaceCapabilitiesKHR, with the ability to
-- specify extended inputs via chained input structures, and to return
-- extended information via chained output structures.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceSurfaceInfo2KHR,
-- SurfaceCapabilities2KHR
getPhysicalDeviceSurfaceCapabilities2KHR :: forall a b io. (Extendss PhysicalDeviceSurfaceInfo2KHR a, Extendss SurfaceCapabilities2KHR b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => PhysicalDevice -> PhysicalDeviceSurfaceInfo2KHR a -> io (SurfaceCapabilities2KHR b)
-- | vkGetPhysicalDeviceSurfaceFormats2KHR - Query color formats supported
-- by surface
--
-- Description
--
-- getPhysicalDeviceSurfaceFormats2KHR behaves similarly to
-- getPhysicalDeviceSurfaceFormatsKHR, with the ability to be
-- extended via pNext chains.
--
-- If pSurfaceFormats is NULL, then the number of
-- format tuples supported for the given surface is returned in
-- pSurfaceFormatCount. Otherwise, pSurfaceFormatCount
-- must point to a variable set by the user to the number of
-- elements in the pSurfaceFormats array, and on return the
-- variable is overwritten with the number of structures actually written
-- to pSurfaceFormats. If the value of
-- pSurfaceFormatCount is less than the number of format tuples
-- supported, at most pSurfaceFormatCount structures will be
-- written. If pSurfaceFormatCount is smaller than the number of
-- format tuples supported for the surface parameters described in
-- pSurfaceInfo, INCOMPLETE will be returned instead of
-- SUCCESS to indicate that not all the available values were
-- returned.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pSurfaceInfo must be a valid pointer to a valid
-- PhysicalDeviceSurfaceInfo2KHR structure
-- - pSurfaceFormatCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pSurfaceFormatCount is not
-- 0, and pSurfaceFormats is not NULL,
-- pSurfaceFormats must be a valid pointer to an array of
-- pSurfaceFormatCount SurfaceFormat2KHR structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceSurfaceInfo2KHR,
-- SurfaceFormat2KHR
getPhysicalDeviceSurfaceFormats2KHR :: forall a io. (Extendss PhysicalDeviceSurfaceInfo2KHR a, PokeChain a, MonadIO io) => PhysicalDevice -> PhysicalDeviceSurfaceInfo2KHR a -> io (Result, "surfaceFormats" ::: Vector SurfaceFormat2KHR)
-- | VkPhysicalDeviceSurfaceInfo2KHR - Structure specifying a surface and
-- related swapchain creation parameters
--
-- Description
--
-- The members of PhysicalDeviceSurfaceInfo2KHR correspond to the
-- arguments to getPhysicalDeviceSurfaceCapabilitiesKHR, with
-- sType and pNext added for extensibility.
--
-- Additional capabilities of a surface may be available to
-- swapchains created with different full-screen exclusive settings -
-- particularly if exclusive full-screen access is application
-- controlled. These additional capabilities can be queried by
-- adding a SurfaceFullScreenExclusiveInfoEXT structure to the
-- pNext chain of this structure when used to query surface
-- properties. Additionally, for Win32 surfaces with application
-- controlled exclusive full-screen access, chaining a
-- SurfaceFullScreenExclusiveWin32InfoEXT structure may
-- also report additional surface capabilities. These additional
-- capabilities only apply to swapchains created with the same parameters
-- included in the pNext chain of SwapchainCreateInfoKHR.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, SurfaceKHR,
-- getDeviceGroupSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfaceCapabilities2KHR,
-- getPhysicalDeviceSurfaceFormats2KHR,
-- getPhysicalDeviceSurfacePresentModes2EXT
data PhysicalDeviceSurfaceInfo2KHR (es :: [Type])
PhysicalDeviceSurfaceInfo2KHR :: Chain es -> SurfaceKHR -> PhysicalDeviceSurfaceInfo2KHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PhysicalDeviceSurfaceInfo2KHR] :: PhysicalDeviceSurfaceInfo2KHR (es :: [Type]) -> Chain es
-- | surface is the surface that will be associated with the
-- swapchain.
[$sel:surface:PhysicalDeviceSurfaceInfo2KHR] :: PhysicalDeviceSurfaceInfo2KHR (es :: [Type]) -> SurfaceKHR
-- | VkSurfaceCapabilities2KHR - Structure describing capabilities of a
-- surface
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, SurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceCapabilities2KHR
data SurfaceCapabilities2KHR (es :: [Type])
SurfaceCapabilities2KHR :: Chain es -> SurfaceCapabilitiesKHR -> SurfaceCapabilities2KHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SurfaceCapabilities2KHR] :: SurfaceCapabilities2KHR (es :: [Type]) -> Chain es
-- | surfaceCapabilities is a SurfaceCapabilitiesKHR
-- structure describing the capabilities of the specified surface.
[$sel:surfaceCapabilities:SurfaceCapabilities2KHR] :: SurfaceCapabilities2KHR (es :: [Type]) -> SurfaceCapabilitiesKHR
-- | VkSurfaceFormat2KHR - Structure describing a supported swapchain
-- format tuple
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, SurfaceFormatKHR,
-- getPhysicalDeviceSurfaceFormats2KHR
data SurfaceFormat2KHR
SurfaceFormat2KHR :: SurfaceFormatKHR -> SurfaceFormat2KHR
-- | surfaceFormat is a SurfaceFormatKHR structure
-- describing a format-color space pair that is compatible with the
-- specified surface.
[$sel:surfaceFormat:SurfaceFormat2KHR] :: SurfaceFormat2KHR -> SurfaceFormatKHR
type KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION = 1
pattern KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION :: forall a. Integral a => a
type KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME = "VK_KHR_get_surface_capabilities2"
pattern KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSurfaceCapabilitiesKHR - Structure describing capabilities of a
-- surface
--
-- Description
--
-- Note
--
-- Supported usage flags of a presentable image when using
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR presentation mode
-- are provided by
-- SharedPresentSurfaceCapabilitiesKHR::sharedPresentSupportedUsageFlags.
--
-- Note
--
-- Formulas such as min(N, maxImageCount) are not correct, since
-- maxImageCount may be zero.
--
-- See Also
--
-- CompositeAlphaFlagsKHR, Extent2D,
-- ImageUsageFlags, SurfaceCapabilities2KHR,
-- SurfaceTransformFlagBitsKHR, SurfaceTransformFlagsKHR,
-- getPhysicalDeviceSurfaceCapabilitiesKHR
data SurfaceCapabilitiesKHR
SurfaceCapabilitiesKHR :: Word32 -> Word32 -> Extent2D -> Extent2D -> Extent2D -> Word32 -> SurfaceTransformFlagsKHR -> SurfaceTransformFlagBitsKHR -> CompositeAlphaFlagsKHR -> ImageUsageFlags -> SurfaceCapabilitiesKHR
-- | minImageCount is the minimum number of images the specified
-- device supports for a swapchain created for the surface, and will be
-- at least one.
[$sel:minImageCount:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Word32
-- | 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.
[$sel:maxImageCount:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Word32
-- | 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.
[$sel:currentExtent:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Extent2D
-- | 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.
[$sel:minImageExtent:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Extent2D
-- | 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.
[$sel:maxImageExtent:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Extent2D
-- | 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.
[$sel:maxImageArrayLayers:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> Word32
-- | supportedTransforms is a bitmask of
-- SurfaceTransformFlagBitsKHR indicating the presentation
-- transforms supported for the surface on the specified device. At least
-- one bit will be set.
[$sel:supportedTransforms:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> SurfaceTransformFlagsKHR
-- | currentTransform is SurfaceTransformFlagBitsKHR value
-- indicating the surface’s current transform relative to the
-- presentation engine’s natural orientation.
[$sel:currentTransform:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> SurfaceTransformFlagBitsKHR
-- | supportedCompositeAlpha is a bitmask of
-- 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.
[$sel:supportedCompositeAlpha:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> CompositeAlphaFlagsKHR
-- | supportedUsageFlags is a bitmask of ImageUsageFlagBits
-- representing the ways the application can use the presentable
-- images of a swapchain created with PresentModeKHR set to
-- PRESENT_MODE_IMMEDIATE_KHR, PRESENT_MODE_MAILBOX_KHR,
-- PRESENT_MODE_FIFO_KHR or PRESENT_MODE_FIFO_RELAXED_KHR
-- for the surface on the specified device.
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT must be included in the
-- set but implementations may support additional usages.
[$sel:supportedUsageFlags:SurfaceCapabilitiesKHR] :: SurfaceCapabilitiesKHR -> ImageUsageFlags
-- | VkSurfaceFormatKHR - Structure describing a supported swapchain
-- format-color space pair
--
-- See Also
--
-- ColorSpaceKHR, Format, SurfaceFormat2KHR,
-- getPhysicalDeviceSurfaceFormatsKHR
data SurfaceFormatKHR
SurfaceFormatKHR :: Format -> ColorSpaceKHR -> SurfaceFormatKHR
-- | format is a Format that is compatible with the
-- specified surface.
[$sel:format:SurfaceFormatKHR] :: SurfaceFormatKHR -> Format
-- | colorSpace is a presentation ColorSpaceKHR that is
-- compatible with the surface.
[$sel:colorSpace:SurfaceFormatKHR] :: SurfaceFormatKHR -> ColorSpaceKHR
-- | VkColorSpaceKHR - supported color space of the presentation engine
--
-- Description
--
-- Note
--
-- In the initial release of the VK_KHR_surface and
-- VK_KHR_swapchain extensions, the token
-- VK_COLORSPACE_SRGB_NONLINEAR_KHR was used. Starting in the
-- 2016-05-13 updates to the extension branches, matching release 1.0.13
-- of the core API specification, COLOR_SPACE_SRGB_NONLINEAR_KHR
-- is used instead for consistency with Vulkan naming rules. The older
-- enum is still available for backwards compatibility.
--
-- Note
--
-- In older versions of this extension
-- COLOR_SPACE_DISPLAY_P3_LINEAR_EXT was misnamed
-- COLOR_SPACE_DCI_P3_LINEAR_EXT. This has been updated to
-- indicate that it uses RGB color encoding, not XYZ. The old name is
-- deprecated but is maintained for backwards compatibility.
--
-- The color components of non-linear color space swap chain images
-- must have had the appropriate transfer function applied. The
-- color space selected for the swap chain image will not affect the
-- processing of data written into the image by the implementation.
-- Vulkan requires that all implementations support the sRGB transfer
-- function by use of an SRGB pixel format. Other transfer functions,
-- such as SMPTE 170M or SMPTE2084, can be performed by the
-- application shader. This extension defines enums for
-- ColorSpaceKHR that correspond to the following color spaces:
--
-- TODO: table
--
-- Color Spaces and Attributes
--
-- The transfer functions are described in the “Transfer Functions”
-- chapter of the Khronos Data Format Specification.
--
-- Except Display-P3 OETF, which is:
--
-- [begin{aligned} E & = begin{cases} 1.055 times L^{1 over 2.4} -
-- 0.055 & text{for} 0.0030186 leq L leq 1 -- 12.92 times L &
-- text{for} 0 leq L < 0.0030186
newtype ColorSpaceKHR
ColorSpaceKHR :: Int32 -> ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_LINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_SRGB_NONLINEAR_KHR specifies support for the sRGB
-- color space.
pattern COLOR_SPACE_SRGB_NONLINEAR_KHR :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_NATIVE_AMD specifies support for the
-- display’s native color space. This matches the color space
-- expectations of AMD’s FreeSync2 standard, for displays supporting it.
pattern COLOR_SPACE_DISPLAY_NATIVE_AMD :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT specifies support for
-- the extended sRGB color space to be displayed using an sRGB EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_PASS_THROUGH_EXT specifies that color components
-- are used “as is”. This is intended to allow applications to supply
-- data for color spaces not described here.
pattern COLOR_SPACE_PASS_THROUGH_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_NONLINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using the Gamma 2.2 EOTF.
pattern COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_LINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_ADOBERGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_HLG_EXT specifies support for the HDR10
-- (BT2020 color space) to be displayed using the Hybrid Log Gamma (HLG)
-- EOTF.
pattern COLOR_SPACE_HDR10_HLG_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DOLBYVISION_EXT specifies support for the Dolby
-- Vision (BT2020 color space), proprietary encoding, to be displayed
-- using the SMPTE ST2084 EOTF.
pattern COLOR_SPACE_DOLBYVISION_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_ST2084_EXT specifies support for the HDR10
-- (BT2020 color) space to be displayed using the SMPTE ST2084 Perceptual
-- Quantizer (PQ) EOTF.
pattern COLOR_SPACE_HDR10_ST2084_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT2020_LINEAR_EXT specifies support for the BT2020
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT2020_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_NONLINEAR_EXT specifies support for the BT709
-- color space to be displayed using the SMPTE 170M EOTF.
pattern COLOR_SPACE_BT709_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_LINEAR_EXT specifies support for the BT709
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT709_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DCI_P3_NONLINEAR_EXT specifies support for the
-- DCI-P3 color space to be displayed using the DCI-P3 EOTF. Note that
-- values in such an image are interpreted as XYZ encoded color data by
-- the presentation engine.
pattern COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT specifies support for the
-- extended sRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using an sRGB-like EOTF
-- (defined below).
pattern COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | VkCompositeAlphaFlagBitsKHR - alpha compositing modes supported on a
-- device
--
-- Description
--
-- These values are described as follows:
--
-- See Also
--
-- CompositeAlphaFlagsKHR, SwapchainCreateInfoKHR
newtype CompositeAlphaFlagBitsKHR
CompositeAlphaFlagBitsKHR :: Flags -> CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_OPAQUE_BIT_KHR: The alpha channel, if it
-- exists, of the images is ignored in the compositing process. Instead,
-- the image is treated as if it has a constant alpha of 1.0.
pattern COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are expected to already be multiplied
-- by the alpha channel by the application.
pattern COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are not expected to already be
-- multiplied by the alpha channel by the application; instead, the
-- compositor will multiply the non-alpha channels of the image by the
-- alpha channel during compositing.
pattern COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_INHERIT_BIT_KHR: The way in which the
-- presentation engine treats the alpha channel in the images is unknown
-- to the Vulkan API. Instead, the application is responsible for setting
-- the composite alpha blending mode using native window system commands.
-- If the application does not set the blending mode using native window
-- system commands, then a platform-specific default will be used.
pattern COMPOSITE_ALPHA_INHERIT_BIT_KHR :: CompositeAlphaFlagBitsKHR
type CompositeAlphaFlagsKHR = CompositeAlphaFlagBitsKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es)
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceFormat2KHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceFormat2KHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceFormat2KHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceFormat2KHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceFormat2KHR
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.SurfaceCapabilities2KHR es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_get_surface_capabilities2.PhysicalDeviceSurfaceInfo2KHR es)
module Vulkan.Extensions.VK_KHR_display_swapchain
-- | vkCreateSharedSwapchainsKHR - Create multiple swapchains that share
-- presentable images
--
-- Description
--
-- createSharedSwapchainsKHR is similar to
-- createSwapchainKHR, except that it takes an array of
-- SwapchainCreateInfoKHR structures, and returns an array of
-- swapchain objects.
--
-- The swapchain creation parameters that affect the properties and
-- number of presentable images must match between all the
-- swapchains. If the displays used by any of the swapchains do not use
-- the same presentable image layout or are incompatible in a way that
-- prevents sharing images, swapchain creation will fail with the result
-- code ERROR_INCOMPATIBLE_DISPLAY_KHR. If any error occurs, no
-- swapchains will be created. Images presented to multiple swapchains
-- must be re-acquired from all of them before transitioning away
-- from IMAGE_LAYOUT_PRESENT_SRC_KHR. After destroying one or more
-- of the swapchains, the remaining swapchains and the presentable images
-- can continue to be used.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfos must be a valid pointer to an array
-- of swapchainCount valid SwapchainCreateInfoKHR
-- structures
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSwapchains must be a valid pointer to an array of
-- swapchainCount SwapchainKHR handles
-- - swapchainCount must be greater than
-- 0
--
--
-- Host Synchronization
--
--
-- - Host access to pCreateInfos[].surface must be
-- externally synchronized
--
--
--
-- - Host access to pCreateInfos[].oldSwapchain must be
-- externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- SwapchainCreateInfoKHR, SwapchainKHR
createSharedSwapchainsKHR :: forall io. MonadIO io => Device -> ("createInfos" ::: Vector (SomeStruct SwapchainCreateInfoKHR)) -> ("allocator" ::: Maybe AllocationCallbacks) -> io ("swapchains" ::: Vector SwapchainKHR)
-- | VkDisplayPresentInfoKHR - Structure describing parameters of a queue
-- presentation to a swapchain
--
-- Description
--
-- If the extent of the srcRect and dstRect are not
-- equal, the presented pixels will be scaled accordingly.
--
-- Valid Usage
--
--
-- - srcRect must specify a rectangular region that is
-- a subset of the image being presented
--
--
--
-- - dstRect must specify a rectangular region that is
-- a subset of the visibleRegion parameter of the display mode
-- the swapchain being presented uses
-- - If the persistentContent member of the
-- DisplayPropertiesKHR structure returned by
-- getPhysicalDeviceDisplayPropertiesKHR for the display the
-- present operation targets then persistent must be
-- FALSE
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, Rect2D, StructureType
data DisplayPresentInfoKHR
DisplayPresentInfoKHR :: Rect2D -> Rect2D -> Bool -> DisplayPresentInfoKHR
-- | srcRect is a rectangular region of pixels to present. It
-- must be a subset of the image being presented. If
-- DisplayPresentInfoKHR is not specified, this region will be
-- assumed to be the entire presentable image.
[$sel:srcRect:DisplayPresentInfoKHR] :: DisplayPresentInfoKHR -> Rect2D
-- | dstRect is a rectangular region within the visible region of
-- the swapchain’s display mode. If DisplayPresentInfoKHR is not
-- specified, this region will be assumed to be the entire visible region
-- of the visible region of the swapchain’s mode. If the specified
-- rectangle is a subset of the display mode’s visible region, content
-- from display planes below the swapchain’s plane will be visible
-- outside the rectangle. If there are no planes below the swapchain’s,
-- the area outside the specified rectangle will be black. If portions of
-- the specified rectangle are outside of the display’s visible region,
-- pixels mapping only to those portions of the rectangle will be
-- discarded.
[$sel:dstRect:DisplayPresentInfoKHR] :: DisplayPresentInfoKHR -> Rect2D
-- | persistent: If this is TRUE, the display engine will
-- enable buffered mode on displays that support it. This allows the
-- display engine to stop sending content to the display until a new
-- image is presented. The display will instead maintain a copy of the
-- last presented image. This allows less power to be used, but
-- may increase presentation latency. If
-- DisplayPresentInfoKHR is not specified, persistent mode will
-- not be used.
[$sel:persistent:DisplayPresentInfoKHR] :: DisplayPresentInfoKHR -> Bool
type KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION = 10
pattern KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION :: forall a. Integral a => a
type KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME = "VK_KHR_display_swapchain"
pattern KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkSwapchainCreateInfoKHR - Structure specifying parameters of a newly
-- created swapchain object
--
-- Description
--
-- Note
--
-- On some platforms, it is normal that maxImageExtent
-- may become (0, 0), for example when the window is
-- minimized. In such a case, it is not possible to create a swapchain
-- due to the Valid Usage requirements.
--
--
-- - imageArrayLayers is the number of views in a
-- multiview/stereo surface. For non-stereoscopic-3D applications, this
-- value is 1.
-- - imageUsage is a bitmask of ImageUsageFlagBits
-- describing the intended usage of the (acquired) swapchain images.
-- - imageSharingMode is the sharing mode used for the
-- image(s) of the swapchain.
-- - queueFamilyIndexCount is the number of queue families
-- having access to the image(s) of the swapchain when
-- imageSharingMode is SHARING_MODE_CONCURRENT.
-- - pQueueFamilyIndices is a pointer to an array of queue
-- family indices having access to the images(s) of the swapchain when
-- imageSharingMode is SHARING_MODE_CONCURRENT.
-- - preTransform is a SurfaceTransformFlagBitsKHR
-- value describing the transform, relative to the presentation engine’s
-- natural orientation, applied to the image content prior to
-- presentation. If it does not match the currentTransform value
-- returned by getPhysicalDeviceSurfaceCapabilitiesKHR, the
-- presentation engine will transform the image content as part of the
-- presentation operation.
-- - compositeAlpha is a CompositeAlphaFlagBitsKHR
-- value indicating the alpha compositing mode to use when this surface
-- is composited together with other surfaces on certain window
-- systems.
-- - presentMode is the presentation mode the swapchain will
-- use. A swapchain’s present mode determines how incoming present
-- requests will be processed and queued internally.
-- - clipped specifies whether the Vulkan implementation is
-- allowed to discard rendering operations that affect regions of the
-- surface that are not visible.
- If set to TRUE, the
-- presentable images associated with the swapchain may not own
-- all of their pixels. Pixels in the presentable images that correspond
-- to regions of the target surface obscured by another window on the
-- desktop, or subject to some other clipping mechanism will have
-- undefined content when read back. Fragment shaders may not
-- execute for these pixels, and thus any side effects they would have
-- had will not occur. TRUE value does not guarantee any clipping
-- will occur, but allows more optimal presentation methods to be used on
-- some platforms.
- If set to FALSE, presentable images
-- associated with the swapchain will own all of the pixels they
-- contain.
--
--
-- Note
--
-- Applications should set this value to TRUE if they do
-- not expect to read back the content of presentable images before
-- presenting them or after reacquiring them, and if their fragment
-- shaders do not have any side effects that require them to run for all
-- pixels in the presentable image.
--
--
-- - oldSwapchain is NULL_HANDLE, or the existing
-- non-retired swapchain currently associated with surface.
-- Providing a valid oldSwapchain may aid in the resource
-- reuse, and also allows the application to still present any images
-- that are already acquired from it.
--
--
-- Upon calling createSwapchainKHR with an oldSwapchain
-- that is not NULL_HANDLE, oldSwapchain is retired —
-- even if creation of the new swapchain fails. The new swapchain is
-- created in the non-retired state whether or not oldSwapchain
-- is NULL_HANDLE.
--
-- Upon calling createSwapchainKHR with an oldSwapchain
-- that is not NULL_HANDLE, any images from oldSwapchain
-- that are not acquired by the application may be freed by the
-- implementation, which may occur even if creation of the new
-- swapchain fails. The application can destroy
-- oldSwapchain to free all memory associated with
-- oldSwapchain.
--
-- Note
--
-- Multiple retired swapchains can be associated with the same
-- SurfaceKHR through multiple uses of oldSwapchain that
-- outnumber calls to destroySwapchainKHR.
--
-- After oldSwapchain is retired, the application can
-- pass to queuePresentKHR any images it had already acquired from
-- oldSwapchain. E.g., an application may present an image from
-- the old swapchain before an image from the new swapchain is ready to
-- be presented. As usual, queuePresentKHR may fail if
-- oldSwapchain has entered a state that causes
-- ERROR_OUT_OF_DATE_KHR to be returned.
--
-- The application can continue to use a shared presentable image
-- obtained from oldSwapchain until a presentable image is
-- acquired from the new swapchain, as long as it has not entered a state
-- that causes it to return ERROR_OUT_OF_DATE_KHR.
--
-- Valid Usage
--
--
--
--
-- - minImageCount must be less than or equal to the
-- value returned in the maxImageCount member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface if the
-- returned maxImageCount is not zero
-- - If presentMode is not
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR nor
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR, then
-- minImageCount must be greater than or equal to the
-- value returned in the minImageCount member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - minImageCount must be 1 if
-- presentMode is either
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR
-- - imageFormat and imageColorSpace must
-- match the format and colorSpace members,
-- respectively, of one of the SurfaceFormatKHR structures
-- returned by getPhysicalDeviceSurfaceFormatsKHR for the
-- surface
-- - imageExtent must be between
-- minImageExtent and maxImageExtent, inclusive, where
-- minImageExtent and maxImageExtent are members of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - imageExtent members width and height
-- must both be non-zero
-- - imageArrayLayers must be greater than 0
-- and less than or equal to the maxImageArrayLayers member of
-- the SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - If presentMode is PRESENT_MODE_IMMEDIATE_KHR,
-- PRESENT_MODE_MAILBOX_KHR, PRESENT_MODE_FIFO_KHR or
-- PRESENT_MODE_FIFO_RELAXED_KHR, imageUsage must
-- be a subset of the supported usage flags present in the
-- supportedUsageFlags member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for
-- surface
-- - If presentMode is
-- PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or
-- PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR, imageUsage
-- must be a subset of the supported usage flags present in the
-- sharedPresentSupportedUsageFlags member of the
-- SharedPresentSurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilities2KHR for
-- surface
-- - If imageSharingMode is SHARING_MODE_CONCURRENT,
-- pQueueFamilyIndices must be a valid pointer to an
-- array of queueFamilyIndexCount uint32_t values
-- - If imageSharingMode is SHARING_MODE_CONCURRENT,
-- queueFamilyIndexCount must be greater than
-- 1
-- - If imageSharingMode is SHARING_MODE_CONCURRENT,
-- each element of pQueueFamilyIndices must be unique and
-- must be less than pQueueFamilyPropertyCount returned
-- by either getPhysicalDeviceQueueFamilyProperties or
-- getPhysicalDeviceQueueFamilyProperties2 for the
-- physicalDevice that was used to create device
-- - preTransform must be one of the bits present in
-- the supportedTransforms member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - compositeAlpha must be one of the bits present in
-- the supportedCompositeAlpha member of the
-- SurfaceCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR for the surface
-- - presentMode must be one of the
-- PresentModeKHR values returned by
-- getPhysicalDeviceSurfacePresentModesKHR for the surface
-- - If the logical device was created with
-- DeviceGroupDeviceCreateInfo::physicalDeviceCount equal
-- to 1, flags must not contain
-- SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR
-- - If oldSwapchain is not NULL_HANDLE,
-- oldSwapchain must be a non-retired swapchain
-- associated with native window referred to by surface
-- - The implied image creation parameters of the swapchain
-- must be supported as reported by
-- getPhysicalDeviceImageFormatProperties
-- - If flags contains
-- SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR then the pNext
-- chain must include a ImageFormatListCreateInfo structure
-- with a viewFormatCount greater than zero and
-- pViewFormats must have an element equal to
-- imageFormat
-- - If flags contains
-- SWAPCHAIN_CREATE_PROTECTED_BIT_KHR, then
-- SurfaceProtectedCapabilitiesKHR::supportsProtected
-- must be TRUE in the
-- SurfaceProtectedCapabilitiesKHR structure returned by
-- getPhysicalDeviceSurfaceCapabilities2KHR for
-- surface
-- - If the pNext chain includes a
-- SurfaceFullScreenExclusiveInfoEXT structure with its
-- fullScreenExclusive member set to
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT, and
-- surface was created using createWin32SurfaceKHR, a
-- SurfaceFullScreenExclusiveWin32InfoEXT structure must be
-- included in the pNext chain
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- DeviceGroupSwapchainCreateInfoKHR,
-- ImageFormatListCreateInfo,
-- SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SwapchainCounterCreateInfoEXT, or
-- SwapchainDisplayNativeHdrCreateInfoAMD
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be a valid combination of
-- SwapchainCreateFlagBitsKHR values
-- - surface must be a valid SurfaceKHR
-- handle
-- - imageFormat must be a valid Format
-- value
-- - imageColorSpace must be a valid
-- ColorSpaceKHR value
-- - imageUsage must be a valid combination of
-- ImageUsageFlagBits values
-- - imageUsage must not be 0
-- - imageSharingMode must be a valid
-- SharingMode value
-- - preTransform must be a valid
-- SurfaceTransformFlagBitsKHR value
-- - compositeAlpha must be a valid
-- CompositeAlphaFlagBitsKHR value
-- - presentMode must be a valid PresentModeKHR
-- value
-- - If oldSwapchain is not NULL_HANDLE,
-- oldSwapchain must be a valid SwapchainKHR
-- handle
-- - If oldSwapchain is a valid handle, it must have
-- been created, allocated, or retrieved from surface
-- - Both of oldSwapchain, and surface that are valid
-- handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Instance
--
--
-- See Also
--
-- Bool32, ColorSpaceKHR, CompositeAlphaFlagBitsKHR,
-- Extent2D, Format, ImageUsageFlags,
-- PresentModeKHR, SharingMode, StructureType,
-- SurfaceKHR, SurfaceTransformFlagBitsKHR,
-- SwapchainCreateFlagsKHR, SwapchainKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR
data SwapchainCreateInfoKHR (es :: [Type])
SwapchainCreateInfoKHR :: Chain es -> SwapchainCreateFlagsKHR -> SurfaceKHR -> Word32 -> Format -> ColorSpaceKHR -> Extent2D -> Word32 -> ImageUsageFlags -> SharingMode -> Vector Word32 -> SurfaceTransformFlagBitsKHR -> CompositeAlphaFlagBitsKHR -> PresentModeKHR -> Bool -> SwapchainKHR -> SwapchainCreateInfoKHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Chain es
-- | flags is a bitmask of SwapchainCreateFlagBitsKHR
-- indicating parameters of the swapchain creation.
[$sel:flags:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SwapchainCreateFlagsKHR
-- | surface is the surface onto which the swapchain will present
-- images. If the creation succeeds, the swapchain becomes associated
-- with surface.
[$sel:surface:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SurfaceKHR
-- | minImageCount is the minimum number of presentable images
-- that the application needs. The implementation will either create the
-- swapchain with at least that many images, or it will fail to create
-- the swapchain.
[$sel:minImageCount:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Word32
-- | imageFormat is a Format value specifying the format
-- the swapchain image(s) will be created with.
[$sel:imageFormat:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Format
-- | imageColorSpace is a ColorSpaceKHR value specifying
-- the way the swapchain interprets image data.
[$sel:imageColorSpace:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> ColorSpaceKHR
-- | imageExtent is the size (in pixels) of the swapchain
-- image(s). The behavior is platform-dependent if the image extent does
-- not match the surface’s currentExtent as returned by
-- getPhysicalDeviceSurfaceCapabilitiesKHR.
[$sel:imageExtent:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Extent2D
[$sel:imageArrayLayers:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Word32
[$sel:imageUsage:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> ImageUsageFlags
[$sel:imageSharingMode:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SharingMode
[$sel:queueFamilyIndices:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Vector Word32
[$sel:preTransform:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SurfaceTransformFlagBitsKHR
[$sel:compositeAlpha:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> CompositeAlphaFlagBitsKHR
[$sel:presentMode:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> PresentModeKHR
[$sel:clipped:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> Bool
[$sel:oldSwapchain:SwapchainCreateInfoKHR] :: SwapchainCreateInfoKHR (es :: [Type]) -> SwapchainKHR
-- | VkPresentModeKHR - presentation mode supported for a surface
--
-- Description
--
-- The supported ImageUsageFlagBits of the presentable images of a
-- swapchain created for a surface may differ depending on the
-- presentation mode, and can be determined as per the table below:
--
-- TODO: table
--
-- Presentable image usage queries
--
-- Note
--
-- For reference, the mode indicated by PRESENT_MODE_FIFO_KHR is
-- equivalent to the behavior of {wgl|glX|egl}SwapBuffers with a swap
-- interval of 1, while the mode indicated by
-- PRESENT_MODE_FIFO_RELAXED_KHR is equivalent to the behavior of
-- {wgl|glX}SwapBuffers with a swap interval of -1 (from the
-- {WGL|GLX}_EXT_swap_control_tear extensions).
--
-- See Also
--
-- SwapchainCreateInfoKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR
newtype PresentModeKHR
PresentModeKHR :: Int32 -> PresentModeKHR
-- | PRESENT_MODE_IMMEDIATE_KHR specifies that the presentation
-- engine does not wait for a vertical blanking period to update the
-- current image, meaning this mode may result in visible tearing.
-- No internal queuing of presentation requests is needed, as the
-- requests are applied immediately.
pattern PRESENT_MODE_IMMEDIATE_KHR :: PresentModeKHR
-- | PRESENT_MODE_MAILBOX_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal single-entry
-- queue is used to hold pending presentation requests. If the queue is
-- full when a new presentation request is received, the new request
-- replaces the existing entry, and any images associated with the prior
-- entry become available for re-use by the application. One request is
-- removed from the queue and processed during each vertical blanking
-- period in which the queue is non-empty.
pattern PRESENT_MODE_MAILBOX_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal queue is used to
-- hold pending presentation requests. New requests are appended to the
-- end of the queue, and one request is removed from the beginning of the
-- queue and processed during each vertical blanking period in which the
-- queue is non-empty. This is the only value of presentMode
-- that is required to be supported.
pattern PRESENT_MODE_FIFO_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_RELAXED_KHR specifies that the presentation
-- engine generally waits for the next vertical blanking period to update
-- the current image. If a vertical blanking period has already passed
-- since the last update of the current image then the presentation
-- engine does not wait for another vertical blanking period for the
-- update, meaning this mode may result in visible tearing in this
-- case. This mode is useful for reducing visual stutter with an
-- application that will mostly present a new image before the next
-- vertical blanking period, but may occasionally be late, and present a
-- new image just after the next vertical blanking period. An internal
-- queue is used to hold pending presentation requests. New requests are
-- appended to the end of the queue, and one request is removed from the
-- beginning of the queue and processed during or after each vertical
-- blanking period in which the queue is non-empty.
pattern PRESENT_MODE_FIFO_RELAXED_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine periodically updates the current image on its
-- regular refresh cycle. The application is only required to make one
-- initial presentation request, after which the presentation engine
-- must update the current image without any need for further
-- presentation requests. The application can indicate the image
-- contents have been updated by making a presentation request, but this
-- does not guarantee the timing of when it will be updated. This mode
-- may result in visible tearing if rendering to the image is not
-- timed correctly.
pattern PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine is only required to update the current image after
-- a new presentation request is received. Therefore the application
-- must make a presentation request whenever an update is
-- required. However, the presentation engine may update the
-- current image at any point, meaning this mode may result in
-- visible tearing.
pattern PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR :: PresentModeKHR
-- | VkColorSpaceKHR - supported color space of the presentation engine
--
-- Description
--
-- Note
--
-- In the initial release of the VK_KHR_surface and
-- VK_KHR_swapchain extensions, the token
-- VK_COLORSPACE_SRGB_NONLINEAR_KHR was used. Starting in the
-- 2016-05-13 updates to the extension branches, matching release 1.0.13
-- of the core API specification, COLOR_SPACE_SRGB_NONLINEAR_KHR
-- is used instead for consistency with Vulkan naming rules. The older
-- enum is still available for backwards compatibility.
--
-- Note
--
-- In older versions of this extension
-- COLOR_SPACE_DISPLAY_P3_LINEAR_EXT was misnamed
-- COLOR_SPACE_DCI_P3_LINEAR_EXT. This has been updated to
-- indicate that it uses RGB color encoding, not XYZ. The old name is
-- deprecated but is maintained for backwards compatibility.
--
-- The color components of non-linear color space swap chain images
-- must have had the appropriate transfer function applied. The
-- color space selected for the swap chain image will not affect the
-- processing of data written into the image by the implementation.
-- Vulkan requires that all implementations support the sRGB transfer
-- function by use of an SRGB pixel format. Other transfer functions,
-- such as SMPTE 170M or SMPTE2084, can be performed by the
-- application shader. This extension defines enums for
-- ColorSpaceKHR that correspond to the following color spaces:
--
-- TODO: table
--
-- Color Spaces and Attributes
--
-- The transfer functions are described in the “Transfer Functions”
-- chapter of the Khronos Data Format Specification.
--
-- Except Display-P3 OETF, which is:
--
-- [begin{aligned} E & = begin{cases} 1.055 times L^{1 over 2.4} -
-- 0.055 & text{for} 0.0030186 leq L leq 1 -- 12.92 times L &
-- text{for} 0 leq L < 0.0030186
newtype ColorSpaceKHR
ColorSpaceKHR :: Int32 -> ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_LINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_SRGB_NONLINEAR_KHR specifies support for the sRGB
-- color space.
pattern COLOR_SPACE_SRGB_NONLINEAR_KHR :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_NATIVE_AMD specifies support for the
-- display’s native color space. This matches the color space
-- expectations of AMD’s FreeSync2 standard, for displays supporting it.
pattern COLOR_SPACE_DISPLAY_NATIVE_AMD :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT specifies support for
-- the extended sRGB color space to be displayed using an sRGB EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_PASS_THROUGH_EXT specifies that color components
-- are used “as is”. This is intended to allow applications to supply
-- data for color spaces not described here.
pattern COLOR_SPACE_PASS_THROUGH_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_NONLINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using the Gamma 2.2 EOTF.
pattern COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_LINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_ADOBERGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_HLG_EXT specifies support for the HDR10
-- (BT2020 color space) to be displayed using the Hybrid Log Gamma (HLG)
-- EOTF.
pattern COLOR_SPACE_HDR10_HLG_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DOLBYVISION_EXT specifies support for the Dolby
-- Vision (BT2020 color space), proprietary encoding, to be displayed
-- using the SMPTE ST2084 EOTF.
pattern COLOR_SPACE_DOLBYVISION_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_ST2084_EXT specifies support for the HDR10
-- (BT2020 color) space to be displayed using the SMPTE ST2084 Perceptual
-- Quantizer (PQ) EOTF.
pattern COLOR_SPACE_HDR10_ST2084_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT2020_LINEAR_EXT specifies support for the BT2020
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT2020_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_NONLINEAR_EXT specifies support for the BT709
-- color space to be displayed using the SMPTE 170M EOTF.
pattern COLOR_SPACE_BT709_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_LINEAR_EXT specifies support for the BT709
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT709_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DCI_P3_NONLINEAR_EXT specifies support for the
-- DCI-P3 color space to be displayed using the DCI-P3 EOTF. Note that
-- values in such an image are interpreted as XYZ encoded color data by
-- the presentation engine.
pattern COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT specifies support for the
-- extended sRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using an sRGB-like EOTF
-- (defined below).
pattern COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | VkCompositeAlphaFlagBitsKHR - alpha compositing modes supported on a
-- device
--
-- Description
--
-- These values are described as follows:
--
-- See Also
--
-- CompositeAlphaFlagsKHR, SwapchainCreateInfoKHR
newtype CompositeAlphaFlagBitsKHR
CompositeAlphaFlagBitsKHR :: Flags -> CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_OPAQUE_BIT_KHR: The alpha channel, if it
-- exists, of the images is ignored in the compositing process. Instead,
-- the image is treated as if it has a constant alpha of 1.0.
pattern COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are expected to already be multiplied
-- by the alpha channel by the application.
pattern COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are not expected to already be
-- multiplied by the alpha channel by the application; instead, the
-- compositor will multiply the non-alpha channels of the image by the
-- alpha channel during compositing.
pattern COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_INHERIT_BIT_KHR: The way in which the
-- presentation engine treats the alpha channel in the images is unknown
-- to the Vulkan API. Instead, the application is responsible for setting
-- the composite alpha blending mode using native window system commands.
-- If the application does not set the blending mode using native window
-- system commands, then a platform-specific default will be used.
pattern COMPOSITE_ALPHA_INHERIT_BIT_KHR :: CompositeAlphaFlagBitsKHR
type CompositeAlphaFlagsKHR = CompositeAlphaFlagBitsKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
-- | VkSwapchainCreateFlagBitsKHR - Bitmask controlling swapchain creation
--
-- See Also
--
-- SwapchainCreateFlagsKHR
newtype SwapchainCreateFlagBitsKHR
SwapchainCreateFlagBitsKHR :: Flags -> SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR specifies that the
-- images of the swapchain can be used to create a
-- ImageView with a different format than what the swapchain was
-- created with. The list of allowed image view formats are specified by
-- adding a ImageFormatListCreateInfo structure to the
-- pNext chain of SwapchainCreateInfoKHR. In addition,
-- this flag also specifies that the swapchain can be created with
-- usage flags that are not supported for the format the swapchain is
-- created with but are supported for at least one of the allowed image
-- view formats.
pattern SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR specifies
-- that images created from the swapchain (i.e. with the
-- swapchain member of ImageSwapchainCreateInfoKHR set to
-- this swapchain’s handle) must use
-- IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT.
pattern SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_PROTECTED_BIT_KHR specifies that images
-- created from the swapchain are protected images.
pattern SWAPCHAIN_CREATE_PROTECTED_BIT_KHR :: SwapchainCreateFlagBitsKHR
type SwapchainCreateFlagsKHR = SwapchainCreateFlagBitsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display_swapchain.DisplayPresentInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display_swapchain.DisplayPresentInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display_swapchain.DisplayPresentInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display_swapchain.DisplayPresentInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display_swapchain.DisplayPresentInfoKHR
module Vulkan.Extensions.VK_KHR_display
-- | vkGetPhysicalDeviceDisplayPropertiesKHR - Query information about the
-- available displays
--
-- Description
--
-- If pProperties is NULL, then the number of display
-- devices available for physicalDevice is returned in
-- pPropertyCount. Otherwise, pPropertyCount
-- must point to a variable set by the user to the number of
-- elements in the pProperties array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pProperties. If the value of pPropertyCount is less
-- than the number of display devices for physicalDevice, at
-- most pPropertyCount structures will be written. If
-- pPropertyCount is smaller than the number of display devices
-- available for physicalDevice, INCOMPLETE will be
-- returned instead of SUCCESS to indicate that not all the
-- available values were returned.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount DisplayPropertiesKHR structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayPropertiesKHR, PhysicalDevice
getPhysicalDeviceDisplayPropertiesKHR :: forall io. MonadIO io => PhysicalDevice -> io (Result, "properties" ::: Vector DisplayPropertiesKHR)
-- | vkGetPhysicalDeviceDisplayPlanePropertiesKHR - Query the plane
-- properties
--
-- Description
--
-- If pProperties is NULL, then the number of display
-- planes available for physicalDevice is returned in
-- pPropertyCount. Otherwise, pPropertyCount
-- must point to a variable set by the user to the number of
-- elements in the pProperties array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pProperties. If the value of pPropertyCount is less
-- than the number of display planes for physicalDevice, at most
-- pPropertyCount structures will be written.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount DisplayPlanePropertiesKHR
-- structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayPlanePropertiesKHR, PhysicalDevice
getPhysicalDeviceDisplayPlanePropertiesKHR :: forall io. MonadIO io => PhysicalDevice -> io (Result, "properties" ::: Vector DisplayPlanePropertiesKHR)
-- | vkGetDisplayPlaneSupportedDisplaysKHR - Query the list of displays a
-- plane supports
--
-- Description
--
-- If pDisplays is NULL, then the number of displays
-- usable with the specified planeIndex for
-- physicalDevice is returned in pDisplayCount.
-- Otherwise, pDisplayCount must point to a variable set
-- by the user to the number of elements in the pDisplays array,
-- and on return the variable is overwritten with the number of handles
-- actually written to pDisplays. If the value of
-- pDisplayCount is less than the number of display planes for
-- physicalDevice, at most pDisplayCount handles will
-- be written. If pDisplayCount is smaller than the number of
-- displays usable with the specified planeIndex for
-- physicalDevice, INCOMPLETE will be returned instead of
-- SUCCESS to indicate that not all the available values were
-- returned.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pDisplayCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pDisplayCount is not
-- 0, and pDisplays is not NULL,
-- pDisplays must be a valid pointer to an array of
-- pDisplayCount DisplayKHR handles
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayKHR, PhysicalDevice
getDisplayPlaneSupportedDisplaysKHR :: forall io. MonadIO io => PhysicalDevice -> ("planeIndex" ::: Word32) -> io (Result, "displays" ::: Vector DisplayKHR)
-- | vkGetDisplayModePropertiesKHR - Query the set of mode properties
-- supported by the display
--
-- Description
--
-- If pProperties is NULL, then the number of display
-- modes available on the specified display for
-- physicalDevice is returned in pPropertyCount.
-- Otherwise, pPropertyCount must point to a variable set
-- by the user to the number of elements in the pProperties
-- array, and on return the variable is overwritten with the number of
-- structures actually written to pProperties. If the value of
-- pPropertyCount is less than the number of display modes for
-- physicalDevice, at most pPropertyCount structures
-- will be written. If pPropertyCount is smaller than the number
-- of display modes available on the specified display for
-- physicalDevice, INCOMPLETE will be returned instead of
-- SUCCESS to indicate that not all the available values were
-- returned.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - display must be a valid DisplayKHR
-- handle
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount DisplayModePropertiesKHR
-- structures
-- - display must have been created, allocated, or
-- retrieved from physicalDevice
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayKHR, DisplayModePropertiesKHR,
-- PhysicalDevice
getDisplayModePropertiesKHR :: forall io. MonadIO io => PhysicalDevice -> DisplayKHR -> io (Result, "properties" ::: Vector DisplayModePropertiesKHR)
-- | vkCreateDisplayModeKHR - Create a display mode
--
-- Valid Usage (Implicit)
--
--
--
--
-- - display must be a valid DisplayKHR
-- handle
-- - pCreateInfo must be a valid pointer to a valid
-- DisplayModeCreateInfoKHR structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pMode must be a valid pointer to a
-- DisplayModeKHR handle
-- - display must have been created, allocated, or
-- retrieved from physicalDevice
--
--
-- Host Synchronization
--
--
-- - Host access to display must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DisplayKHR,
-- DisplayModeCreateInfoKHR, DisplayModeKHR,
-- PhysicalDevice
createDisplayModeKHR :: forall io. MonadIO io => PhysicalDevice -> DisplayKHR -> DisplayModeCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io DisplayModeKHR
-- | vkGetDisplayPlaneCapabilitiesKHR - Query capabilities of a mode and
-- plane combination
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to mode must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayModeKHR, DisplayPlaneCapabilitiesKHR,
-- PhysicalDevice
getDisplayPlaneCapabilitiesKHR :: forall io. MonadIO io => PhysicalDevice -> DisplayModeKHR -> ("planeIndex" ::: Word32) -> io DisplayPlaneCapabilitiesKHR
-- | vkCreateDisplayPlaneSurfaceKHR - Create a SurfaceKHR structure
-- representing a display plane and mode
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DisplaySurfaceCreateInfoKHR,
-- Instance, SurfaceKHR
createDisplayPlaneSurfaceKHR :: forall io. MonadIO io => Instance -> DisplaySurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkDisplayPropertiesKHR - Structure describing an available display
-- device
--
-- Description
--
-- Note
--
-- For devices which have no natural value to return here,
-- implementations should return the maximum resolution supported.
--
-- Note
--
-- Persistent presents may have higher latency, and may use
-- less power when the screen content is updated infrequently, or when
-- only a portion of the screen needs to be updated in most frames.
--
-- See Also
--
-- Bool32, DisplayKHR, DisplayProperties2KHR,
-- Extent2D, SurfaceTransformFlagsKHR,
-- getPhysicalDeviceDisplayPropertiesKHR
data DisplayPropertiesKHR
DisplayPropertiesKHR :: DisplayKHR -> ByteString -> Extent2D -> Extent2D -> SurfaceTransformFlagsKHR -> Bool -> Bool -> DisplayPropertiesKHR
-- | display is a handle that is used to refer to the display
-- described here. This handle will be valid for the lifetime of the
-- Vulkan instance.
[$sel:display:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> DisplayKHR
-- | displayName is a pointer to a null-terminated UTF-8 string
-- containing the name of the display. Generally, this will be the name
-- provided by the display’s EDID. It can be NULL if no
-- suitable name is available. If not NULL, the memory it points
-- to must remain accessible as long as display is valid.
[$sel:displayName:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> ByteString
-- | physicalDimensions describes the physical width and height of
-- the visible portion of the display, in millimeters.
[$sel:physicalDimensions:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Extent2D
-- | physicalResolution describes the physical, native, or
-- preferred resolution of the display.
[$sel:physicalResolution:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Extent2D
-- | supportedTransforms is a bitmask of
-- SurfaceTransformFlagBitsKHR describing which transforms are
-- supported by this display.
[$sel:supportedTransforms:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> SurfaceTransformFlagsKHR
-- | planeReorderPossible tells whether the planes on this display
-- can have their z order changed. If this is TRUE, the
-- application can re-arrange the planes on this display in any
-- order relative to each other.
[$sel:planeReorderPossible:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Bool
-- | persistentContent tells whether the display supports
-- self-refresh/internal buffering. If this is true, the application
-- can submit persistent present operations on swapchains created
-- against this display.
[$sel:persistentContent:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Bool
-- | VkDisplayPlanePropertiesKHR - Structure describing display plane
-- properties
--
-- See Also
--
-- DisplayKHR, DisplayPlaneProperties2KHR,
-- getPhysicalDeviceDisplayPlanePropertiesKHR
data DisplayPlanePropertiesKHR
DisplayPlanePropertiesKHR :: DisplayKHR -> Word32 -> DisplayPlanePropertiesKHR
-- | currentDisplay is the handle of the display the plane is
-- currently associated with. If the plane is not currently attached to
-- any displays, this will be NULL_HANDLE.
[$sel:currentDisplay:DisplayPlanePropertiesKHR] :: DisplayPlanePropertiesKHR -> DisplayKHR
-- | currentStackIndex is the current z-order of the plane. This
-- will be between 0 and the value returned by
-- getPhysicalDeviceDisplayPlanePropertiesKHR in
-- pPropertyCount.
[$sel:currentStackIndex:DisplayPlanePropertiesKHR] :: DisplayPlanePropertiesKHR -> Word32
-- | VkDisplayModeParametersKHR - Structure describing display parameters
-- associated with a display mode
--
-- Description
--
-- Note
--
-- For example, a 60Hz display mode would report a refreshRate
-- of 60,000.
--
-- Valid Usage
--
--
-- - The width member of visibleRegion must be
-- greater than 0
--
--
--
-- - The height member of visibleRegion must
-- be greater than 0
-- - refreshRate must be greater than 0
--
--
-- See Also
--
-- DisplayModeCreateInfoKHR, DisplayModePropertiesKHR,
-- Extent2D
data DisplayModeParametersKHR
DisplayModeParametersKHR :: Extent2D -> Word32 -> DisplayModeParametersKHR
-- | visibleRegion is the 2D extents of the visible region.
[$sel:visibleRegion:DisplayModeParametersKHR] :: DisplayModeParametersKHR -> Extent2D
-- | refreshRate is a uint32_t that is the number of
-- times the display is refreshed each second multiplied by 1000.
[$sel:refreshRate:DisplayModeParametersKHR] :: DisplayModeParametersKHR -> Word32
-- | VkDisplayModePropertiesKHR - Structure describing display mode
-- properties
--
-- See Also
--
-- DisplayModeKHR, DisplayModeParametersKHR,
-- DisplayModeProperties2KHR, getDisplayModePropertiesKHR
data DisplayModePropertiesKHR
DisplayModePropertiesKHR :: DisplayModeKHR -> DisplayModeParametersKHR -> DisplayModePropertiesKHR
-- | displayMode is a handle to the display mode described in this
-- structure. This handle will be valid for the lifetime of the Vulkan
-- instance.
[$sel:displayMode:DisplayModePropertiesKHR] :: DisplayModePropertiesKHR -> DisplayModeKHR
-- | parameters is a DisplayModeParametersKHR structure
-- describing the display parameters associated with
-- displayMode.
[$sel:parameters:DisplayModePropertiesKHR] :: DisplayModePropertiesKHR -> DisplayModeParametersKHR
-- | VkDisplayModeCreateInfoKHR - Structure specifying parameters of a
-- newly created display mode object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayModeCreateFlagsKHR, DisplayModeParametersKHR,
-- StructureType, createDisplayModeKHR
data DisplayModeCreateInfoKHR
DisplayModeCreateInfoKHR :: DisplayModeCreateFlagsKHR -> DisplayModeParametersKHR -> DisplayModeCreateInfoKHR
-- | flags is reserved for future use, and must be zero.
--
-- flags must be 0
[$sel:flags:DisplayModeCreateInfoKHR] :: DisplayModeCreateInfoKHR -> DisplayModeCreateFlagsKHR
-- | parameters is a DisplayModeParametersKHR structure
-- describing the display parameters to use in creating the new mode. If
-- the parameters are not compatible with the specified display, the
-- implementation must return ERROR_INITIALIZATION_FAILED.
--
-- parameters must be a valid
-- DisplayModeParametersKHR structure
[$sel:parameters:DisplayModeCreateInfoKHR] :: DisplayModeCreateInfoKHR -> DisplayModeParametersKHR
-- | VkDisplayPlaneCapabilitiesKHR - Structure describing capabilities of a
-- mode and plane combination
--
-- Description
--
-- The minimum and maximum position and extent fields describe the
-- implementation limits, if any, as they apply to the specified display
-- mode and plane. Vendors may support displaying a subset of a
-- swapchain’s presentable images on the specified display plane. This is
-- expressed by returning minSrcPosition,
-- maxSrcPosition, minSrcExtent, and
-- maxSrcExtent values that indicate a range of possible
-- positions and sizes may be used to specify the region within
-- the presentable images that source pixels will be read from when
-- creating a swapchain on the specified display mode and plane.
--
-- Vendors may also support mapping the presentable images’
-- content to a subset or superset of the visible region in the specified
-- display mode. This is expressed by returning minDstPosition,
-- maxDstPosition, minDstExtent and
-- maxDstExtent values that indicate a range of possible
-- positions and sizes may be used to describe the region within
-- the display mode that the source pixels will be mapped to.
--
-- Other vendors may support only a 1-1 mapping between pixels in
-- the presentable images and the display mode. This may be
-- indicated by returning (0,0) for minSrcPosition,
-- maxSrcPosition, minDstPosition, and
-- maxDstPosition, and (display mode width, display mode height)
-- for minSrcExtent, maxSrcExtent,
-- minDstExtent, and maxDstExtent.
--
-- These values indicate the limits of the implementation’s individual
-- fields. Not all combinations of values within the offset and extent
-- ranges returned in DisplayPlaneCapabilitiesKHR are guaranteed
-- to be supported. Presentation requests specifying unsupported
-- combinations may fail.
--
-- See Also
--
-- DisplayPlaneAlphaFlagsKHR, DisplayPlaneCapabilities2KHR,
-- Extent2D, Offset2D,
-- getDisplayPlaneCapabilitiesKHR
data DisplayPlaneCapabilitiesKHR
DisplayPlaneCapabilitiesKHR :: DisplayPlaneAlphaFlagsKHR -> Offset2D -> Offset2D -> Extent2D -> Extent2D -> Offset2D -> Offset2D -> Extent2D -> Extent2D -> DisplayPlaneCapabilitiesKHR
-- | supportedAlpha is a bitmask of
-- DisplayPlaneAlphaFlagBitsKHR describing the supported alpha
-- blending modes.
[$sel:supportedAlpha:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> DisplayPlaneAlphaFlagsKHR
-- | minSrcPosition is the minimum source rectangle offset
-- supported by this plane using the specified mode.
[$sel:minSrcPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
-- | maxSrcPosition is the maximum source rectangle offset
-- supported by this plane using the specified mode. The x and
-- y components of maxSrcPosition must each be
-- greater than or equal to the x and y components of
-- minSrcPosition, respectively.
[$sel:maxSrcPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
-- | minSrcExtent is the minimum source rectangle size supported
-- by this plane using the specified mode.
[$sel:minSrcExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
-- | maxSrcExtent is the maximum source rectangle size supported
-- by this plane using the specified mode.
[$sel:maxSrcExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
-- | minDstPosition, maxDstPosition,
-- minDstExtent, maxDstExtent all have similar
-- semantics to their corresponding *Src* equivalents, but apply
-- to the output region within the mode rather than the input region
-- within the source image. Unlike the *Src* offsets,
-- minDstPosition and maxDstPosition may contain
-- negative values.
[$sel:minDstPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
[$sel:maxDstPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
[$sel:minDstExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
[$sel:maxDstExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
-- | VkDisplaySurfaceCreateInfoKHR - Structure specifying parameters of a
-- newly created display plane surface object
--
-- Description
--
-- Note
--
-- Creating a display surface must not modify the state of the
-- displays, planes, or other resources it names. For example, it
-- must not apply the specified mode to be set on the associated
-- display. Application of display configuration occurs as a side effect
-- of presenting to a display surface.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DisplayModeKHR, DisplayPlaneAlphaFlagBitsKHR,
-- DisplaySurfaceCreateFlagsKHR, Extent2D,
-- StructureType, SurfaceTransformFlagBitsKHR,
-- createDisplayPlaneSurfaceKHR
data DisplaySurfaceCreateInfoKHR
DisplaySurfaceCreateInfoKHR :: DisplaySurfaceCreateFlagsKHR -> DisplayModeKHR -> Word32 -> Word32 -> SurfaceTransformFlagBitsKHR -> Float -> DisplayPlaneAlphaFlagBitsKHR -> Extent2D -> DisplaySurfaceCreateInfoKHR
-- | flags is reserved for future use, and must be zero.
[$sel:flags:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> DisplaySurfaceCreateFlagsKHR
-- | displayMode is a DisplayModeKHR handle specifying the
-- mode to use when displaying this surface.
[$sel:displayMode:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> DisplayModeKHR
-- | planeIndex is the plane on which this surface appears.
[$sel:planeIndex:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> Word32
-- | planeStackIndex is the z-order of the plane.
[$sel:planeStackIndex:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> Word32
-- | transform is a SurfaceTransformFlagBitsKHR value
-- specifying the transformation to apply to images as part of the
-- scanout operation.
[$sel:transform:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> SurfaceTransformFlagBitsKHR
-- | globalAlpha is the global alpha value. This value is ignored
-- if alphaMode is not
-- DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR.
[$sel:globalAlpha:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> Float
-- | alphaMode is a DisplayPlaneAlphaFlagBitsKHR value
-- specifying the type of alpha blending to use.
[$sel:alphaMode:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> DisplayPlaneAlphaFlagBitsKHR
-- | imageExtent The size of the presentable images to use with
-- the surface.
[$sel:imageExtent:DisplaySurfaceCreateInfoKHR] :: DisplaySurfaceCreateInfoKHR -> Extent2D
-- | VkDisplayModeCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- DisplayModeCreateFlagsKHR is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- DisplayModeCreateInfoKHR
newtype DisplayModeCreateFlagsKHR
DisplayModeCreateFlagsKHR :: Flags -> DisplayModeCreateFlagsKHR
-- | VkDisplaySurfaceCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- DisplaySurfaceCreateFlagsKHR is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- DisplaySurfaceCreateInfoKHR
newtype DisplaySurfaceCreateFlagsKHR
DisplaySurfaceCreateFlagsKHR :: Flags -> DisplaySurfaceCreateFlagsKHR
-- | VkDisplayPlaneAlphaFlagBitsKHR - Alpha blending type
--
-- See Also
--
-- DisplayPlaneAlphaFlagsKHR, DisplaySurfaceCreateInfoKHR
newtype DisplayPlaneAlphaFlagBitsKHR
DisplayPlaneAlphaFlagBitsKHR :: Flags -> DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR specifies that the source
-- image will be treated as opaque.
pattern DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR specifies that a global
-- alpha value must be specified that will be applied to all
-- pixels in the source image.
pattern DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR specifies that the alpha
-- value will be determined by the alpha channel of the source image’s
-- pixels. If the source format contains no alpha values, no blending
-- will be applied. The source alpha values are not premultiplied into
-- the source image’s other color channels.
pattern DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR is
-- equivalent to DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR, except the
-- source alpha values are assumed to be premultiplied into the source
-- image’s other color channels.
pattern DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
type DisplayPlaneAlphaFlagsKHR = DisplayPlaneAlphaFlagBitsKHR
type KHR_DISPLAY_SPEC_VERSION = 23
pattern KHR_DISPLAY_SPEC_VERSION :: forall a. Integral a => a
type KHR_DISPLAY_EXTENSION_NAME = "VK_KHR_display"
pattern KHR_DISPLAY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDisplayKHR - Opaque handle to a display object
--
-- See Also
--
-- DisplayPlanePropertiesKHR, DisplayPropertiesKHR,
-- acquireXlibDisplayEXT, createDisplayModeKHR,
-- displayPowerControlEXT, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getRandROutputDisplayEXT, registerDisplayEventEXT,
-- releaseDisplayEXT
newtype DisplayKHR
DisplayKHR :: Word64 -> DisplayKHR
-- | VkDisplayModeKHR - Opaque handle to a display mode object
--
-- See Also
--
-- DisplayModePropertiesKHR, DisplayPlaneInfo2KHR,
-- DisplaySurfaceCreateInfoKHR, createDisplayModeKHR,
-- getDisplayPlaneCapabilitiesKHR
newtype DisplayModeKHR
DisplayModeKHR :: Word64 -> DisplayModeKHR
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplayPropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayPropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplayModeParametersKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayModeParametersKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplayModePropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayModePropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplayModeCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayModeCreateInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplayPlaneCapabilitiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayPlaneCapabilitiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplayPlaneCapabilitiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplayPlaneCapabilitiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayPlaneCapabilitiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_display.DisplayPlaneAlphaFlagBitsKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_display.DisplaySurfaceCreateFlagsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplayModeCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplayModeCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayModeCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_display.DisplayModeCreateFlagsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplayModePropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplayModePropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayModePropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplayModeParametersKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplayModeParametersKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayModeParametersKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayPlanePropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_display.DisplayPropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_display.DisplayPropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_display.DisplayPropertiesKHR
module Vulkan.Extensions.VK_KHR_get_display_properties2
-- | vkGetPhysicalDeviceDisplayProperties2KHR - Query information about the
-- available displays
--
-- Description
--
-- getPhysicalDeviceDisplayProperties2KHR behaves similarly to
-- getPhysicalDeviceDisplayPropertiesKHR, with the ability to
-- return extended information via chained output structures.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount DisplayProperties2KHR structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayProperties2KHR, PhysicalDevice
getPhysicalDeviceDisplayProperties2KHR :: forall io. MonadIO io => PhysicalDevice -> io (Result, "properties" ::: Vector DisplayProperties2KHR)
-- | vkGetPhysicalDeviceDisplayPlaneProperties2KHR - Query information
-- about the available display planes.
--
-- Description
--
-- getPhysicalDeviceDisplayPlaneProperties2KHR behaves similarly
-- to getPhysicalDeviceDisplayPlanePropertiesKHR, with the ability
-- to return extended information via chained output structures.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount DisplayPlaneProperties2KHR
-- structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayPlaneProperties2KHR, PhysicalDevice
getPhysicalDeviceDisplayPlaneProperties2KHR :: forall io. MonadIO io => PhysicalDevice -> io (Result, "properties" ::: Vector DisplayPlaneProperties2KHR)
-- | vkGetDisplayModeProperties2KHR - Query information about the available
-- display modes.
--
-- Description
--
-- getDisplayModeProperties2KHR behaves similarly to
-- getDisplayModePropertiesKHR, with the ability to return
-- extended information via chained output structures.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - display must be a valid DisplayKHR
-- handle
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount DisplayModeProperties2KHR
-- structures
-- - display must have been created, allocated, or
-- retrieved from physicalDevice
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayKHR, DisplayModeProperties2KHR,
-- PhysicalDevice
getDisplayModeProperties2KHR :: forall io. MonadIO io => PhysicalDevice -> DisplayKHR -> io (Result, "properties" ::: Vector DisplayModeProperties2KHR)
-- | vkGetDisplayPlaneCapabilities2KHR - Query capabilities of a mode and
-- plane combination
--
-- Description
--
-- getDisplayPlaneCapabilities2KHR behaves similarly to
-- getDisplayPlaneCapabilitiesKHR, with the ability to specify
-- extended inputs via chained input structures, and to return extended
-- information via chained output structures.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- PhysicalDevice
getDisplayPlaneCapabilities2KHR :: forall io. MonadIO io => PhysicalDevice -> DisplayPlaneInfo2KHR -> io DisplayPlaneCapabilities2KHR
-- | VkDisplayProperties2KHR - Structure describing an available display
-- device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayPropertiesKHR, StructureType,
-- getPhysicalDeviceDisplayProperties2KHR
data DisplayProperties2KHR
DisplayProperties2KHR :: DisplayPropertiesKHR -> DisplayProperties2KHR
-- | displayProperties is a DisplayPropertiesKHR structure.
[$sel:displayProperties:DisplayProperties2KHR] :: DisplayProperties2KHR -> DisplayPropertiesKHR
-- | VkDisplayPlaneProperties2KHR - Structure describing an available
-- display plane
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayPlanePropertiesKHR, StructureType,
-- getPhysicalDeviceDisplayPlaneProperties2KHR
data DisplayPlaneProperties2KHR
DisplayPlaneProperties2KHR :: DisplayPlanePropertiesKHR -> DisplayPlaneProperties2KHR
-- | displayPlaneProperties is a DisplayPlanePropertiesKHR
-- structure.
[$sel:displayPlaneProperties:DisplayPlaneProperties2KHR] :: DisplayPlaneProperties2KHR -> DisplayPlanePropertiesKHR
-- | VkDisplayModeProperties2KHR - Structure describing an available
-- display mode
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayModePropertiesKHR, StructureType,
-- getDisplayModeProperties2KHR
data DisplayModeProperties2KHR
DisplayModeProperties2KHR :: DisplayModePropertiesKHR -> DisplayModeProperties2KHR
-- | displayModeProperties is a DisplayModePropertiesKHR
-- structure.
[$sel:displayModeProperties:DisplayModeProperties2KHR] :: DisplayModeProperties2KHR -> DisplayModePropertiesKHR
-- | VkDisplayPlaneInfo2KHR - Structure defining the intended configuration
-- of a display plane
--
-- Description
--
-- Note
--
-- This parameter also implicitly specifies a display.
--
--
-- - planeIndex is the plane which the application intends to
-- use with the display.
--
--
-- The members of DisplayPlaneInfo2KHR correspond to the arguments
-- to getDisplayPlaneCapabilitiesKHR, with sType and
-- pNext added for extensibility.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - mode must be a valid DisplayModeKHR
-- handle
--
--
-- Host Synchronization
--
--
-- - Host access to mode must be externally
-- synchronized
--
--
-- See Also
--
-- DisplayModeKHR, StructureType,
-- getDisplayPlaneCapabilities2KHR
data DisplayPlaneInfo2KHR
DisplayPlaneInfo2KHR :: DisplayModeKHR -> Word32 -> DisplayPlaneInfo2KHR
-- | mode is the display mode the application intends to program
-- when using the specified plane.
[$sel:mode:DisplayPlaneInfo2KHR] :: DisplayPlaneInfo2KHR -> DisplayModeKHR
[$sel:planeIndex:DisplayPlaneInfo2KHR] :: DisplayPlaneInfo2KHR -> Word32
-- | VkDisplayPlaneCapabilities2KHR - Structure describing the capabilities
-- of a mode and plane combination
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayPlaneCapabilitiesKHR, StructureType,
-- getDisplayPlaneCapabilities2KHR
data DisplayPlaneCapabilities2KHR
DisplayPlaneCapabilities2KHR :: DisplayPlaneCapabilitiesKHR -> DisplayPlaneCapabilities2KHR
-- | capabilities is a DisplayPlaneCapabilitiesKHR
-- structure.
[$sel:capabilities:DisplayPlaneCapabilities2KHR] :: DisplayPlaneCapabilities2KHR -> DisplayPlaneCapabilitiesKHR
type KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION = 1
pattern KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION :: forall a. Integral a => a
type KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME = "VK_KHR_get_display_properties2"
pattern KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDisplayKHR - Opaque handle to a display object
--
-- See Also
--
-- DisplayPlanePropertiesKHR, DisplayPropertiesKHR,
-- acquireXlibDisplayEXT, createDisplayModeKHR,
-- displayPowerControlEXT, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getRandROutputDisplayEXT, registerDisplayEventEXT,
-- releaseDisplayEXT
newtype DisplayKHR
DisplayKHR :: Word64 -> DisplayKHR
-- | VkDisplayModeKHR - Opaque handle to a display mode object
--
-- See Also
--
-- DisplayModePropertiesKHR, DisplayPlaneInfo2KHR,
-- DisplaySurfaceCreateInfoKHR, createDisplayModeKHR,
-- getDisplayPlaneCapabilitiesKHR
newtype DisplayModeKHR
DisplayModeKHR :: Word64 -> DisplayModeKHR
-- | VkDisplayPropertiesKHR - Structure describing an available display
-- device
--
-- Description
--
-- Note
--
-- For devices which have no natural value to return here,
-- implementations should return the maximum resolution supported.
--
-- Note
--
-- Persistent presents may have higher latency, and may use
-- less power when the screen content is updated infrequently, or when
-- only a portion of the screen needs to be updated in most frames.
--
-- See Also
--
-- Bool32, DisplayKHR, DisplayProperties2KHR,
-- Extent2D, SurfaceTransformFlagsKHR,
-- getPhysicalDeviceDisplayPropertiesKHR
data DisplayPropertiesKHR
DisplayPropertiesKHR :: DisplayKHR -> ByteString -> Extent2D -> Extent2D -> SurfaceTransformFlagsKHR -> Bool -> Bool -> DisplayPropertiesKHR
-- | display is a handle that is used to refer to the display
-- described here. This handle will be valid for the lifetime of the
-- Vulkan instance.
[$sel:display:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> DisplayKHR
-- | displayName is a pointer to a null-terminated UTF-8 string
-- containing the name of the display. Generally, this will be the name
-- provided by the display’s EDID. It can be NULL if no
-- suitable name is available. If not NULL, the memory it points
-- to must remain accessible as long as display is valid.
[$sel:displayName:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> ByteString
-- | physicalDimensions describes the physical width and height of
-- the visible portion of the display, in millimeters.
[$sel:physicalDimensions:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Extent2D
-- | physicalResolution describes the physical, native, or
-- preferred resolution of the display.
[$sel:physicalResolution:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Extent2D
-- | supportedTransforms is a bitmask of
-- SurfaceTransformFlagBitsKHR describing which transforms are
-- supported by this display.
[$sel:supportedTransforms:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> SurfaceTransformFlagsKHR
-- | planeReorderPossible tells whether the planes on this display
-- can have their z order changed. If this is TRUE, the
-- application can re-arrange the planes on this display in any
-- order relative to each other.
[$sel:planeReorderPossible:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Bool
-- | persistentContent tells whether the display supports
-- self-refresh/internal buffering. If this is true, the application
-- can submit persistent present operations on swapchains created
-- against this display.
[$sel:persistentContent:DisplayPropertiesKHR] :: DisplayPropertiesKHR -> Bool
-- | VkDisplayPlanePropertiesKHR - Structure describing display plane
-- properties
--
-- See Also
--
-- DisplayKHR, DisplayPlaneProperties2KHR,
-- getPhysicalDeviceDisplayPlanePropertiesKHR
data DisplayPlanePropertiesKHR
DisplayPlanePropertiesKHR :: DisplayKHR -> Word32 -> DisplayPlanePropertiesKHR
-- | currentDisplay is the handle of the display the plane is
-- currently associated with. If the plane is not currently attached to
-- any displays, this will be NULL_HANDLE.
[$sel:currentDisplay:DisplayPlanePropertiesKHR] :: DisplayPlanePropertiesKHR -> DisplayKHR
-- | currentStackIndex is the current z-order of the plane. This
-- will be between 0 and the value returned by
-- getPhysicalDeviceDisplayPlanePropertiesKHR in
-- pPropertyCount.
[$sel:currentStackIndex:DisplayPlanePropertiesKHR] :: DisplayPlanePropertiesKHR -> Word32
-- | VkDisplayModeParametersKHR - Structure describing display parameters
-- associated with a display mode
--
-- Description
--
-- Note
--
-- For example, a 60Hz display mode would report a refreshRate
-- of 60,000.
--
-- Valid Usage
--
--
-- - The width member of visibleRegion must be
-- greater than 0
--
--
--
-- - The height member of visibleRegion must
-- be greater than 0
-- - refreshRate must be greater than 0
--
--
-- See Also
--
-- DisplayModeCreateInfoKHR, DisplayModePropertiesKHR,
-- Extent2D
data DisplayModeParametersKHR
DisplayModeParametersKHR :: Extent2D -> Word32 -> DisplayModeParametersKHR
-- | visibleRegion is the 2D extents of the visible region.
[$sel:visibleRegion:DisplayModeParametersKHR] :: DisplayModeParametersKHR -> Extent2D
-- | refreshRate is a uint32_t that is the number of
-- times the display is refreshed each second multiplied by 1000.
[$sel:refreshRate:DisplayModeParametersKHR] :: DisplayModeParametersKHR -> Word32
-- | VkDisplayModePropertiesKHR - Structure describing display mode
-- properties
--
-- See Also
--
-- DisplayModeKHR, DisplayModeParametersKHR,
-- DisplayModeProperties2KHR, getDisplayModePropertiesKHR
data DisplayModePropertiesKHR
DisplayModePropertiesKHR :: DisplayModeKHR -> DisplayModeParametersKHR -> DisplayModePropertiesKHR
-- | displayMode is a handle to the display mode described in this
-- structure. This handle will be valid for the lifetime of the Vulkan
-- instance.
[$sel:displayMode:DisplayModePropertiesKHR] :: DisplayModePropertiesKHR -> DisplayModeKHR
-- | parameters is a DisplayModeParametersKHR structure
-- describing the display parameters associated with
-- displayMode.
[$sel:parameters:DisplayModePropertiesKHR] :: DisplayModePropertiesKHR -> DisplayModeParametersKHR
-- | VkDisplayPlaneCapabilitiesKHR - Structure describing capabilities of a
-- mode and plane combination
--
-- Description
--
-- The minimum and maximum position and extent fields describe the
-- implementation limits, if any, as they apply to the specified display
-- mode and plane. Vendors may support displaying a subset of a
-- swapchain’s presentable images on the specified display plane. This is
-- expressed by returning minSrcPosition,
-- maxSrcPosition, minSrcExtent, and
-- maxSrcExtent values that indicate a range of possible
-- positions and sizes may be used to specify the region within
-- the presentable images that source pixels will be read from when
-- creating a swapchain on the specified display mode and plane.
--
-- Vendors may also support mapping the presentable images’
-- content to a subset or superset of the visible region in the specified
-- display mode. This is expressed by returning minDstPosition,
-- maxDstPosition, minDstExtent and
-- maxDstExtent values that indicate a range of possible
-- positions and sizes may be used to describe the region within
-- the display mode that the source pixels will be mapped to.
--
-- Other vendors may support only a 1-1 mapping between pixels in
-- the presentable images and the display mode. This may be
-- indicated by returning (0,0) for minSrcPosition,
-- maxSrcPosition, minDstPosition, and
-- maxDstPosition, and (display mode width, display mode height)
-- for minSrcExtent, maxSrcExtent,
-- minDstExtent, and maxDstExtent.
--
-- These values indicate the limits of the implementation’s individual
-- fields. Not all combinations of values within the offset and extent
-- ranges returned in DisplayPlaneCapabilitiesKHR are guaranteed
-- to be supported. Presentation requests specifying unsupported
-- combinations may fail.
--
-- See Also
--
-- DisplayPlaneAlphaFlagsKHR, DisplayPlaneCapabilities2KHR,
-- Extent2D, Offset2D,
-- getDisplayPlaneCapabilitiesKHR
data DisplayPlaneCapabilitiesKHR
DisplayPlaneCapabilitiesKHR :: DisplayPlaneAlphaFlagsKHR -> Offset2D -> Offset2D -> Extent2D -> Extent2D -> Offset2D -> Offset2D -> Extent2D -> Extent2D -> DisplayPlaneCapabilitiesKHR
-- | supportedAlpha is a bitmask of
-- DisplayPlaneAlphaFlagBitsKHR describing the supported alpha
-- blending modes.
[$sel:supportedAlpha:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> DisplayPlaneAlphaFlagsKHR
-- | minSrcPosition is the minimum source rectangle offset
-- supported by this plane using the specified mode.
[$sel:minSrcPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
-- | maxSrcPosition is the maximum source rectangle offset
-- supported by this plane using the specified mode. The x and
-- y components of maxSrcPosition must each be
-- greater than or equal to the x and y components of
-- minSrcPosition, respectively.
[$sel:maxSrcPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
-- | minSrcExtent is the minimum source rectangle size supported
-- by this plane using the specified mode.
[$sel:minSrcExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
-- | maxSrcExtent is the maximum source rectangle size supported
-- by this plane using the specified mode.
[$sel:maxSrcExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
-- | minDstPosition, maxDstPosition,
-- minDstExtent, maxDstExtent all have similar
-- semantics to their corresponding *Src* equivalents, but apply
-- to the output region within the mode rather than the input region
-- within the source image. Unlike the *Src* offsets,
-- minDstPosition and maxDstPosition may contain
-- negative values.
[$sel:minDstPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
[$sel:maxDstPosition:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Offset2D
[$sel:minDstExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
[$sel:maxDstExtent:DisplayPlaneCapabilitiesKHR] :: DisplayPlaneCapabilitiesKHR -> Extent2D
-- | VkDisplayPlaneAlphaFlagBitsKHR - Alpha blending type
--
-- See Also
--
-- DisplayPlaneAlphaFlagsKHR, DisplaySurfaceCreateInfoKHR
newtype DisplayPlaneAlphaFlagBitsKHR
DisplayPlaneAlphaFlagBitsKHR :: Flags -> DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR specifies that the source
-- image will be treated as opaque.
pattern DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR specifies that a global
-- alpha value must be specified that will be applied to all
-- pixels in the source image.
pattern DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR specifies that the alpha
-- value will be determined by the alpha channel of the source image’s
-- pixels. If the source format contains no alpha values, no blending
-- will be applied. The source alpha values are not premultiplied into
-- the source image’s other color channels.
pattern DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
-- | DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR is
-- equivalent to DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR, except the
-- source alpha values are assumed to be premultiplied into the source
-- image’s other color channels.
pattern DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR :: DisplayPlaneAlphaFlagBitsKHR
type DisplayPlaneAlphaFlagsKHR = DisplayPlaneAlphaFlagBitsKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayProperties2KHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayProperties2KHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneProperties2KHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneProperties2KHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayModeProperties2KHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayModeProperties2KHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneCapabilities2KHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneCapabilities2KHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneCapabilities2KHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneCapabilities2KHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneCapabilities2KHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneInfo2KHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayModeProperties2KHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayModeProperties2KHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayModeProperties2KHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneProperties2KHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneProperties2KHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayPlaneProperties2KHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayProperties2KHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayProperties2KHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_get_display_properties2.DisplayProperties2KHR
module Vulkan.Extensions.VK_KHR_device_group
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR :: StructureType
pattern PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR :: PeerMemoryFeatureFlagBits
pattern PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR :: PeerMemoryFeatureFlagBits
pattern PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR :: PeerMemoryFeatureFlagBits
pattern PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR :: PeerMemoryFeatureFlagBits
pattern MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR :: MemoryAllocateFlagBits
pattern PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISPATCH_BASE_KHR :: PipelineCreateFlagBits
pattern DEPENDENCY_DEVICE_GROUP_BIT_KHR :: DependencyFlagBits
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR :: StructureType
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: ImageCreateFlagBits
getDeviceGroupPeerMemoryFeaturesKHR :: MonadIO io => Device -> ("heapIndex" ::: Word32) -> ("localDeviceIndex" ::: Word32) -> ("remoteDeviceIndex" ::: Word32) -> io ("peerMemoryFeatures" ::: PeerMemoryFeatureFlags)
cmdSetDeviceMaskKHR :: MonadIO io => CommandBuffer -> ("deviceMask" ::: Word32) -> io ()
cmdDispatchBaseKHR :: MonadIO io => CommandBuffer -> ("baseGroupX" ::: Word32) -> ("baseGroupY" ::: Word32) -> ("baseGroupZ" ::: Word32) -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> io ()
type PeerMemoryFeatureFlagsKHR = PeerMemoryFeatureFlags
type MemoryAllocateFlagsKHR = MemoryAllocateFlags
type PeerMemoryFeatureFlagBitsKHR = PeerMemoryFeatureFlagBits
type MemoryAllocateFlagBitsKHR = MemoryAllocateFlagBits
type MemoryAllocateFlagsInfoKHR = MemoryAllocateFlagsInfo
type BindBufferMemoryDeviceGroupInfoKHR = BindBufferMemoryDeviceGroupInfo
type BindImageMemoryDeviceGroupInfoKHR = BindImageMemoryDeviceGroupInfo
type DeviceGroupRenderPassBeginInfoKHR = DeviceGroupRenderPassBeginInfo
type DeviceGroupCommandBufferBeginInfoKHR = DeviceGroupCommandBufferBeginInfo
type DeviceGroupSubmitInfoKHR = DeviceGroupSubmitInfo
type DeviceGroupBindSparseInfoKHR = DeviceGroupBindSparseInfo
type KHR_DEVICE_GROUP_SPEC_VERSION = 4
pattern KHR_DEVICE_GROUP_SPEC_VERSION :: forall a. Integral a => a
type KHR_DEVICE_GROUP_EXTENSION_NAME = "VK_KHR_device_group"
pattern KHR_DEVICE_GROUP_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkDeviceGroupPresentCapabilitiesKHR - Present capabilities from other
-- physical devices
--
-- Description
--
-- modes always has
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR set.
--
-- The present mode flags are also used when presenting an image, in
-- DeviceGroupPresentInfoKHR::mode.
--
-- If a device group only includes a single physical device, then
-- modes must equal
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceGroupPresentModeFlagsKHR, StructureType,
-- getDeviceGroupPresentCapabilitiesKHR
data DeviceGroupPresentCapabilitiesKHR
DeviceGroupPresentCapabilitiesKHR :: Vector Word32 -> DeviceGroupPresentModeFlagsKHR -> DeviceGroupPresentCapabilitiesKHR
-- | presentMask is an array of MAX_DEVICE_GROUP_SIZE
-- uint32_t masks, where the mask at element i is non-zero if
-- physical device i has a presentation engine, and where bit j is set in
-- element i if physical device i can present swapchain images
-- from physical device j. If element i is non-zero, then bit i
-- must be set.
[$sel:presentMask:DeviceGroupPresentCapabilitiesKHR] :: DeviceGroupPresentCapabilitiesKHR -> Vector Word32
-- | modes is a bitmask of
-- DeviceGroupPresentModeFlagBitsKHR indicating which device group
-- presentation modes are supported.
[$sel:modes:DeviceGroupPresentCapabilitiesKHR] :: DeviceGroupPresentCapabilitiesKHR -> DeviceGroupPresentModeFlagsKHR
-- | VkImageSwapchainCreateInfoKHR - Specify that an image will be bound to
-- swapchain memory
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, SwapchainKHR
data ImageSwapchainCreateInfoKHR
ImageSwapchainCreateInfoKHR :: SwapchainKHR -> ImageSwapchainCreateInfoKHR
-- | swapchain is NULL_HANDLE or a handle of a swapchain
-- that the image will be bound to.
[$sel:swapchain:ImageSwapchainCreateInfoKHR] :: ImageSwapchainCreateInfoKHR -> SwapchainKHR
-- | VkBindImageMemorySwapchainInfoKHR - Structure specifying swapchain
-- image memory to bind to
--
-- Description
--
-- If swapchain is not NULL, the swapchain and
-- imageIndex are used to determine the memory that the image is
-- bound to, instead of memory and memoryOffset.
--
-- Memory can be bound to a swapchain and use the
-- pDeviceIndices or pSplitInstanceBindRegions members
-- of BindImageMemoryDeviceGroupInfo.
--
-- Valid Usage
--
--
-- - imageIndex must be less than the number of images
-- in swapchain
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
-- See Also
--
-- StructureType, SwapchainKHR
data BindImageMemorySwapchainInfoKHR
BindImageMemorySwapchainInfoKHR :: SwapchainKHR -> Word32 -> BindImageMemorySwapchainInfoKHR
-- | swapchain is NULL_HANDLE or a swapchain handle.
[$sel:swapchain:BindImageMemorySwapchainInfoKHR] :: BindImageMemorySwapchainInfoKHR -> SwapchainKHR
-- | imageIndex is an image index within swapchain.
[$sel:imageIndex:BindImageMemorySwapchainInfoKHR] :: BindImageMemorySwapchainInfoKHR -> Word32
-- | VkAcquireNextImageInfoKHR - Structure specifying parameters of the
-- acquire
--
-- Description
--
-- If acquireNextImageKHR is used, the device mask is considered
-- to include all physical devices in the logical device.
--
-- Note
--
-- acquireNextImage2KHR signals at most one semaphore, even if the
-- application requests waiting for multiple physical devices to be ready
-- via the deviceMask. However, only a single physical device
-- can wait on that semaphore, since the semaphore becomes
-- unsignaled when the wait succeeds. For other physical devices to wait
-- for the image to be ready, it is necessary for the application to
-- submit semaphore signal operation(s) to that first physical device to
-- signal additional semaphore(s) after the wait succeeds, which the
-- other physical device(s) can wait upon.
--
-- Valid Usage
--
--
-- - swapchain must not be in the retired state
--
--
--
-- - If semaphore is not NULL_HANDLE it must be
-- unsignaled
-- - If semaphore is not NULL_HANDLE it must not
-- have any uncompleted signal or wait operations pending
-- - If fence is not NULL_HANDLE it must be
-- unsignaled and must not be associated with any other queue
-- command that has not yet completed execution on that queue
-- - semaphore and fence must not both be
-- equal to NULL_HANDLE
-- - deviceMask must be a valid device mask
-- - deviceMask must not be zero
-- - semaphore must have a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - If semaphore is not NULL_HANDLE,
-- semaphore must be a valid Semaphore handle
-- - If fence is not NULL_HANDLE, fence
-- must be a valid Fence handle
-- - Each of fence, semaphore, and swapchain
-- that are valid handles of non-ignored parameters must have been
-- created, allocated, or retrieved from the same Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
--
-- - Host access to semaphore must be externally
-- synchronized
-- - Host access to fence must be externally
-- synchronized
--
--
-- See Also
--
-- Fence, Semaphore, StructureType,
-- SwapchainKHR, acquireNextImage2KHR
data AcquireNextImageInfoKHR
AcquireNextImageInfoKHR :: SwapchainKHR -> Word64 -> Semaphore -> Fence -> Word32 -> AcquireNextImageInfoKHR
-- | swapchain is a non-retired swapchain from which an image is
-- acquired.
[$sel:swapchain:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> SwapchainKHR
-- | timeout specifies how long the function waits, in
-- nanoseconds, if no image is available.
[$sel:timeout:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Word64
-- | semaphore is NULL_HANDLE or a semaphore to signal.
[$sel:semaphore:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Semaphore
-- | fence is NULL_HANDLE or a fence to signal.
[$sel:fence:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Fence
-- | deviceMask is a mask of physical devices for which the
-- swapchain image will be ready to use when the semaphore or fence is
-- signaled.
[$sel:deviceMask:AcquireNextImageInfoKHR] :: AcquireNextImageInfoKHR -> Word32
-- | VkDeviceGroupPresentInfoKHR - Mode and mask controlling which physical
-- devices' images are presented
--
-- Description
--
-- If mode is DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR,
-- then each element of pDeviceMasks selects which instance of
-- the swapchain image is presented. Each element of
-- pDeviceMasks must have exactly one bit set, and the
-- corresponding physical device must have a presentation engine
-- as reported by DeviceGroupPresentCapabilitiesKHR.
--
-- If mode is DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR,
-- then each element of pDeviceMasks selects which instance of
-- the swapchain image is presented. Each element of
-- pDeviceMasks must have exactly one bit set, and some
-- physical device in the logical device must include that bit in
-- its DeviceGroupPresentCapabilitiesKHR::presentMask.
--
-- If mode is DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR, then
-- each element of pDeviceMasks selects which instances of the
-- swapchain image are component-wise summed and the sum of those images
-- is presented. If the sum in any component is outside the representable
-- range, the value of that component is undefined. Each element of
-- pDeviceMasks must have a value for which all set bits
-- are set in one of the elements of
-- DeviceGroupPresentCapabilitiesKHR::presentMask.
--
-- If mode is
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR, then each
-- element of pDeviceMasks selects which instance(s) of the
-- swapchain images are presented. For each bit set in each element of
-- pDeviceMasks, the corresponding physical device must
-- have a presentation engine as reported by
-- DeviceGroupPresentCapabilitiesKHR.
--
-- If DeviceGroupPresentInfoKHR is not provided or
-- swapchainCount is zero then the masks are considered to be
-- 1. If DeviceGroupPresentInfoKHR is not provided,
-- mode is considered to be
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR.
--
-- Valid Usage
--
--
-- - swapchainCount must equal 0 or
-- PresentInfoKHR::swapchainCount
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If swapchainCount is not 0,
-- pDeviceMasks must be a valid pointer to an array of
-- swapchainCount uint32_t values
-- - mode must be a valid
-- DeviceGroupPresentModeFlagBitsKHR value
--
--
-- See Also
--
-- DeviceGroupPresentModeFlagBitsKHR, StructureType
data DeviceGroupPresentInfoKHR
DeviceGroupPresentInfoKHR :: Vector Word32 -> DeviceGroupPresentModeFlagBitsKHR -> DeviceGroupPresentInfoKHR
-- | pDeviceMasks is a pointer to an array of device masks, one
-- for each element of PresentInfoKHR::pSwapchains.
[$sel:deviceMasks:DeviceGroupPresentInfoKHR] :: DeviceGroupPresentInfoKHR -> Vector Word32
-- | mode is the device group present mode that will be used for
-- this present.
[$sel:mode:DeviceGroupPresentInfoKHR] :: DeviceGroupPresentInfoKHR -> DeviceGroupPresentModeFlagBitsKHR
-- | VkDeviceGroupSwapchainCreateInfoKHR - Structure specifying parameters
-- of a newly created swapchain object
--
-- Description
--
-- If this structure is not present, modes is considered to be
-- DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceGroupPresentModeFlagsKHR, StructureType
data DeviceGroupSwapchainCreateInfoKHR
DeviceGroupSwapchainCreateInfoKHR :: DeviceGroupPresentModeFlagsKHR -> DeviceGroupSwapchainCreateInfoKHR
-- | modes is a bitfield of modes that the swapchain can be
-- used with.
--
-- modes must be a valid combination of
-- DeviceGroupPresentModeFlagBitsKHR values
--
-- modes must not be 0
[$sel:modes:DeviceGroupSwapchainCreateInfoKHR] :: DeviceGroupSwapchainCreateInfoKHR -> DeviceGroupPresentModeFlagsKHR
-- | vkGetDeviceGroupPresentCapabilitiesKHR - Query present capabilities
-- from other physical devices
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceGroupPresentCapabilitiesKHR
getDeviceGroupPresentCapabilitiesKHR :: forall io. MonadIO io => Device -> io DeviceGroupPresentCapabilitiesKHR
-- | vkGetDeviceGroupSurfacePresentModesKHR - Query present capabilities
-- for a surface
--
-- Description
--
-- The modes returned by this command are not invariant, and may
-- change in response to the surface being moved, resized, or occluded.
-- These modes must be a subset of the modes returned by
-- getDeviceGroupPresentCapabilitiesKHR.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to surface must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceGroupPresentModeFlagsKHR,
-- SurfaceKHR
getDeviceGroupSurfacePresentModesKHR :: forall io. MonadIO io => Device -> SurfaceKHR -> io ("modes" ::: DeviceGroupPresentModeFlagsKHR)
-- | vkAcquireNextImage2KHR - Retrieve the index of the next available
-- presentable image
--
-- Valid Usage
--
--
-- - If the number of currently acquired images is greater than the
-- difference between the number of images in the swapchain
-- member of pAcquireInfo and the value of
-- SurfaceCapabilitiesKHR::minImageCount as returned by a
-- call to getPhysicalDeviceSurfaceCapabilities2KHR with the
-- surface used to create swapchain, the
-- timeout member of pAcquireInfo must not be
-- UINT64_MAX
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pAcquireInfo must be a valid pointer to a valid
-- AcquireNextImageInfoKHR structure
-- - pImageIndex must be a valid pointer to a
-- uint32_t value
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AcquireNextImageInfoKHR, Device
acquireNextImage2KHR :: forall io. MonadIO io => Device -> ("acquireInfo" ::: AcquireNextImageInfoKHR) -> io (Result, "imageIndex" ::: Word32)
-- | A variant of acquireNextImage2KHR which makes a *safe* FFI call
acquireNextImage2KHRSafe :: forall io. MonadIO io => Device -> ("acquireInfo" ::: AcquireNextImageInfoKHR) -> io (Result, "imageIndex" ::: Word32)
-- | vkGetPhysicalDevicePresentRectanglesKHR - Query present rectangles for
-- a surface on a physical device
--
-- Description
--
-- If pRects is NULL, then the number of rectangles
-- used when presenting the given surface is returned in
-- pRectCount. Otherwise, pRectCount must point
-- to a variable set by the user to the number of elements in the
-- pRects array, and on return the variable is overwritten with
-- the number of structures actually written to pRects. If the
-- value of pRectCount is less than the number of rectangles, at
-- most pRectCount structures will be written. If
-- pRectCount is smaller than the number of rectangles used for
-- the given surface, INCOMPLETE will be returned instead
-- of SUCCESS to indicate that not all the available values were
-- returned.
--
-- The values returned by this command are not invariant, and may
-- change in response to the surface being moved, resized, or occluded.
--
-- The rectangles returned by this command must not overlap.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pRectCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pRectCount is not 0,
-- and pRects is not NULL, pRects must
-- be a valid pointer to an array of pRectCount Rect2D
-- structures
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Host Synchronization
--
--
-- - Host access to surface must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, Rect2D, SurfaceKHR
getPhysicalDevicePresentRectanglesKHR :: forall io. MonadIO io => PhysicalDevice -> SurfaceKHR -> io (Result, "rects" ::: Vector Rect2D)
-- | VkDeviceGroupPresentModeFlagBitsKHR - Bitmask specifying supported
-- device group present modes
--
-- See Also
--
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupPresentModeFlagsKHR
newtype DeviceGroupPresentModeFlagBitsKHR
DeviceGroupPresentModeFlagBitsKHR :: Flags -> DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR specifies that any
-- physical device with a presentation engine can present its own
-- swapchain images.
pattern DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR specifies that any
-- physical device with a presentation engine can present
-- swapchain images from any physical device in its presentMask.
pattern DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR specifies that any
-- physical device with a presentation engine can present the sum
-- of swapchain images from any physical devices in its
-- presentMask.
pattern DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR specifies
-- that multiple physical devices with a presentation engine can
-- each present their own swapchain images.
pattern DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
type DeviceGroupPresentModeFlagsKHR = DeviceGroupPresentModeFlagBitsKHR
-- | VkSwapchainCreateFlagBitsKHR - Bitmask controlling swapchain creation
--
-- See Also
--
-- SwapchainCreateFlagsKHR
newtype SwapchainCreateFlagBitsKHR
SwapchainCreateFlagBitsKHR :: Flags -> SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR specifies that the
-- images of the swapchain can be used to create a
-- ImageView with a different format than what the swapchain was
-- created with. The list of allowed image view formats are specified by
-- adding a ImageFormatListCreateInfo structure to the
-- pNext chain of SwapchainCreateInfoKHR. In addition,
-- this flag also specifies that the swapchain can be created with
-- usage flags that are not supported for the format the swapchain is
-- created with but are supported for at least one of the allowed image
-- view formats.
pattern SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR specifies
-- that images created from the swapchain (i.e. with the
-- swapchain member of ImageSwapchainCreateInfoKHR set to
-- this swapchain’s handle) must use
-- IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT.
pattern SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SwapchainCreateFlagBitsKHR
-- | SWAPCHAIN_CREATE_PROTECTED_BIT_KHR specifies that images
-- created from the swapchain are protected images.
pattern SWAPCHAIN_CREATE_PROTECTED_BIT_KHR :: SwapchainCreateFlagBitsKHR
type SwapchainCreateFlagsKHR = SwapchainCreateFlagBitsKHR
module Vulkan.Extensions.VK_KHR_deferred_host_operations
-- | vkCreateDeferredOperationKHR - Create a deferred operation handle
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pDeferredOperation must be a valid pointer to a
-- DeferredOperationKHR handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DeferredOperationKHR, Device
createDeferredOperationKHR :: forall io. MonadIO io => Device -> ("allocator" ::: Maybe AllocationCallbacks) -> io DeferredOperationKHR
-- | A convenience wrapper to make a compatible pair of calls to
-- createDeferredOperationKHR and
-- destroyDeferredOperationKHR
--
-- To ensure that destroyDeferredOperationKHR is always called:
-- pass bracket (or the allocate function from your favourite
-- resource management library) as the first argument. To just extract
-- the pair pass (,) as the first argument.
withDeferredOperationKHR :: forall io r. MonadIO io => Device -> Maybe AllocationCallbacks -> (io DeferredOperationKHR -> (DeferredOperationKHR -> io ()) -> r) -> r
-- | vkDestroyDeferredOperationKHR - Destroy a deferred operation handle
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- operation was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- operation was created, pAllocator must be
-- NULL
-- - operation must be completed
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If operation is not NULL_HANDLE,
-- operation must be a valid DeferredOperationKHR
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If operation is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to operation must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, DeferredOperationKHR, Device
destroyDeferredOperationKHR :: forall io. MonadIO io => Device -> DeferredOperationKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetDeferredOperationMaxConcurrencyKHR - Query the maximum
-- concurrency on a deferred operation
--
-- Description
--
-- The returned value is the maximum number of threads that can usefully
-- execute a deferred operation concurrently, reported for the state of
-- the deferred operation at the point this command is called. This value
-- is intended to be used to better schedule work onto available threads.
-- Applications can join any number of threads to the deferred
-- operation and expect it to eventually complete, though excessive joins
-- may return THREAD_DONE_KHR immediately, performing no
-- useful work.
--
-- If operation is complete,
-- getDeferredOperationMaxConcurrencyKHR returns zero.
--
-- If operation is currently joined to any threads, the value
-- returned by this command may immediately be out of date.
--
-- If operation is pending, implementations must not
-- return zero unless at least one thread is currently executing
-- deferredOperationJoinKHR on operation. If there are
-- such threads, the implementation should return an estimate of
-- the number of additional threads which it could profitably use.
--
-- Implementations may return 232-1 to indicate that the maximum
-- concurrency is unknown and cannot be easily derived. Implementations
-- may return values larger than the maximum concurrency available
-- on the host CPU. In these situations, an application should
-- clamp the return value rather than oversubscribing the machine.
--
-- Note
--
-- The recommended usage pattern for applications is to query this value
-- once, after deferral, and schedule no more than the specified number
-- of threads to join the operation. Each time a joined thread receives
-- THREAD_IDLE_KHR, the application should schedule an additional
-- join at some point in the future, but is not required to do so.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeferredOperationKHR, Device
getDeferredOperationMaxConcurrencyKHR :: forall io. MonadIO io => Device -> DeferredOperationKHR -> io Word32
-- | vkGetDeferredOperationResultKHR - Query the result of a deferred
-- operation
--
-- Description
--
-- If the deferred operation is pending,
-- getDeferredOperationResultKHR returns NOT_READY.
--
-- If no command has been deferred on operation,
-- getDeferredOperationResultKHR returns SUCCESS.
--
-- Otherwise, it returns the result of the previous deferred operation.
-- This value must be one of the Result values which could
-- have been returned by the original command if the operation had not
-- been deferred.
--
-- Return Codes
--
--
--
-- See Also
--
-- DeferredOperationKHR, Device
getDeferredOperationResultKHR :: forall io. MonadIO io => Device -> DeferredOperationKHR -> io Result
-- | vkDeferredOperationJoinKHR - Assign a thread to a deferred operation
--
-- Description
--
-- The deferredOperationJoinKHR command will execute a portion of
-- the deferred operation on the calling thread.
--
-- The return value will be one of the following:
--
--
-- - A return value of SUCCESS indicates that operation
-- is complete. The application should use
-- getDeferredOperationResultKHR to retrieve the result of
-- operation.
-- - A return value of THREAD_DONE_KHR indicates that the
-- deferred operation is not complete, but there is no work remaining to
-- assign to threads. Future calls to deferredOperationJoinKHR are
-- not necessary and will simply harm performance. This situation
-- may occur when other threads executing
-- deferredOperationJoinKHR are about to complete
-- operation, and the implementation is unable to partition the
-- workload any further.
-- - A return value of THREAD_IDLE_KHR indicates that the
-- deferred operation is not complete, and there is no work for the
-- thread to do at the time of the call. This situation may occur
-- if the operation encounters a temporary reduction in parallelism. By
-- returning THREAD_IDLE_KHR, the implementation is signaling that
-- it expects that more opportunities for parallelism will emerge as
-- execution progresses, and that future calls to
-- deferredOperationJoinKHR can be beneficial. In the
-- meantime, the application can perform other work on the calling
-- thread.
--
--
-- Implementations must guarantee forward progress by enforcing
-- the following invariants:
--
--
-- - If only one thread has invoked deferredOperationJoinKHR on
-- a given operation, that thread must execute the operation to
-- completion and return SUCCESS.
-- - If multiple threads have concurrently invoked
-- deferredOperationJoinKHR on the same operation, then at least
-- one of them must complete the operation and return
-- SUCCESS.
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - operation must be a valid
-- DeferredOperationKHR handle
-- - operation must have been created, allocated, or
-- retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DeferredOperationKHR, Device
deferredOperationJoinKHR :: forall io. MonadIO io => Device -> DeferredOperationKHR -> io Result
-- | VkDeferredOperationInfoKHR - Deferred operation request
--
-- Description
--
-- The application can request deferral of an operation by adding
-- this structure to the argument list of a command or by providing this
-- in the pNext chain of a relevant structure for an operation
-- when the corresponding command is invoked. If this structure is not
-- present, no deferral is requested. If operationHandle is
-- NULL_HANDLE, no deferral is requested and the command proceeds
-- as if no DeferredOperationInfoKHR structure was provided.
--
-- When an application requests an operation deferral, the implementation
-- may defer the operation. When deferral is requested and the
-- implementation defers any operation, the implementation must
-- return OPERATION_DEFERRED_KHR as the success code if no errors
-- occurred. When deferral is requested, the implementation should
-- defer the operation when the workload is significant, however if the
-- implementation chooses not to defer any of the requested operations
-- and instead executes all of them immediately, the implementation
-- must return OPERATION_NOT_DEFERRED_KHR as the success
-- code if no errors occurred.
--
-- A deferred operation is created complete with an initial result
-- value of SUCCESS. The deferred operation becomes pending
-- when an operation has been successfully deferred with that
-- operationHandle.
--
-- A deferred operation is considered pending until the deferred
-- operation completes. A pending deferred operation becomes
-- complete when it has been fully executed by one or more
-- threads. Pending deferred operations will never complete until they
-- are joined by an application thread, using
-- deferredOperationJoinKHR. Applications can join multiple
-- threads to the same deferred operation, enabling concurrent execution
-- of subtasks within that operation.
--
-- The application can query the status of a
-- DeferredOperationKHR using the
-- getDeferredOperationMaxConcurrencyKHR or
-- getDeferredOperationResultKHR commands.
--
-- From the perspective of other commands - parameters to the original
-- command that are externally synchronized must not be accessed
-- before the deferred operation completes, and the result of the
-- deferred operation (e.g. object creation) are not considered complete
-- until the deferred operation completes.
--
-- If the deferred operation is one which creates an object (for example,
-- a pipeline object), the implementation must allocate that
-- object as it normally would, and return a valid handle to the
-- application. This object is a pending object, and must
-- not be used by the application until the deferred operation is
-- completed (unless otherwise specified by the deferral extension). When
-- the deferred operation is complete, the application should call
-- getDeferredOperationResultKHR to obtain the result of the
-- operation. If getDeferredOperationResultKHR indicates failure,
-- the application must destroy the pending object using an
-- appropriate command, so that the implementation has an opportunity to
-- recover the handle. The application must not perform this
-- destruction until the deferred operation is complete. Construction of
-- the pending object uses the same allocator which would have been used
-- if the operation had not been deferred.
--
-- Valid Usage
--
--
-- - Any previous deferred operation that was associated with
-- operationHandle must be complete
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- DeferredOperationKHR, StructureType
data DeferredOperationInfoKHR
DeferredOperationInfoKHR :: DeferredOperationKHR -> DeferredOperationInfoKHR
-- | operationHandle is a handle to a tracking object to associate
-- with the deferred operation.
[$sel:operationHandle:DeferredOperationInfoKHR] :: DeferredOperationInfoKHR -> DeferredOperationKHR
type KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION = 3
pattern KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION :: forall a. Integral a => a
type KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME = "VK_KHR_deferred_host_operations"
pattern KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDeferredOperationKHR - A deferred operation
--
-- Description
--
-- This handle refers to a tracking structure which manages the execution
-- state for a deferred command.
--
-- See Also
--
-- DeferredOperationInfoKHR, createDeferredOperationKHR,
-- deferredOperationJoinKHR, destroyDeferredOperationKHR,
-- getDeferredOperationMaxConcurrencyKHR,
-- getDeferredOperationResultKHR
newtype DeferredOperationKHR
DeferredOperationKHR :: Word64 -> DeferredOperationKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_deferred_host_operations.DeferredOperationInfoKHR
module Vulkan.Extensions.VK_KHR_android_surface
-- | vkCreateAndroidSurfaceKHR - Create a SurfaceKHR object for an
-- Android native window
--
-- Description
--
-- During the lifetime of a surface created using a particular
-- ANativeWindow handle any attempts to create another surface for
-- the same ANativeWindow and any attempts to connect to the same
-- ANativeWindow through other platform mechanisms will fail.
--
-- Note
--
-- In particular, only one SurfaceKHR can exist at a time
-- for a given window. Similarly, a native window cannot be used
-- by both a SurfaceKHR and EGLSurface simultaneously.
--
-- If successful, createAndroidSurfaceKHR increments the
-- ANativeWindow’s reference count, and destroySurfaceKHR
-- will decrement it.
--
-- On Android, when a swapchain’s imageExtent does not match the
-- surface’s currentExtent, the presentable images will be
-- scaled to the surface’s dimensions during presentation.
-- minImageExtent is (1,1), and maxImageExtent is the
-- maximum image size supported by the consumer. For the system
-- compositor, currentExtent is the window size (i.e. the
-- consumer’s preferred size).
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, AndroidSurfaceCreateInfoKHR,
-- Instance, SurfaceKHR
createAndroidSurfaceKHR :: forall io. MonadIO io => Instance -> AndroidSurfaceCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkAndroidSurfaceCreateInfoKHR - Structure specifying parameters of a
-- newly created Android surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AndroidSurfaceCreateFlagsKHR, StructureType,
-- createAndroidSurfaceKHR
data AndroidSurfaceCreateInfoKHR
AndroidSurfaceCreateInfoKHR :: AndroidSurfaceCreateFlagsKHR -> Ptr ANativeWindow -> AndroidSurfaceCreateInfoKHR
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:AndroidSurfaceCreateInfoKHR] :: AndroidSurfaceCreateInfoKHR -> AndroidSurfaceCreateFlagsKHR
-- | window is a pointer to the ANativeWindow to associate
-- the surface with.
--
-- window must point to a valid Android
-- ANativeWindow
[$sel:window:AndroidSurfaceCreateInfoKHR] :: AndroidSurfaceCreateInfoKHR -> Ptr ANativeWindow
-- | VkAndroidSurfaceCreateFlagsKHR - Reserved for future use
--
-- Description
--
-- AndroidSurfaceCreateFlagsKHR is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- AndroidSurfaceCreateInfoKHR
newtype AndroidSurfaceCreateFlagsKHR
AndroidSurfaceCreateFlagsKHR :: Flags -> AndroidSurfaceCreateFlagsKHR
type KHR_ANDROID_SURFACE_SPEC_VERSION = 6
pattern KHR_ANDROID_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type KHR_ANDROID_SURFACE_EXTENSION_NAME = "VK_KHR_android_surface"
pattern KHR_ANDROID_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
data ANativeWindow
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_android_surface.AndroidSurfaceCreateFlagsKHR
module Vulkan.Extensions.VK_INTEL_performance_query
-- | vkInitializePerformanceApiINTEL - Initialize a device for performance
-- queries
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, InitializePerformanceApiInfoINTEL
initializePerformanceApiINTEL :: forall io. MonadIO io => Device -> ("initializeInfo" ::: InitializePerformanceApiInfoINTEL) -> io ()
-- | vkUninitializePerformanceApiINTEL - Uninitialize a device for
-- performance queries
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device
uninitializePerformanceApiINTEL :: forall io. MonadIO io => Device -> io ()
-- | vkCmdSetPerformanceMarkerINTEL - Markers
--
-- Parameters
--
-- The last marker set onto a command buffer before the end of a query
-- will be part of the query result.
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer, PerformanceMarkerInfoINTEL
cmdSetPerformanceMarkerINTEL :: forall io. MonadIO io => CommandBuffer -> PerformanceMarkerInfoINTEL -> io ()
-- | vkCmdSetPerformanceStreamMarkerINTEL - Markers
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer, PerformanceStreamMarkerInfoINTEL
cmdSetPerformanceStreamMarkerINTEL :: forall io. MonadIO io => CommandBuffer -> PerformanceStreamMarkerInfoINTEL -> io ()
-- | vkCmdSetPerformanceOverrideINTEL - Performance override settings
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer, PerformanceOverrideInfoINTEL
cmdSetPerformanceOverrideINTEL :: forall io. MonadIO io => CommandBuffer -> PerformanceOverrideInfoINTEL -> io ()
-- | vkAcquirePerformanceConfigurationINTEL - Acquire the performance query
-- capability
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceConfigurationINTEL
acquirePerformanceConfigurationINTEL :: forall io. MonadIO io => Device -> PerformanceConfigurationAcquireInfoINTEL -> io PerformanceConfigurationINTEL
-- | vkReleasePerformanceConfigurationINTEL - Release a configuration to
-- capture performance data
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PerformanceConfigurationINTEL
releasePerformanceConfigurationINTEL :: forall io. MonadIO io => Device -> PerformanceConfigurationINTEL -> io ()
-- | vkQueueSetPerformanceConfigurationINTEL - Set a performance query
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
--
-- - configuration must be a valid
-- PerformanceConfigurationINTEL handle
-- - Both of configuration, and queue must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PerformanceConfigurationINTEL, Queue
queueSetPerformanceConfigurationINTEL :: forall io. MonadIO io => Queue -> PerformanceConfigurationINTEL -> io ()
-- | vkGetPerformanceParameterINTEL - Query performance capabilities of the
-- device
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PerformanceParameterTypeINTEL,
-- PerformanceValueINTEL
getPerformanceParameterINTEL :: forall io. MonadIO io => Device -> PerformanceParameterTypeINTEL -> io PerformanceValueINTEL
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL :: StructureType
-- | VkPerformanceValueINTEL - Container for value and types of parameters
-- that can be queried
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- PerformanceValueDataINTEL, PerformanceValueTypeINTEL,
-- getPerformanceParameterINTEL
data PerformanceValueINTEL
PerformanceValueINTEL :: PerformanceValueTypeINTEL -> PerformanceValueDataINTEL -> PerformanceValueINTEL
-- | type is a PerformanceValueTypeINTEL value specifying
-- the type of the returned data.
[$sel:type':PerformanceValueINTEL] :: PerformanceValueINTEL -> PerformanceValueTypeINTEL
-- | data is a PerformanceValueDataINTEL union specifying
-- the value of the returned data.
[$sel:data':PerformanceValueINTEL] :: PerformanceValueINTEL -> PerformanceValueDataINTEL
-- | VkInitializePerformanceApiInfoINTEL - Structure specifying parameters
-- of initialize of the device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, initializePerformanceApiINTEL
data InitializePerformanceApiInfoINTEL
InitializePerformanceApiInfoINTEL :: Ptr () -> InitializePerformanceApiInfoINTEL
-- | pUserData is a pointer for application data.
[$sel:userData:InitializePerformanceApiInfoINTEL] :: InitializePerformanceApiInfoINTEL -> Ptr ()
-- | VkQueryPoolPerformanceQueryCreateInfoINTEL - Structure specifying
-- parameters to create a pool of performance queries
--
-- Members
--
-- To create a pool for Intel performance queries, set
-- QueryPoolCreateInfo::queryType to
-- QUERY_TYPE_PERFORMANCE_QUERY_INTEL and add a
-- QueryPoolPerformanceQueryCreateInfoINTEL structure to the
-- pNext chain of the QueryPoolCreateInfo structure.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- QueryPoolSamplingModeINTEL, StructureType
data QueryPoolPerformanceQueryCreateInfoINTEL
QueryPoolPerformanceQueryCreateInfoINTEL :: QueryPoolSamplingModeINTEL -> QueryPoolPerformanceQueryCreateInfoINTEL
-- | performanceCountersSampling describe how performance queries
-- should be captured.
--
-- performanceCountersSampling must be a valid
-- QueryPoolSamplingModeINTEL value
[$sel:performanceCountersSampling:QueryPoolPerformanceQueryCreateInfoINTEL] :: QueryPoolPerformanceQueryCreateInfoINTEL -> QueryPoolSamplingModeINTEL
-- | VkPerformanceMarkerInfoINTEL - Structure specifying performance
-- markers
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, cmdSetPerformanceMarkerINTEL
data PerformanceMarkerInfoINTEL
PerformanceMarkerInfoINTEL :: Word64 -> PerformanceMarkerInfoINTEL
-- | marker is the marker value that will be recorded into the
-- opaque query results.
[$sel:marker:PerformanceMarkerInfoINTEL] :: PerformanceMarkerInfoINTEL -> Word64
-- | VkPerformanceStreamMarkerInfoINTEL - Structure specifying stream
-- performance markers
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, cmdSetPerformanceStreamMarkerINTEL
data PerformanceStreamMarkerInfoINTEL
PerformanceStreamMarkerInfoINTEL :: Word32 -> PerformanceStreamMarkerInfoINTEL
-- | marker is the marker value that will be recorded into the
-- reports consumed by an external application.
[$sel:marker:PerformanceStreamMarkerInfoINTEL] :: PerformanceStreamMarkerInfoINTEL -> Word32
-- | VkPerformanceOverrideInfoINTEL - Performance override info
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, PerformanceOverrideTypeINTEL,
-- StructureType, cmdSetPerformanceOverrideINTEL
data PerformanceOverrideInfoINTEL
PerformanceOverrideInfoINTEL :: PerformanceOverrideTypeINTEL -> Bool -> Word64 -> PerformanceOverrideInfoINTEL
-- | type is the particular PerformanceOverrideTypeINTEL to
-- set.
--
-- type must be a valid
-- PerformanceOverrideTypeINTEL value
[$sel:type':PerformanceOverrideInfoINTEL] :: PerformanceOverrideInfoINTEL -> PerformanceOverrideTypeINTEL
-- | enable defines whether the override is enabled.
[$sel:enable:PerformanceOverrideInfoINTEL] :: PerformanceOverrideInfoINTEL -> Bool
-- | parameter is a potential required parameter for the override.
[$sel:parameter:PerformanceOverrideInfoINTEL] :: PerformanceOverrideInfoINTEL -> Word64
-- | VkPerformanceConfigurationAcquireInfoINTEL - Acquire a configuration
-- to capture performance data
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PerformanceConfigurationTypeINTEL, StructureType,
-- acquirePerformanceConfigurationINTEL
data PerformanceConfigurationAcquireInfoINTEL
PerformanceConfigurationAcquireInfoINTEL :: PerformanceConfigurationTypeINTEL -> PerformanceConfigurationAcquireInfoINTEL
-- | type is one of the PerformanceConfigurationTypeINTEL
-- type of performance configuration that will be acquired.
--
-- type must be a valid
-- PerformanceConfigurationTypeINTEL value
[$sel:type':PerformanceConfigurationAcquireInfoINTEL] :: PerformanceConfigurationAcquireInfoINTEL -> PerformanceConfigurationTypeINTEL
data PerformanceValueDataINTEL
Value32 :: Word32 -> PerformanceValueDataINTEL
Value64 :: Word64 -> PerformanceValueDataINTEL
ValueFloat :: Float -> PerformanceValueDataINTEL
ValueBool :: Bool -> PerformanceValueDataINTEL
ValueString :: ByteString -> PerformanceValueDataINTEL
peekPerformanceValueDataINTEL :: PerformanceValueTypeINTEL -> Ptr PerformanceValueDataINTEL -> IO PerformanceValueDataINTEL
-- | VkPerformanceConfigurationTypeINTEL - Type of performance
-- configuration
--
-- See Also
--
-- PerformanceConfigurationAcquireInfoINTEL
newtype PerformanceConfigurationTypeINTEL
PerformanceConfigurationTypeINTEL :: Int32 -> PerformanceConfigurationTypeINTEL
pattern PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL :: PerformanceConfigurationTypeINTEL
-- | VkQueryPoolSamplingModeINTEL - Enum specifying how performance queries
-- should be captured
--
-- See Also
--
-- QueryPoolPerformanceQueryCreateInfoINTEL
newtype QueryPoolSamplingModeINTEL
QueryPoolSamplingModeINTEL :: Int32 -> QueryPoolSamplingModeINTEL
-- | QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL is the default mode in
-- which the application calls cmdBeginQuery and
-- cmdEndQuery to record performance data.
pattern QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL :: QueryPoolSamplingModeINTEL
-- | VkPerformanceOverrideTypeINTEL - Performance override type
--
-- See Also
--
-- PerformanceOverrideInfoINTEL
newtype PerformanceOverrideTypeINTEL
PerformanceOverrideTypeINTEL :: Int32 -> PerformanceOverrideTypeINTEL
-- | PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL turns all
-- rendering operations into noop.
pattern PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL :: PerformanceOverrideTypeINTEL
-- | PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL stalls the
-- stream of commands until all previously emitted commands have
-- completed and all caches been flushed and invalidated.
pattern PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL :: PerformanceOverrideTypeINTEL
-- | VkPerformanceParameterTypeINTEL - Parameters that can be queried
--
-- See Also
--
-- getPerformanceParameterINTEL
newtype PerformanceParameterTypeINTEL
PerformanceParameterTypeINTEL :: Int32 -> PerformanceParameterTypeINTEL
-- | PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL has a
-- boolean result which tells whether hardware counters can be captured.
pattern PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL :: PerformanceParameterTypeINTEL
-- | PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL has a
-- 32 bits integer result which tells how many bits can be written into
-- the PerformanceValueINTEL value.
pattern PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL :: PerformanceParameterTypeINTEL
-- | VkPerformanceValueTypeINTEL - Type of the parameters that can be
-- queried
--
-- See Also
--
-- PerformanceValueINTEL
newtype PerformanceValueTypeINTEL
PerformanceValueTypeINTEL :: Int32 -> PerformanceValueTypeINTEL
pattern PERFORMANCE_VALUE_TYPE_UINT32_INTEL :: PerformanceValueTypeINTEL
pattern PERFORMANCE_VALUE_TYPE_UINT64_INTEL :: PerformanceValueTypeINTEL
pattern PERFORMANCE_VALUE_TYPE_FLOAT_INTEL :: PerformanceValueTypeINTEL
pattern PERFORMANCE_VALUE_TYPE_BOOL_INTEL :: PerformanceValueTypeINTEL
pattern PERFORMANCE_VALUE_TYPE_STRING_INTEL :: PerformanceValueTypeINTEL
type QueryPoolCreateInfoINTEL = QueryPoolPerformanceQueryCreateInfoINTEL
type INTEL_PERFORMANCE_QUERY_SPEC_VERSION = 2
pattern INTEL_PERFORMANCE_QUERY_SPEC_VERSION :: forall a. Integral a => a
type INTEL_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_INTEL_performance_query"
pattern INTEL_PERFORMANCE_QUERY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkPerformanceConfigurationINTEL - Device configuration for performance
-- queries
--
-- See Also
--
-- acquirePerformanceConfigurationINTEL,
-- queueSetPerformanceConfigurationINTEL,
-- releasePerformanceConfigurationINTEL
newtype PerformanceConfigurationINTEL
PerformanceConfigurationINTEL :: Word64 -> PerformanceConfigurationINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueTypeINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueTypeINTEL
instance GHC.Classes.Ord Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueTypeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueTypeINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceParameterTypeINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceParameterTypeINTEL
instance GHC.Classes.Ord Vulkan.Extensions.VK_INTEL_performance_query.PerformanceParameterTypeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceParameterTypeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideTypeINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideTypeINTEL
instance GHC.Classes.Ord Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideTypeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideTypeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolSamplingModeINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolSamplingModeINTEL
instance GHC.Classes.Ord Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolSamplingModeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolSamplingModeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationTypeINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationTypeINTEL
instance GHC.Classes.Ord Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationTypeINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationTypeINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueDataINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance GHC.Classes.Eq Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.InitializePerformanceApiInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.InitializePerformanceApiInfoINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance GHC.Generics.Generic Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueTypeINTEL
instance GHC.Read.Read Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueTypeINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceParameterTypeINTEL
instance GHC.Read.Read Vulkan.Extensions.VK_INTEL_performance_query.PerformanceParameterTypeINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideTypeINTEL
instance GHC.Read.Read Vulkan.Extensions.VK_INTEL_performance_query.PerformanceOverrideTypeINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolPerformanceQueryCreateInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolSamplingModeINTEL
instance GHC.Read.Read Vulkan.Extensions.VK_INTEL_performance_query.QueryPoolSamplingModeINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationAcquireInfoINTEL
instance GHC.Show.Show Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationTypeINTEL
instance GHC.Read.Read Vulkan.Extensions.VK_INTEL_performance_query.PerformanceConfigurationTypeINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueDataINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceValueDataINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceStreamMarkerInfoINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.PerformanceMarkerInfoINTEL
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_INTEL_performance_query.InitializePerformanceApiInfoINTEL
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_INTEL_performance_query.InitializePerformanceApiInfoINTEL
instance Foreign.Storable.Storable Vulkan.Extensions.VK_INTEL_performance_query.InitializePerformanceApiInfoINTEL
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_INTEL_performance_query.InitializePerformanceApiInfoINTEL
module Vulkan.Extensions.VK_GOOGLE_display_timing
-- | vkGetRefreshCycleDurationGOOGLE - Obtain the RC duration of the PE’s
-- display
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - pDisplayTimingProperties must be a valid pointer
-- to a RefreshCycleDurationGOOGLE structure
-- - Both of device, and swapchain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, RefreshCycleDurationGOOGLE, SwapchainKHR
getRefreshCycleDurationGOOGLE :: forall io. MonadIO io => Device -> SwapchainKHR -> io ("displayTimingProperties" ::: RefreshCycleDurationGOOGLE)
-- | vkGetPastPresentationTimingGOOGLE - Obtain timing of a
-- previously-presented image
--
-- Description
--
-- If pPresentationTimings is NULL, then the number of
-- newly-available timing records for the given swapchain is
-- returned in pPresentationTimingCount. Otherwise,
-- pPresentationTimingCount must point to a variable set
-- by the user to the number of elements in the
-- pPresentationTimings array, and on return the variable is
-- overwritten with the number of structures actually written to
-- pPresentationTimings. If the value of
-- pPresentationTimingCount is less than the number of
-- newly-available timing records, at most
-- pPresentationTimingCount structures will be written. If
-- pPresentationTimingCount is smaller than the number of
-- newly-available timing records for the given swapchain,
-- INCOMPLETE will be returned instead of SUCCESS to
-- indicate that not all the available values were returned.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - pPresentationTimingCount must be a valid pointer
-- to a uint32_t value
-- - If the value referenced by pPresentationTimingCount is
-- not 0, and pPresentationTimings is not
-- NULL, pPresentationTimings must be a valid
-- pointer to an array of pPresentationTimingCount
-- PastPresentationTimingGOOGLE structures
-- - Both of device, and swapchain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Host Synchronization
--
--
-- - Host access to swapchain must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PastPresentationTimingGOOGLE,
-- SwapchainKHR
getPastPresentationTimingGOOGLE :: forall io. MonadIO io => Device -> SwapchainKHR -> io (Result, "presentationTimings" ::: Vector PastPresentationTimingGOOGLE)
-- | VkRefreshCycleDurationGOOGLE - Structure containing the RC duration of
-- a display
--
-- See Also
--
-- getRefreshCycleDurationGOOGLE
data RefreshCycleDurationGOOGLE
RefreshCycleDurationGOOGLE :: Word64 -> RefreshCycleDurationGOOGLE
-- | refreshDuration is the number of nanoseconds from the start
-- of one refresh cycle to the next.
[$sel:refreshDuration:RefreshCycleDurationGOOGLE] :: RefreshCycleDurationGOOGLE -> Word64
-- | VkPastPresentationTimingGOOGLE - Structure containing timing
-- information about a previously-presented image
--
-- Description
--
-- The results for a given swapchain and presentID are
-- only returned once from getPastPresentationTimingGOOGLE.
--
-- The application can use the PastPresentationTimingGOOGLE
-- values to occasionally adjust its timing. For example, if
-- actualPresentTime is later than expected (e.g. one
-- refreshDuration late), the application may increase its
-- target IPD to a higher multiple of refreshDuration (e.g.
-- decrease its frame rate from 60Hz to 30Hz). If
-- actualPresentTime and earliestPresentTime are
-- consistently different, and if presentMargin is consistently
-- large enough, the application may decrease its target IPD to a smaller
-- multiple of refreshDuration (e.g. increase its frame rate
-- from 30Hz to 60Hz). If actualPresentTime and
-- earliestPresentTime are same, and if presentMargin
-- is consistently high, the application may delay the start of its
-- input-render-present loop in order to decrease the latency between
-- user input and the corresponding present (always leaving some margin
-- in case a new image takes longer to render than the previous image).
-- An application that desires its target IPD to always be the same as
-- refreshDuration, can also adjust features until
-- actualPresentTime is never late and presentMargin is
-- satisfactory.
--
-- See Also
--
-- getPastPresentationTimingGOOGLE
data PastPresentationTimingGOOGLE
PastPresentationTimingGOOGLE :: Word32 -> Word64 -> Word64 -> Word64 -> Word64 -> PastPresentationTimingGOOGLE
-- | presentID is an application-provided value that was given to
-- a previous queuePresentKHR command via
-- PresentTimeGOOGLE::presentID (see below). It
-- can be used to uniquely identify a previous present with the
-- queuePresentKHR command.
[$sel:presentID:PastPresentationTimingGOOGLE] :: PastPresentationTimingGOOGLE -> Word32
-- | desiredPresentTime is an application-provided value that was
-- given to a previous queuePresentKHR command via
-- PresentTimeGOOGLE::desiredPresentTime. If non-zero, it
-- was used by the application to indicate that an image not be presented
-- any sooner than desiredPresentTime.
[$sel:desiredPresentTime:PastPresentationTimingGOOGLE] :: PastPresentationTimingGOOGLE -> Word64
-- | actualPresentTime is the time when the image of the
-- swapchain was actually displayed.
[$sel:actualPresentTime:PastPresentationTimingGOOGLE] :: PastPresentationTimingGOOGLE -> Word64
-- | earliestPresentTime is the time when the image of the
-- swapchain could have been displayed. This may differ
-- from actualPresentTime if the application requested that the
-- image be presented no sooner than
-- PresentTimeGOOGLE::desiredPresentTime.
[$sel:earliestPresentTime:PastPresentationTimingGOOGLE] :: PastPresentationTimingGOOGLE -> Word64
-- | presentMargin is an indication of how early the
-- queuePresentKHR command was processed compared to how soon it
-- needed to be processed, and still be presented at
-- earliestPresentTime.
[$sel:presentMargin:PastPresentationTimingGOOGLE] :: PastPresentationTimingGOOGLE -> Word64
-- | VkPresentTimesInfoGOOGLE - The earliest time each image should be
-- presented
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pTimes is not NULL, pTimes
-- must be a valid pointer to an array of swapchainCount
-- PresentTimeGOOGLE structures
-- - swapchainCount must be greater than
-- 0
--
--
-- See Also
--
-- PresentTimeGOOGLE, StructureType
data PresentTimesInfoGOOGLE
PresentTimesInfoGOOGLE :: Word32 -> Vector PresentTimeGOOGLE -> PresentTimesInfoGOOGLE
-- | swapchainCount is the number of swapchains being presented to
-- by this command.
[$sel:swapchainCount:PresentTimesInfoGOOGLE] :: PresentTimesInfoGOOGLE -> Word32
-- | pTimes is NULL or a pointer to an array of
-- PresentTimeGOOGLE elements with swapchainCount
-- entries. If not NULL, each element of pTimes
-- contains the earliest time to present the image corresponding to the
-- entry in the PresentInfoKHR::pImageIndices array.
[$sel:times:PresentTimesInfoGOOGLE] :: PresentTimesInfoGOOGLE -> Vector PresentTimeGOOGLE
-- | VkPresentTimeGOOGLE - The earliest time image should be presented
--
-- See Also
--
-- PresentTimesInfoGOOGLE
data PresentTimeGOOGLE
PresentTimeGOOGLE :: Word32 -> Word64 -> PresentTimeGOOGLE
-- | presentID is an application-provided identification value,
-- that can be used with the results of
-- getPastPresentationTimingGOOGLE, in order to uniquely identify
-- this present. In order to be useful to the application, it
-- should be unique within some period of time that is meaningful
-- to the application.
[$sel:presentID:PresentTimeGOOGLE] :: PresentTimeGOOGLE -> Word32
-- | desiredPresentTime specifies that the image given
-- should not be displayed to the user any earlier than this time.
-- desiredPresentTime is a time in nanoseconds, relative to a
-- monotonically-increasing clock (e.g. CLOCK_MONOTONIC (see
-- clock_gettime(2)) on Android and Linux). A value of zero specifies
-- that the presentation engine may display the image at any time.
-- This is useful when the application desires to provide
-- presentID, but does not need a specific
-- desiredPresentTime.
[$sel:desiredPresentTime:PresentTimeGOOGLE] :: PresentTimeGOOGLE -> Word64
type GOOGLE_DISPLAY_TIMING_SPEC_VERSION = 1
pattern GOOGLE_DISPLAY_TIMING_SPEC_VERSION :: forall a. Integral a => a
type GOOGLE_DISPLAY_TIMING_EXTENSION_NAME = "VK_GOOGLE_display_timing"
pattern GOOGLE_DISPLAY_TIMING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance GHC.Classes.Eq Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance GHC.Classes.Eq Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
instance GHC.Generics.Generic Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
instance GHC.Show.Show Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
instance GHC.Generics.Generic Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance GHC.Show.Show Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance GHC.Generics.Generic Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimesInfoGOOGLE
instance GHC.Show.Show Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimesInfoGOOGLE
instance GHC.Generics.Generic Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance GHC.Show.Show Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimesInfoGOOGLE
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimesInfoGOOGLE
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimesInfoGOOGLE
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance Foreign.Storable.Storable Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GOOGLE_display_timing.PresentTimeGOOGLE
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance Foreign.Storable.Storable Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GOOGLE_display_timing.PastPresentationTimingGOOGLE
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
instance Foreign.Storable.Storable Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GOOGLE_display_timing.RefreshCycleDurationGOOGLE
module Vulkan.Extensions.VK_GGP_stream_descriptor_surface
-- | vkCreateStreamDescriptorSurfaceGGP - Create a SurfaceKHR object
-- for a Google Games Platform stream
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance,
-- StreamDescriptorSurfaceCreateInfoGGP, SurfaceKHR
createStreamDescriptorSurfaceGGP :: forall io. MonadIO io => Instance -> StreamDescriptorSurfaceCreateInfoGGP -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkStreamDescriptorSurfaceCreateInfoGGP - Structure specifying
-- parameters of a newly created Google Games Platform stream surface
-- object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StreamDescriptorSurfaceCreateFlagsGGP, StructureType,
-- createStreamDescriptorSurfaceGGP
data StreamDescriptorSurfaceCreateInfoGGP
StreamDescriptorSurfaceCreateInfoGGP :: StreamDescriptorSurfaceCreateFlagsGGP -> GgpStreamDescriptor -> StreamDescriptorSurfaceCreateInfoGGP
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:StreamDescriptorSurfaceCreateInfoGGP] :: StreamDescriptorSurfaceCreateInfoGGP -> StreamDescriptorSurfaceCreateFlagsGGP
-- | streamDescriptor is a GgpStreamDescriptor referring to
-- the GGP stream descriptor to associate with the surface.
--
-- streamDescriptor must be a valid
-- GgpStreamDescriptor
[$sel:streamDescriptor:StreamDescriptorSurfaceCreateInfoGGP] :: StreamDescriptorSurfaceCreateInfoGGP -> GgpStreamDescriptor
-- | VkStreamDescriptorSurfaceCreateFlagsGGP - Reserved for future use
--
-- Description
--
-- StreamDescriptorSurfaceCreateFlagsGGP is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- StreamDescriptorSurfaceCreateInfoGGP
newtype StreamDescriptorSurfaceCreateFlagsGGP
StreamDescriptorSurfaceCreateFlagsGGP :: Flags -> StreamDescriptorSurfaceCreateFlagsGGP
type GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION = 1
pattern GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME = "VK_GGP_stream_descriptor_surface"
pattern GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type GgpStreamDescriptor = Word32
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance Data.Bits.Bits Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
instance Foreign.Storable.Storable Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
instance GHC.Classes.Ord Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
instance GHC.Classes.Eq Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
instance GHC.Generics.Generic Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance GHC.Show.Show Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance Foreign.Storable.Storable Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateInfoGGP
instance GHC.Show.Show Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
instance GHC.Read.Read Vulkan.Extensions.VK_GGP_stream_descriptor_surface.StreamDescriptorSurfaceCreateFlagsGGP
module Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface
-- | vkCreateImagePipeSurfaceFUCHSIA - Create a SurfaceKHR object
-- for a Fuchsia ImagePipe
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, ImagePipeSurfaceCreateInfoFUCHSIA,
-- Instance, SurfaceKHR
createImagePipeSurfaceFUCHSIA :: forall io. MonadIO io => Instance -> ImagePipeSurfaceCreateInfoFUCHSIA -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkImagePipeSurfaceCreateInfoFUCHSIA - Structure specifying parameters
-- of a newly created ImagePipe surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImagePipeSurfaceCreateFlagsFUCHSIA, StructureType,
-- createImagePipeSurfaceFUCHSIA
data ImagePipeSurfaceCreateInfoFUCHSIA
ImagePipeSurfaceCreateInfoFUCHSIA :: ImagePipeSurfaceCreateFlagsFUCHSIA -> Zx_handle_t -> ImagePipeSurfaceCreateInfoFUCHSIA
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:ImagePipeSurfaceCreateInfoFUCHSIA] :: ImagePipeSurfaceCreateInfoFUCHSIA -> ImagePipeSurfaceCreateFlagsFUCHSIA
-- | imagePipeHandle is a zx_handle_t referring to the
-- ImagePipe to associate with the surface.
--
-- imagePipeHandle must be a valid zx_handle_t
[$sel:imagePipeHandle:ImagePipeSurfaceCreateInfoFUCHSIA] :: ImagePipeSurfaceCreateInfoFUCHSIA -> Zx_handle_t
-- | VkImagePipeSurfaceCreateFlagsFUCHSIA - Reserved for future use
--
-- Description
--
-- ImagePipeSurfaceCreateFlagsFUCHSIA is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- ImagePipeSurfaceCreateInfoFUCHSIA
newtype ImagePipeSurfaceCreateFlagsFUCHSIA
ImagePipeSurfaceCreateFlagsFUCHSIA :: Flags -> ImagePipeSurfaceCreateFlagsFUCHSIA
type FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION = 1
pattern FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME = "VK_FUCHSIA_imagepipe_surface"
pattern FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type Zx_handle_t = Word32
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance Data.Bits.Bits Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
instance Foreign.Storable.Storable Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
instance GHC.Classes.Ord Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
instance GHC.Classes.Eq Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
instance GHC.Generics.Generic Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance GHC.Show.Show Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance Foreign.Storable.Storable Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateInfoFUCHSIA
instance GHC.Show.Show Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
instance GHC.Read.Read Vulkan.Extensions.VK_FUCHSIA_imagepipe_surface.ImagePipeSurfaceCreateFlagsFUCHSIA
module Vulkan.Extensions.VK_EXT_validation_cache
-- | vkCreateValidationCacheEXT - Creates a new validation cache
--
-- Description
--
-- Note
--
-- Applications can track and manage the total host memory size of
-- a validation cache object using the pAllocator. Applications
-- can limit the amount of data retrieved from a validation cache
-- object in getValidationCacheDataEXT. Implementations
-- should not internally limit the total number of entries added
-- to a validation cache object or the total host memory consumed.
--
-- Once created, a validation cache can be passed to the
-- createShaderModule command by adding this object to the
-- ShaderModuleCreateInfo structure’s pNext chain. If a
-- ShaderModuleValidationCacheCreateInfoEXT object is included in
-- the ShaderModuleCreateInfo::pNext chain, and its
-- validationCache field is not NULL_HANDLE, the
-- implementation will query it for possible reuse opportunities and
-- update it with new content. The use of the validation cache object in
-- these commands is internally synchronized, and the same validation
-- cache object can be used in multiple threads simultaneously.
--
-- Note
--
-- Implementations should make every effort to limit any critical
-- sections to the actual accesses to the cache, which is expected to be
-- significantly shorter than the duration of the
-- createShaderModule command.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- ValidationCacheCreateInfoEXT, ValidationCacheEXT
createValidationCacheEXT :: forall io. MonadIO io => Device -> ValidationCacheCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io ValidationCacheEXT
-- | A convenience wrapper to make a compatible pair of calls to
-- createValidationCacheEXT and destroyValidationCacheEXT
--
-- To ensure that destroyValidationCacheEXT is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withValidationCacheEXT :: forall io r. MonadIO io => Device -> ValidationCacheCreateInfoEXT -> Maybe AllocationCallbacks -> (io ValidationCacheEXT -> (ValidationCacheEXT -> io ()) -> r) -> r
-- | vkDestroyValidationCacheEXT - Destroy a validation cache object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- validationCache was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- validationCache was created, pAllocator must
-- be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If validationCache is not NULL_HANDLE,
-- validationCache must be a valid
-- ValidationCacheEXT handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If validationCache is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to validationCache must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, ValidationCacheEXT
destroyValidationCacheEXT :: forall io. MonadIO io => Device -> ValidationCacheEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetValidationCacheDataEXT - Get the data store from a validation
-- cache
--
-- Description
--
-- If pData is NULL, then the maximum size of the data
-- that can be retrieved from the validation cache, in bytes, is
-- returned in pDataSize. Otherwise, pDataSize
-- must point to a variable set by the user to the size of the
-- buffer, in bytes, pointed to by pData, and on return the
-- variable is overwritten with the amount of data actually written to
-- pData.
--
-- If pDataSize is less than the maximum size that can be
-- retrieved by the validation cache, at most pDataSize bytes
-- will be written to pData, and
-- getValidationCacheDataEXT will return INCOMPLETE. Any
-- data written to pData is valid and can be provided as
-- the pInitialData member of the
-- ValidationCacheCreateInfoEXT structure passed to
-- createValidationCacheEXT.
--
-- Two calls to getValidationCacheDataEXT with the same parameters
-- must retrieve the same data unless a command that modifies the
-- contents of the cache is called between them.
--
-- Applications can store the data retrieved from the validation
-- cache, and use these data, possibly in a future run of the
-- application, to populate new validation cache objects. The results of
-- validation, however, may depend on the vendor ID, device ID,
-- driver version, and other details of the device. To enable
-- applications to detect when previously retrieved data is incompatible
-- with the device, the initial bytes written to pData
-- must be a header consisting of the following members:
--
-- TODO: table
--
-- Layout for validation cache header version
-- VALIDATION_CACHE_HEADER_VERSION_ONE_EXT
--
-- The first four bytes encode the length of the entire validation cache
-- header, in bytes. This value includes all fields in the header
-- including the validation cache version field and the size of the
-- length field.
--
-- The next four bytes encode the validation cache version, as described
-- for ValidationCacheHeaderVersionEXT. A consumer of the
-- validation cache should use the cache version to interpret the
-- remainder of the cache header.
--
-- If pDataSize is less than what is necessary to store this
-- header, nothing will be written to pData and zero will be
-- written to pDataSize.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - validationCache must be a valid
-- ValidationCacheEXT handle
-- - pDataSize must be a valid pointer to a
-- size_t value
-- - If the value referenced by pDataSize is not 0,
-- and pData is not NULL, pData must be
-- a valid pointer to an array of pDataSize bytes
-- - validationCache must have been created, allocated,
-- or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ValidationCacheEXT
getValidationCacheDataEXT :: forall io. MonadIO io => Device -> ValidationCacheEXT -> io (Result, "data" ::: ByteString)
-- | vkMergeValidationCachesEXT - Combine the data stores of validation
-- caches
--
-- Description
--
-- Note
--
-- The details of the merge operation are implementation dependent, but
-- implementations should merge the contents of the specified
-- validation caches and prune duplicate entries.
--
-- Valid Usage
--
--
-- - dstCache must not appear in the list of source
-- caches
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - dstCache must be a valid ValidationCacheEXT
-- handle
-- - pSrcCaches must be a valid pointer to an array of
-- srcCacheCount valid ValidationCacheEXT handles
-- - srcCacheCount must be greater than 0
-- - dstCache must have been created, allocated, or
-- retrieved from device
-- - Each element of pSrcCaches must have been created,
-- allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to dstCache must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ValidationCacheEXT
mergeValidationCachesEXT :: forall io. MonadIO io => Device -> ("dstCache" ::: ValidationCacheEXT) -> ("srcCaches" ::: Vector ValidationCacheEXT) -> io ()
-- | VkValidationCacheCreateInfoEXT - Structure specifying parameters of a
-- newly created validation cache
--
-- Valid Usage
--
--
-- - If initialDataSize is not 0, it must be
-- equal to the size of pInitialData, as returned by
-- getValidationCacheDataEXT when pInitialData was
-- originally retrieved
--
--
--
-- - If initialDataSize is not 0,
-- pInitialData must have been retrieved from a previous
-- call to getValidationCacheDataEXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - If initialDataSize is not 0,
-- pInitialData must be a valid pointer to an array of
-- initialDataSize bytes
--
--
-- See Also
--
-- StructureType, ValidationCacheCreateFlagsEXT,
-- createValidationCacheEXT
data ValidationCacheCreateInfoEXT
ValidationCacheCreateInfoEXT :: ValidationCacheCreateFlagsEXT -> Word64 -> Ptr () -> ValidationCacheCreateInfoEXT
-- | flags is reserved for future use.
[$sel:flags:ValidationCacheCreateInfoEXT] :: ValidationCacheCreateInfoEXT -> ValidationCacheCreateFlagsEXT
-- | initialDataSize is the number of bytes in
-- pInitialData. If initialDataSize is zero, the
-- validation cache will initially be empty.
[$sel:initialDataSize:ValidationCacheCreateInfoEXT] :: ValidationCacheCreateInfoEXT -> Word64
-- | pInitialData is a pointer to previously retrieved validation
-- cache data. If the validation cache data is incompatible (as defined
-- below) with the device, the validation cache will be initially empty.
-- If initialDataSize is zero, pInitialData is ignored.
[$sel:initialData:ValidationCacheCreateInfoEXT] :: ValidationCacheCreateInfoEXT -> Ptr ()
-- | VkShaderModuleValidationCacheCreateInfoEXT - Specify validation cache
-- to use during shader module creation
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, ValidationCacheEXT
data ShaderModuleValidationCacheCreateInfoEXT
ShaderModuleValidationCacheCreateInfoEXT :: ValidationCacheEXT -> ShaderModuleValidationCacheCreateInfoEXT
-- | validationCache is the validation cache object from which the
-- results of prior validation attempts will be written, and to which new
-- validation results for this ShaderModule will be written (if
-- not already present).
--
-- validationCache must be a valid
-- ValidationCacheEXT handle
[$sel:validationCache:ShaderModuleValidationCacheCreateInfoEXT] :: ShaderModuleValidationCacheCreateInfoEXT -> ValidationCacheEXT
-- | VkValidationCacheCreateFlagsEXT - Reserved for future use
--
-- Description
--
-- ValidationCacheCreateFlagsEXT is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- ValidationCacheCreateInfoEXT
newtype ValidationCacheCreateFlagsEXT
ValidationCacheCreateFlagsEXT :: Flags -> ValidationCacheCreateFlagsEXT
-- | VkValidationCacheHeaderVersionEXT - Encode validation cache version
--
-- See Also
--
-- createValidationCacheEXT, getValidationCacheDataEXT
newtype ValidationCacheHeaderVersionEXT
ValidationCacheHeaderVersionEXT :: Int32 -> ValidationCacheHeaderVersionEXT
-- | VALIDATION_CACHE_HEADER_VERSION_ONE_EXT specifies version one
-- of the validation cache.
pattern VALIDATION_CACHE_HEADER_VERSION_ONE_EXT :: ValidationCacheHeaderVersionEXT
type EXT_VALIDATION_CACHE_SPEC_VERSION = 1
pattern EXT_VALIDATION_CACHE_SPEC_VERSION :: forall a. Integral a => a
type EXT_VALIDATION_CACHE_EXTENSION_NAME = "VK_EXT_validation_cache"
pattern EXT_VALIDATION_CACHE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkValidationCacheEXT - Opaque handle to a validation cache object
--
-- See Also
--
-- ShaderModuleValidationCacheCreateInfoEXT,
-- createValidationCacheEXT, destroyValidationCacheEXT,
-- getValidationCacheDataEXT, mergeValidationCachesEXT
newtype ValidationCacheEXT
ValidationCacheEXT :: Word64 -> ValidationCacheEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheHeaderVersionEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheHeaderVersionEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheHeaderVersionEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheHeaderVersionEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheHeaderVersionEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheHeaderVersionEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_validation_cache.ValidationCacheCreateFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_validation_cache.ShaderModuleValidationCacheCreateInfoEXT
module Vulkan.Extensions.VK_EXT_private_data
-- | vkCreatePrivateDataSlotEXT - Create a slot for private data storage
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- PrivateDataSlotCreateInfoEXT, PrivateDataSlotEXT
createPrivateDataSlotEXT :: forall io. MonadIO io => Device -> PrivateDataSlotCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io PrivateDataSlotEXT
-- | A convenience wrapper to make a compatible pair of calls to
-- createPrivateDataSlotEXT and destroyPrivateDataSlotEXT
--
-- To ensure that destroyPrivateDataSlotEXT is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withPrivateDataSlotEXT :: forall io r. MonadIO io => Device -> PrivateDataSlotCreateInfoEXT -> Maybe AllocationCallbacks -> (io PrivateDataSlotEXT -> (PrivateDataSlotEXT -> io ()) -> r) -> r
-- | vkDestroyPrivateDataSlotEXT - Destroy a private data slot
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- privateDataSlot was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- privateDataSlot was created, pAllocator must
-- be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If privateDataSlot is not NULL_HANDLE,
-- privateDataSlot must be a valid
-- PrivateDataSlotEXT handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If privateDataSlot is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to privateDataSlot must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, PrivateDataSlotEXT
destroyPrivateDataSlotEXT :: forall io. MonadIO io => Device -> PrivateDataSlotEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkSetPrivateDataEXT - Associate data with a Vulkan object
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ObjectType, PrivateDataSlotEXT
setPrivateDataEXT :: forall io. MonadIO io => Device -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> ("data" ::: Word64) -> io ()
-- | vkGetPrivateDataEXT - Retrieve data associated with a Vulkan object
--
-- Description
--
-- Note
--
-- Due to platform details on Android, implementations might not be able
-- to reliably return 0 from calls to getPrivateDataEXT
-- for SwapchainKHR objects on which setPrivateDataEXT has
-- not previously been called. This erratum is exclusive to the Android
-- platform and objects of type SwapchainKHR.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device, ObjectType, PrivateDataSlotEXT
getPrivateDataEXT :: forall io. MonadIO io => Device -> ObjectType -> ("objectHandle" ::: Word64) -> PrivateDataSlotEXT -> io ("data" ::: Word64)
-- | VkDevicePrivateDataCreateInfoEXT - Reserve private data slots
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data DevicePrivateDataCreateInfoEXT
DevicePrivateDataCreateInfoEXT :: Word32 -> DevicePrivateDataCreateInfoEXT
-- | privateDataSlotRequestCount is the amount of slots to
-- reserve.
[$sel:privateDataSlotRequestCount:DevicePrivateDataCreateInfoEXT] :: DevicePrivateDataCreateInfoEXT -> Word32
-- | VkPrivateDataSlotCreateInfoEXT - Structure specifying the parameters
-- of private data slot construction
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PrivateDataSlotCreateFlagsEXT, StructureType,
-- createPrivateDataSlotEXT
data PrivateDataSlotCreateInfoEXT
PrivateDataSlotCreateInfoEXT :: PrivateDataSlotCreateFlagsEXT -> PrivateDataSlotCreateInfoEXT
-- | flags is a bitmask of PrivateDataSlotCreateFlagsEXT
-- specifying additional parameters of the new private data slot
--
-- flags must be 0
[$sel:flags:PrivateDataSlotCreateInfoEXT] :: PrivateDataSlotCreateInfoEXT -> PrivateDataSlotCreateFlagsEXT
-- | VkPhysicalDevicePrivateDataFeaturesEXT - Structure specifying physical
-- device support
--
-- Members
--
-- The members of the PhysicalDevicePrivateDataFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDevicePrivateDataFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDevicePrivateDataFeaturesEXT can also be used in
-- the pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDevicePrivateDataFeaturesEXT
PhysicalDevicePrivateDataFeaturesEXT :: Bool -> PhysicalDevicePrivateDataFeaturesEXT
-- | privateData indicates whether the implementation supports
-- private data. See Private Data.
[$sel:privateData:PhysicalDevicePrivateDataFeaturesEXT] :: PhysicalDevicePrivateDataFeaturesEXT -> Bool
-- | VkPrivateDataSlotCreateFlagBitsEXT - Bitmask specifying additional
-- parameters for private data slot creation
--
-- See Also
--
-- PrivateDataSlotCreateFlagsEXT
newtype PrivateDataSlotCreateFlagBitsEXT
PrivateDataSlotCreateFlagBitsEXT :: Flags -> PrivateDataSlotCreateFlagBitsEXT
type PrivateDataSlotCreateFlagsEXT = PrivateDataSlotCreateFlagBitsEXT
type EXT_PRIVATE_DATA_SPEC_VERSION = 1
pattern EXT_PRIVATE_DATA_SPEC_VERSION :: forall a. Integral a => a
type EXT_PRIVATE_DATA_EXTENSION_NAME = "VK_EXT_private_data"
pattern EXT_PRIVATE_DATA_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkPrivateDataSlotEXT - Opaque handle to a private data slot object
--
-- See Also
--
-- createPrivateDataSlotEXT, destroyPrivateDataSlotEXT,
-- getPrivateDataEXT, setPrivateDataEXT
newtype PrivateDataSlotEXT
PrivateDataSlotEXT :: Word64 -> PrivateDataSlotEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_private_data.PrivateDataSlotCreateFlagBitsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_private_data.PhysicalDevicePrivateDataFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_private_data.DevicePrivateDataCreateInfoEXT
module Vulkan.Extensions.VK_EXT_metal_surface
-- | vkCreateMetalSurfaceEXT - Create a VkSurfaceKHR object for
-- CAMetalLayer
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance,
-- MetalSurfaceCreateInfoEXT, SurfaceKHR
createMetalSurfaceEXT :: forall io. MonadIO io => Instance -> MetalSurfaceCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkMetalSurfaceCreateInfoEXT - Structure specifying parameters of a
-- newly created Metal surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- MetalSurfaceCreateFlagsEXT, StructureType,
-- createMetalSurfaceEXT
data MetalSurfaceCreateInfoEXT
MetalSurfaceCreateInfoEXT :: MetalSurfaceCreateFlagsEXT -> Ptr CAMetalLayer -> MetalSurfaceCreateInfoEXT
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:MetalSurfaceCreateInfoEXT] :: MetalSurfaceCreateInfoEXT -> MetalSurfaceCreateFlagsEXT
-- | pLayer is a reference to a CAMetalLayer object
-- representing a renderable surface.
[$sel:layer:MetalSurfaceCreateInfoEXT] :: MetalSurfaceCreateInfoEXT -> Ptr CAMetalLayer
-- | VkMetalSurfaceCreateFlagsEXT - Reserved for future use
--
-- Description
--
-- MetalSurfaceCreateFlagsEXT is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- MetalSurfaceCreateInfoEXT
newtype MetalSurfaceCreateFlagsEXT
MetalSurfaceCreateFlagsEXT :: Flags -> MetalSurfaceCreateFlagsEXT
type EXT_METAL_SURFACE_SPEC_VERSION = 1
pattern EXT_METAL_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type EXT_METAL_SURFACE_EXTENSION_NAME = "VK_EXT_metal_surface"
pattern EXT_METAL_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
data CAMetalLayer
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_metal_surface.MetalSurfaceCreateFlagsEXT
module Vulkan.Extensions.VK_EXT_headless_surface
-- | vkCreateHeadlessSurfaceEXT - Create a headless SurfaceKHR
-- object
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, HeadlessSurfaceCreateInfoEXT,
-- Instance, SurfaceKHR
createHeadlessSurfaceEXT :: forall io. MonadIO io => Instance -> HeadlessSurfaceCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io SurfaceKHR
-- | VkHeadlessSurfaceCreateInfoEXT - Structure specifying parameters of a
-- newly created headless surface object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- HeadlessSurfaceCreateFlagsEXT, StructureType,
-- createHeadlessSurfaceEXT
data HeadlessSurfaceCreateInfoEXT
HeadlessSurfaceCreateInfoEXT :: HeadlessSurfaceCreateFlagsEXT -> HeadlessSurfaceCreateInfoEXT
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:HeadlessSurfaceCreateInfoEXT] :: HeadlessSurfaceCreateInfoEXT -> HeadlessSurfaceCreateFlagsEXT
-- | VkHeadlessSurfaceCreateFlagsEXT - Reserved for future use
--
-- Description
--
-- HeadlessSurfaceCreateFlagsEXT is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- HeadlessSurfaceCreateInfoEXT
newtype HeadlessSurfaceCreateFlagsEXT
HeadlessSurfaceCreateFlagsEXT :: Flags -> HeadlessSurfaceCreateFlagsEXT
type EXT_HEADLESS_SURFACE_SPEC_VERSION = 1
pattern EXT_HEADLESS_SURFACE_SPEC_VERSION :: forall a. Integral a => a
type EXT_HEADLESS_SURFACE_EXTENSION_NAME = "VK_EXT_headless_surface"
pattern EXT_HEADLESS_SURFACE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_headless_surface.HeadlessSurfaceCreateFlagsEXT
module Vulkan.Extensions.VK_EXT_hdr_metadata
-- | vkSetHdrMetadataEXT - function to set Hdr metadata
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pSwapchains must be a valid pointer to an array of
-- swapchainCount valid SwapchainKHR handles
-- - pMetadata must be a valid pointer to an array of
-- swapchainCount valid HdrMetadataEXT structures
-- - swapchainCount must be greater than
-- 0
-- - Both of device, and the elements of pSwapchains
-- must have been created, allocated, or retrieved from the same
-- Instance
--
--
-- See Also
--
-- Device, HdrMetadataEXT, SwapchainKHR
setHdrMetadataEXT :: forall io. MonadIO io => Device -> ("swapchains" ::: Vector SwapchainKHR) -> ("metadata" ::: Vector HdrMetadataEXT) -> io ()
-- | VkXYColorEXT - structure to specify X,Y chromaticity coordinates
--
-- See Also
--
-- HdrMetadataEXT
data XYColorEXT
XYColorEXT :: Float -> Float -> XYColorEXT
[$sel:x:XYColorEXT] :: XYColorEXT -> Float
[$sel:y:XYColorEXT] :: XYColorEXT -> Float
-- | VkHdrMetadataEXT - structure to specify Hdr metadata
--
-- Valid Usage (Implicit)
--
-- Note
--
-- The validity and use of this data is outside the scope of Vulkan.
--
-- See Also
--
-- StructureType, XYColorEXT, setHdrMetadataEXT
data HdrMetadataEXT
HdrMetadataEXT :: XYColorEXT -> XYColorEXT -> XYColorEXT -> XYColorEXT -> Float -> Float -> Float -> Float -> HdrMetadataEXT
-- | displayPrimaryRed is the mastering display’s red primary in
-- chromaticity coordinates
[$sel:displayPrimaryRed:HdrMetadataEXT] :: HdrMetadataEXT -> XYColorEXT
-- | displayPrimaryGreen is the mastering display’s green primary
-- in chromaticity coordinates
[$sel:displayPrimaryGreen:HdrMetadataEXT] :: HdrMetadataEXT -> XYColorEXT
-- | displayPrimaryBlue is the mastering display’s blue primary in
-- chromaticity coordinates
[$sel:displayPrimaryBlue:HdrMetadataEXT] :: HdrMetadataEXT -> XYColorEXT
-- | whitePoint is the mastering display’s white-point in
-- chromaticity coordinates
[$sel:whitePoint:HdrMetadataEXT] :: HdrMetadataEXT -> XYColorEXT
-- | maxLuminance is the maximum luminance of the mastering
-- display in nits
[$sel:maxLuminance:HdrMetadataEXT] :: HdrMetadataEXT -> Float
-- | minLuminance is the minimum luminance of the mastering
-- display in nits
[$sel:minLuminance:HdrMetadataEXT] :: HdrMetadataEXT -> Float
-- | maxContentLightLevel is content’s maximum luminance in nits
[$sel:maxContentLightLevel:HdrMetadataEXT] :: HdrMetadataEXT -> Float
-- | maxFrameAverageLightLevel is the maximum frame average light
-- level in nits
[$sel:maxFrameAverageLightLevel:HdrMetadataEXT] :: HdrMetadataEXT -> Float
type EXT_HDR_METADATA_SPEC_VERSION = 2
pattern EXT_HDR_METADATA_SPEC_VERSION :: forall a. Integral a => a
type EXT_HDR_METADATA_EXTENSION_NAME = "VK_EXT_hdr_metadata"
pattern EXT_HDR_METADATA_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_hdr_metadata.HdrMetadataEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_hdr_metadata.HdrMetadataEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_hdr_metadata.HdrMetadataEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_hdr_metadata.HdrMetadataEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_hdr_metadata.HdrMetadataEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_hdr_metadata.XYColorEXT
module Vulkan.Extensions.VK_EXT_full_screen_exclusive
-- | vkGetPhysicalDeviceSurfacePresentModes2EXT - Query supported
-- presentation modes
--
-- Description
--
-- getPhysicalDeviceSurfacePresentModes2EXT behaves similarly to
-- getPhysicalDeviceSurfacePresentModesKHR, with the ability to
-- specify extended inputs via chained input structures.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pSurfaceInfo must be a valid pointer to a valid
-- PhysicalDeviceSurfaceInfo2KHR structure
-- - pPresentModeCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPresentModeCount is not
-- 0, and pPresentModes is not NULL,
-- pPresentModes must be a valid pointer to an array of
-- pPresentModeCount PresentModeKHR values
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceSurfaceInfo2KHR,
-- PresentModeKHR
getPhysicalDeviceSurfacePresentModes2EXT :: forall a io. (Extendss PhysicalDeviceSurfaceInfo2KHR a, PokeChain a, MonadIO io) => PhysicalDevice -> PhysicalDeviceSurfaceInfo2KHR a -> io (Result, "presentModes" ::: Vector PresentModeKHR)
-- | vkGetDeviceGroupSurfacePresentModes2EXT - Query device group present
-- capabilities for a surface
--
-- Description
--
-- getDeviceGroupSurfacePresentModes2EXT behaves similarly to
-- getDeviceGroupSurfacePresentModesKHR, with the ability to
-- specify extended inputs via chained input structures.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceGroupPresentModeFlagsKHR,
-- PhysicalDeviceSurfaceInfo2KHR
getDeviceGroupSurfacePresentModes2EXT :: forall a io. (Extendss PhysicalDeviceSurfaceInfo2KHR a, PokeChain a, MonadIO io) => Device -> PhysicalDeviceSurfaceInfo2KHR a -> io ("modes" ::: DeviceGroupPresentModeFlagsKHR)
-- | vkAcquireFullScreenExclusiveModeEXT - Acquire full-screen exclusive
-- mode for a swapchain
--
-- Valid Usage
--
--
-- - swapchain must not be in the retired state
--
--
--
--
-- A return value of SUCCESS indicates that the swapchain
-- successfully acquired exclusive full-screen access. The swapchain will
-- retain this exclusivity until either the application releases
-- exclusive full-screen access with
-- releaseFullScreenExclusiveModeEXT, destroys the swapchain, or
-- if any of the swapchain commands return
-- ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT indicating that the
-- mode was lost because of platform-specific changes.
--
-- If the swapchain was unable to acquire exclusive full-screen access to
-- the display then ERROR_INITIALIZATION_FAILED is returned. An
-- application can attempt to acquire exclusive full-screen access
-- again for the same swapchain even if this command fails, or if
-- ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT has been returned by
-- a swapchain command.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - Both of device, and swapchain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SwapchainKHR
acquireFullScreenExclusiveModeEXT :: forall io. MonadIO io => Device -> SwapchainKHR -> io ()
-- | vkReleaseFullScreenExclusiveModeEXT - Release full-screen exclusive
-- mode from a swapchain
--
-- Description
--
-- Note
--
-- Applications will not be able to present to swapchain after
-- this call until exclusive full-screen access is reacquired. This is
-- usually useful to handle when an application is minimised or otherwise
-- intends to stop presenting for a time.
--
-- Valid Usage
--
-- See Also
--
-- Device, SwapchainKHR
releaseFullScreenExclusiveModeEXT :: forall io. MonadIO io => Device -> SwapchainKHR -> io ()
-- | VkSurfaceFullScreenExclusiveInfoEXT - Structure specifying the
-- preferred full-screen transition behavior
--
-- Description
--
-- If this structure is not present, fullScreenExclusive is
-- considered to be FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- FullScreenExclusiveEXT, StructureType
data SurfaceFullScreenExclusiveInfoEXT
SurfaceFullScreenExclusiveInfoEXT :: FullScreenExclusiveEXT -> SurfaceFullScreenExclusiveInfoEXT
-- | fullScreenExclusive is a FullScreenExclusiveEXT value
-- specifying the preferred full-screen transition behavior.
--
-- fullScreenExclusive must be a valid
-- FullScreenExclusiveEXT value
[$sel:fullScreenExclusive:SurfaceFullScreenExclusiveInfoEXT] :: SurfaceFullScreenExclusiveInfoEXT -> FullScreenExclusiveEXT
-- | VkSurfaceFullScreenExclusiveWin32InfoEXT - Structure specifying
-- additional creation parameters specific to Win32 fullscreen exclusive
-- mode
--
-- Description
--
-- Note
--
-- If hmonitor is invalidated (e.g. the monitor is unplugged)
-- during the lifetime of a swapchain created with this structure,
-- operations on that swapchain will return ERROR_OUT_OF_DATE_KHR.
--
-- Note
--
-- It is the responsibility of the application to change the display
-- settings of the targeted Win32 display using the appropriate platform
-- APIs. Such changes may alter the surface capabilities reported
-- for the created surface.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data SurfaceFullScreenExclusiveWin32InfoEXT
SurfaceFullScreenExclusiveWin32InfoEXT :: HMONITOR -> SurfaceFullScreenExclusiveWin32InfoEXT
-- | hmonitor is the Win32 HMONITOR handle identifying the
-- display to create the surface with.
--
-- hmonitor must be a valid HMONITOR
[$sel:hmonitor:SurfaceFullScreenExclusiveWin32InfoEXT] :: SurfaceFullScreenExclusiveWin32InfoEXT -> HMONITOR
-- | VkSurfaceCapabilitiesFullScreenExclusiveEXT - Structure describing
-- full screen exclusive capabilities of a surface
--
-- Description
--
-- This structure can be included in the pNext chain of
-- SurfaceCapabilities2KHR to determine support for exclusive
-- full-screen access. If fullScreenExclusiveSupported is
-- FALSE, it indicates that exclusive full-screen access is not
-- obtainable for this surface.
--
-- Applications must not attempt to create swapchains with
-- FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT set if
-- fullScreenExclusiveSupported is FALSE.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data SurfaceCapabilitiesFullScreenExclusiveEXT
SurfaceCapabilitiesFullScreenExclusiveEXT :: Bool -> SurfaceCapabilitiesFullScreenExclusiveEXT
[$sel:fullScreenExclusiveSupported:SurfaceCapabilitiesFullScreenExclusiveEXT] :: SurfaceCapabilitiesFullScreenExclusiveEXT -> Bool
-- | VkFullScreenExclusiveEXT - Hint values an application can specify
-- affecting full-screen transition behavior
--
-- See Also
--
-- SurfaceFullScreenExclusiveInfoEXT
newtype FullScreenExclusiveEXT
FullScreenExclusiveEXT :: Int32 -> FullScreenExclusiveEXT
-- | FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT indicates the implementation
-- should determine the appropriate full-screen method by whatever
-- means it deems appropriate.
pattern FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT :: FullScreenExclusiveEXT
-- | FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT indicates the implementation
-- may use full-screen exclusive mechanisms when available. Such
-- mechanisms may result in better performance and/or the
-- availability of different presentation capabilities, but may
-- require a more disruptive transition during swapchain initialization,
-- first presentation and/or destruction.
pattern FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT :: FullScreenExclusiveEXT
-- | FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT indicates the
-- implementation should avoid using full-screen mechanisms which
-- rely on disruptive transitions.
pattern FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT :: FullScreenExclusiveEXT
-- | FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT indicates the
-- application will manage full-screen exclusive mode by using the
-- acquireFullScreenExclusiveModeEXT and
-- releaseFullScreenExclusiveModeEXT commands.
pattern FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT :: FullScreenExclusiveEXT
type EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION = 4
pattern EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION :: forall a. Integral a => a
type EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME = "VK_EXT_full_screen_exclusive"
pattern EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type HMONITOR = Ptr ()
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkPhysicalDeviceSurfaceInfo2KHR - Structure specifying a surface and
-- related swapchain creation parameters
--
-- Description
--
-- The members of PhysicalDeviceSurfaceInfo2KHR correspond to the
-- arguments to getPhysicalDeviceSurfaceCapabilitiesKHR, with
-- sType and pNext added for extensibility.
--
-- Additional capabilities of a surface may be available to
-- swapchains created with different full-screen exclusive settings -
-- particularly if exclusive full-screen access is application
-- controlled. These additional capabilities can be queried by
-- adding a SurfaceFullScreenExclusiveInfoEXT structure to the
-- pNext chain of this structure when used to query surface
-- properties. Additionally, for Win32 surfaces with application
-- controlled exclusive full-screen access, chaining a
-- SurfaceFullScreenExclusiveWin32InfoEXT structure may
-- also report additional surface capabilities. These additional
-- capabilities only apply to swapchains created with the same parameters
-- included in the pNext chain of SwapchainCreateInfoKHR.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, SurfaceKHR,
-- getDeviceGroupSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfaceCapabilities2KHR,
-- getPhysicalDeviceSurfaceFormats2KHR,
-- getPhysicalDeviceSurfacePresentModes2EXT
data PhysicalDeviceSurfaceInfo2KHR (es :: [Type])
PhysicalDeviceSurfaceInfo2KHR :: Chain es -> SurfaceKHR -> PhysicalDeviceSurfaceInfo2KHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PhysicalDeviceSurfaceInfo2KHR] :: PhysicalDeviceSurfaceInfo2KHR (es :: [Type]) -> Chain es
-- | surface is the surface that will be associated with the
-- swapchain.
[$sel:surface:PhysicalDeviceSurfaceInfo2KHR] :: PhysicalDeviceSurfaceInfo2KHR (es :: [Type]) -> SurfaceKHR
-- | VkPresentModeKHR - presentation mode supported for a surface
--
-- Description
--
-- The supported ImageUsageFlagBits of the presentable images of a
-- swapchain created for a surface may differ depending on the
-- presentation mode, and can be determined as per the table below:
--
-- TODO: table
--
-- Presentable image usage queries
--
-- Note
--
-- For reference, the mode indicated by PRESENT_MODE_FIFO_KHR is
-- equivalent to the behavior of {wgl|glX|egl}SwapBuffers with a swap
-- interval of 1, while the mode indicated by
-- PRESENT_MODE_FIFO_RELAXED_KHR is equivalent to the behavior of
-- {wgl|glX}SwapBuffers with a swap interval of -1 (from the
-- {WGL|GLX}_EXT_swap_control_tear extensions).
--
-- See Also
--
-- SwapchainCreateInfoKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR
newtype PresentModeKHR
PresentModeKHR :: Int32 -> PresentModeKHR
-- | PRESENT_MODE_IMMEDIATE_KHR specifies that the presentation
-- engine does not wait for a vertical blanking period to update the
-- current image, meaning this mode may result in visible tearing.
-- No internal queuing of presentation requests is needed, as the
-- requests are applied immediately.
pattern PRESENT_MODE_IMMEDIATE_KHR :: PresentModeKHR
-- | PRESENT_MODE_MAILBOX_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal single-entry
-- queue is used to hold pending presentation requests. If the queue is
-- full when a new presentation request is received, the new request
-- replaces the existing entry, and any images associated with the prior
-- entry become available for re-use by the application. One request is
-- removed from the queue and processed during each vertical blanking
-- period in which the queue is non-empty.
pattern PRESENT_MODE_MAILBOX_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_KHR specifies that the presentation engine
-- waits for the next vertical blanking period to update the current
-- image. Tearing cannot be observed. An internal queue is used to
-- hold pending presentation requests. New requests are appended to the
-- end of the queue, and one request is removed from the beginning of the
-- queue and processed during each vertical blanking period in which the
-- queue is non-empty. This is the only value of presentMode
-- that is required to be supported.
pattern PRESENT_MODE_FIFO_KHR :: PresentModeKHR
-- | PRESENT_MODE_FIFO_RELAXED_KHR specifies that the presentation
-- engine generally waits for the next vertical blanking period to update
-- the current image. If a vertical blanking period has already passed
-- since the last update of the current image then the presentation
-- engine does not wait for another vertical blanking period for the
-- update, meaning this mode may result in visible tearing in this
-- case. This mode is useful for reducing visual stutter with an
-- application that will mostly present a new image before the next
-- vertical blanking period, but may occasionally be late, and present a
-- new image just after the next vertical blanking period. An internal
-- queue is used to hold pending presentation requests. New requests are
-- appended to the end of the queue, and one request is removed from the
-- beginning of the queue and processed during or after each vertical
-- blanking period in which the queue is non-empty.
pattern PRESENT_MODE_FIFO_RELAXED_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine periodically updates the current image on its
-- regular refresh cycle. The application is only required to make one
-- initial presentation request, after which the presentation engine
-- must update the current image without any need for further
-- presentation requests. The application can indicate the image
-- contents have been updated by making a presentation request, but this
-- does not guarantee the timing of when it will be updated. This mode
-- may result in visible tearing if rendering to the image is not
-- timed correctly.
pattern PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR :: PresentModeKHR
-- | PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR specifies that the
-- presentation engine and application have concurrent access to a single
-- image, which is referred to as a shared presentable image. The
-- presentation engine is only required to update the current image after
-- a new presentation request is received. Therefore the application
-- must make a presentation request whenever an update is
-- required. However, the presentation engine may update the
-- current image at any point, meaning this mode may result in
-- visible tearing.
pattern PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR :: PresentModeKHR
-- | VkDeviceGroupPresentModeFlagBitsKHR - Bitmask specifying supported
-- device group present modes
--
-- See Also
--
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupPresentModeFlagsKHR
newtype DeviceGroupPresentModeFlagBitsKHR
DeviceGroupPresentModeFlagBitsKHR :: Flags -> DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR specifies that any
-- physical device with a presentation engine can present its own
-- swapchain images.
pattern DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR specifies that any
-- physical device with a presentation engine can present
-- swapchain images from any physical device in its presentMask.
pattern DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR specifies that any
-- physical device with a presentation engine can present the sum
-- of swapchain images from any physical devices in its
-- presentMask.
pattern DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
-- | DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR specifies
-- that multiple physical devices with a presentation engine can
-- each present their own swapchain images.
pattern DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR :: DeviceGroupPresentModeFlagBitsKHR
type DeviceGroupPresentModeFlagsKHR = DeviceGroupPresentModeFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_full_screen_exclusive.FullScreenExclusiveEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_full_screen_exclusive.FullScreenExclusiveEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_full_screen_exclusive.FullScreenExclusiveEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_full_screen_exclusive.FullScreenExclusiveEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveWin32InfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceFullScreenExclusiveInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_full_screen_exclusive.FullScreenExclusiveEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_full_screen_exclusive.FullScreenExclusiveEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_full_screen_exclusive.SurfaceCapabilitiesFullScreenExclusiveEXT
module Vulkan.Extensions.VK_EXT_display_surface_counter
-- | vkGetPhysicalDeviceSurfaceCapabilities2EXT - Query surface
-- capabilities
--
-- Description
--
-- getPhysicalDeviceSurfaceCapabilities2EXT behaves similarly to
-- getPhysicalDeviceSurfaceCapabilitiesKHR, with the ability to
-- return extended information by adding extending structures to the
-- pNext chain of its pSurfaceCapabilities parameter.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - surface must be a valid SurfaceKHR
-- handle
-- - pSurfaceCapabilities must be a valid pointer to a
-- SurfaceCapabilities2EXT structure
-- - Both of physicalDevice, and surface must
-- have been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- PhysicalDevice, SurfaceCapabilities2EXT,
-- SurfaceKHR
getPhysicalDeviceSurfaceCapabilities2EXT :: forall io. MonadIO io => PhysicalDevice -> SurfaceKHR -> io SurfaceCapabilities2EXT
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT :: StructureType
-- | VkSurfaceCapabilities2EXT - Structure describing capabilities of a
-- surface
--
-- Members
--
-- All members of SurfaceCapabilities2EXT are identical to the
-- corresponding members of SurfaceCapabilitiesKHR where one
-- exists. The remaining members are:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- CompositeAlphaFlagsKHR, Extent2D,
-- ImageUsageFlags, StructureType,
-- SurfaceCounterFlagsEXT, SurfaceTransformFlagBitsKHR,
-- SurfaceTransformFlagsKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT
data SurfaceCapabilities2EXT
SurfaceCapabilities2EXT :: Word32 -> Word32 -> Extent2D -> Extent2D -> Extent2D -> Word32 -> SurfaceTransformFlagsKHR -> SurfaceTransformFlagBitsKHR -> CompositeAlphaFlagsKHR -> ImageUsageFlags -> SurfaceCounterFlagsEXT -> SurfaceCapabilities2EXT
[$sel:minImageCount:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> Word32
[$sel:maxImageCount:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> Word32
[$sel:currentExtent:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> Extent2D
[$sel:minImageExtent:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> Extent2D
[$sel:maxImageExtent:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> Extent2D
[$sel:maxImageArrayLayers:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> Word32
[$sel:supportedTransforms:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> SurfaceTransformFlagsKHR
[$sel:currentTransform:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> SurfaceTransformFlagBitsKHR
[$sel:supportedCompositeAlpha:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> CompositeAlphaFlagsKHR
[$sel:supportedUsageFlags:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> ImageUsageFlags
-- | supportedSurfaceCounters is a bitmask of
-- SurfaceCounterFlagBitsEXT indicating the supported surface
-- counter types.
--
-- supportedSurfaceCounters must not include
-- SURFACE_COUNTER_VBLANK_EXT unless the surface queried is a
-- display surface
[$sel:supportedSurfaceCounters:SurfaceCapabilities2EXT] :: SurfaceCapabilities2EXT -> SurfaceCounterFlagsEXT
-- | VkSurfaceCounterFlagBitsEXT - Surface-relative counter types
--
-- See Also
--
-- SurfaceCounterFlagsEXT, getSwapchainCounterEXT
newtype SurfaceCounterFlagBitsEXT
SurfaceCounterFlagBitsEXT :: Flags -> SurfaceCounterFlagBitsEXT
-- | SURFACE_COUNTER_VBLANK_EXT specifies a counter incrementing
-- once every time a vertical blanking period occurs on the display
-- associated with the surface.
pattern SURFACE_COUNTER_VBLANK_EXT :: SurfaceCounterFlagBitsEXT
type SurfaceCounterFlagsEXT = SurfaceCounterFlagBitsEXT
type EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION = 1
pattern EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION :: forall a. Integral a => a
type EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME = "VK_EXT_display_surface_counter"
pattern EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSurfaceKHR - Opaque handle to a surface object
--
-- Description
--
-- The VK_KHR_surface extension declares the SurfaceKHR
-- object, and provides a function for destroying SurfaceKHR
-- objects. Separate platform-specific extensions each provide a function
-- for creating a SurfaceKHR object for the respective platform.
-- From the application’s perspective this is an opaque handle, just like
-- the handles of other Vulkan objects.
--
-- See Also
--
-- PhysicalDeviceSurfaceInfo2KHR, SwapchainCreateInfoKHR,
-- createAndroidSurfaceKHR, createDisplayPlaneSurfaceKHR,
-- createHeadlessSurfaceEXT, createIOSSurfaceMVK,
-- createImagePipeSurfaceFUCHSIA, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, destroySurfaceKHR,
-- getDeviceGroupSurfacePresentModesKHR,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR
newtype SurfaceKHR
SurfaceKHR :: Word64 -> SurfaceKHR
-- | VkCompositeAlphaFlagBitsKHR - alpha compositing modes supported on a
-- device
--
-- Description
--
-- These values are described as follows:
--
-- See Also
--
-- CompositeAlphaFlagsKHR, SwapchainCreateInfoKHR
newtype CompositeAlphaFlagBitsKHR
CompositeAlphaFlagBitsKHR :: Flags -> CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_OPAQUE_BIT_KHR: The alpha channel, if it
-- exists, of the images is ignored in the compositing process. Instead,
-- the image is treated as if it has a constant alpha of 1.0.
pattern COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are expected to already be multiplied
-- by the alpha channel by the application.
pattern COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR: The alpha channel, if
-- it exists, of the images is respected in the compositing process. The
-- non-alpha channels of the image are not expected to already be
-- multiplied by the alpha channel by the application; instead, the
-- compositor will multiply the non-alpha channels of the image by the
-- alpha channel during compositing.
pattern COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR
-- | COMPOSITE_ALPHA_INHERIT_BIT_KHR: The way in which the
-- presentation engine treats the alpha channel in the images is unknown
-- to the Vulkan API. Instead, the application is responsible for setting
-- the composite alpha blending mode using native window system commands.
-- If the application does not set the blending mode using native window
-- system commands, then a platform-specific default will be used.
pattern COMPOSITE_ALPHA_INHERIT_BIT_KHR :: CompositeAlphaFlagBitsKHR
type CompositeAlphaFlagsKHR = CompositeAlphaFlagBitsKHR
-- | VkSurfaceTransformFlagBitsKHR - presentation transforms supported on a
-- device
--
-- See Also
--
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- DisplaySurfaceCreateInfoKHR,
-- RenderPassTransformBeginInfoQCOM,
-- SurfaceCapabilities2EXT, SurfaceCapabilitiesKHR,
-- SurfaceTransformFlagsKHR, SwapchainCreateInfoKHR
newtype SurfaceTransformFlagBitsKHR
SurfaceTransformFlagBitsKHR :: Flags -> SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content
-- is presented without being transformed.
pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image
-- content is rotated 90 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image
-- content is rotated 180 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image
-- content is rotated 270 degrees clockwise.
pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that
-- image content is mirrored horizontally.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies
-- that image content is mirrored horizontally, then rotated 90 degrees
-- clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 180 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR
-- specifies that image content is mirrored horizontally, then rotated
-- 270 degrees clockwise.
pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR
-- | SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the
-- presentation transform is not specified, and is instead determined by
-- platform-specific considerations and mechanisms outside Vulkan.
pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR
type SurfaceTransformFlagsKHR = SurfaceTransformFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCapabilities2EXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCapabilities2EXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCapabilities2EXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCapabilities2EXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCapabilities2EXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_display_surface_counter.SurfaceCounterFlagBitsEXT
module Vulkan.Extensions.VK_EXT_display_control
-- | vkDisplayPowerControlEXT - Set the power state of a display
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - display must be a valid DisplayKHR
-- handle
-- - pDisplayPowerInfo must be a valid pointer to a
-- valid DisplayPowerInfoEXT structure
-- - Both of device, and display must have
-- been created, allocated, or retrieved from the same
-- PhysicalDevice
--
--
-- Return Codes
--
--
--
-- See Also
--
-- Device, DisplayKHR, DisplayPowerInfoEXT
displayPowerControlEXT :: forall io. MonadIO io => Device -> DisplayKHR -> DisplayPowerInfoEXT -> io ()
-- | vkRegisterDeviceEventEXT - Signal a fence when a device event occurs
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pDeviceEventInfo must be a valid pointer to a
-- valid DeviceEventInfoEXT structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pFence must be a valid pointer to a Fence
-- handle
--
--
-- Return Codes
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, DeviceEventInfoEXT,
-- Fence
registerDeviceEventEXT :: forall io. MonadIO io => Device -> DeviceEventInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence
-- | vkRegisterDisplayEventEXT - Signal a fence when a display event occurs
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - display must be a valid DisplayKHR
-- handle
-- - pDisplayEventInfo must be a valid pointer to a
-- valid DisplayEventInfoEXT structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pFence must be a valid pointer to a Fence
-- handle
-- - Both of device, and display must have
-- been created, allocated, or retrieved from the same
-- PhysicalDevice
--
--
-- Return Codes
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, DisplayEventInfoEXT,
-- DisplayKHR, Fence
registerDisplayEventEXT :: forall io. MonadIO io => Device -> DisplayKHR -> DisplayEventInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence
-- | vkGetSwapchainCounterEXT - Query the current value of a surface
-- counter
--
-- Description
--
-- If a counter is not available because the swapchain is out of date,
-- the implementation may return ERROR_OUT_OF_DATE_KHR.
--
-- Valid Usage
--
--
-- - One or more present commands on swapchain must
-- have been processed by the presentation engine
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapchain must be a valid SwapchainKHR
-- handle
-- - counter must be a valid
-- SurfaceCounterFlagBitsEXT value
-- - pCounterValue must be a valid pointer to a
-- uint64_t value
-- - Both of device, and swapchain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SurfaceCounterFlagBitsEXT, SwapchainKHR
getSwapchainCounterEXT :: forall io. MonadIO io => Device -> SwapchainKHR -> SurfaceCounterFlagBitsEXT -> io ("counterValue" ::: Word64)
-- | VkDisplayPowerInfoEXT - Describe the power state of a display
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayPowerStateEXT, StructureType,
-- displayPowerControlEXT
data DisplayPowerInfoEXT
DisplayPowerInfoEXT :: DisplayPowerStateEXT -> DisplayPowerInfoEXT
-- | powerState is a DisplayPowerStateEXT value specifying
-- the new power state of the display.
--
-- powerState must be a valid DisplayPowerStateEXT
-- value
[$sel:powerState:DisplayPowerInfoEXT] :: DisplayPowerInfoEXT -> DisplayPowerStateEXT
-- | VkDeviceEventInfoEXT - Describe a device event to create
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceEventTypeEXT, StructureType,
-- registerDeviceEventEXT
data DeviceEventInfoEXT
DeviceEventInfoEXT :: DeviceEventTypeEXT -> DeviceEventInfoEXT
-- | deviceEvent must be a valid DeviceEventTypeEXT
-- value
[$sel:deviceEvent:DeviceEventInfoEXT] :: DeviceEventInfoEXT -> DeviceEventTypeEXT
-- | VkDisplayEventInfoEXT - Describe a display event to create
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DisplayEventTypeEXT, StructureType,
-- registerDisplayEventEXT
data DisplayEventInfoEXT
DisplayEventInfoEXT :: DisplayEventTypeEXT -> DisplayEventInfoEXT
-- | displayEvent is a DisplayEventTypeEXT specifying when
-- the fence will be signaled.
--
-- displayEvent must be a valid
-- DisplayEventTypeEXT value
[$sel:displayEvent:DisplayEventInfoEXT] :: DisplayEventInfoEXT -> DisplayEventTypeEXT
-- | VkSwapchainCounterCreateInfoEXT - Specify the surface counters desired
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType, SurfaceCounterFlagsEXT
data SwapchainCounterCreateInfoEXT
SwapchainCounterCreateInfoEXT :: SurfaceCounterFlagsEXT -> SwapchainCounterCreateInfoEXT
-- | surfaceCounters is a bitmask of
-- SurfaceCounterFlagBitsEXT specifying surface counters to enable
-- for the swapchain.
[$sel:surfaceCounters:SwapchainCounterCreateInfoEXT] :: SwapchainCounterCreateInfoEXT -> SurfaceCounterFlagsEXT
-- | VkDisplayPowerStateEXT - Possible power states for a display
--
-- See Also
--
-- DisplayPowerInfoEXT
newtype DisplayPowerStateEXT
DisplayPowerStateEXT :: Int32 -> DisplayPowerStateEXT
-- | DISPLAY_POWER_STATE_OFF_EXT specifies that the display is
-- powered down.
pattern DISPLAY_POWER_STATE_OFF_EXT :: DisplayPowerStateEXT
-- | DISPLAY_POWER_STATE_SUSPEND_EXT specifies that the display is
-- put into a low power mode, from which it may be able to
-- transition back to DISPLAY_POWER_STATE_ON_EXT more quickly than
-- if it were in DISPLAY_POWER_STATE_OFF_EXT. This state
-- may be the same as DISPLAY_POWER_STATE_OFF_EXT.
pattern DISPLAY_POWER_STATE_SUSPEND_EXT :: DisplayPowerStateEXT
-- | DISPLAY_POWER_STATE_ON_EXT specifies that the display is
-- powered on.
pattern DISPLAY_POWER_STATE_ON_EXT :: DisplayPowerStateEXT
-- | VkDeviceEventTypeEXT - Events that can occur on a device object
--
-- See Also
--
-- DeviceEventInfoEXT
newtype DeviceEventTypeEXT
DeviceEventTypeEXT :: Int32 -> DeviceEventTypeEXT
-- | DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT specifies that the fence
-- is signaled when a display is plugged into or unplugged from the
-- specified device. Applications can use this notification to
-- determine when they need to re-enumerate the available displays on a
-- device.
pattern DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT :: DeviceEventTypeEXT
-- | VkDisplayEventTypeEXT - Events that can occur on a display object
--
-- See Also
--
-- DisplayEventInfoEXT
newtype DisplayEventTypeEXT
DisplayEventTypeEXT :: Int32 -> DisplayEventTypeEXT
-- | DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT specifies that the fence
-- is signaled when the first pixel of the next display refresh cycle
-- leaves the display engine for the display.
pattern DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT :: DisplayEventTypeEXT
type EXT_DISPLAY_CONTROL_SPEC_VERSION = 1
pattern EXT_DISPLAY_CONTROL_SPEC_VERSION :: forall a. Integral a => a
type EXT_DISPLAY_CONTROL_EXTENSION_NAME = "VK_EXT_display_control"
pattern EXT_DISPLAY_CONTROL_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDisplayKHR - Opaque handle to a display object
--
-- See Also
--
-- DisplayPlanePropertiesKHR, DisplayPropertiesKHR,
-- acquireXlibDisplayEXT, createDisplayModeKHR,
-- displayPowerControlEXT, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getRandROutputDisplayEXT, registerDisplayEventEXT,
-- releaseDisplayEXT
newtype DisplayKHR
DisplayKHR :: Word64 -> DisplayKHR
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkSurfaceCounterFlagBitsEXT - Surface-relative counter types
--
-- See Also
--
-- SurfaceCounterFlagsEXT, getSwapchainCounterEXT
newtype SurfaceCounterFlagBitsEXT
SurfaceCounterFlagBitsEXT :: Flags -> SurfaceCounterFlagBitsEXT
-- | SURFACE_COUNTER_VBLANK_EXT specifies a counter incrementing
-- once every time a vertical blanking period occurs on the display
-- associated with the surface.
pattern SURFACE_COUNTER_VBLANK_EXT :: SurfaceCounterFlagBitsEXT
type SurfaceCounterFlagsEXT = SurfaceCounterFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.DisplayEventTypeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.DisplayEventTypeEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_display_control.DisplayEventTypeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.DisplayEventTypeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.DeviceEventTypeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.DeviceEventTypeEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_display_control.DeviceEventTypeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.DeviceEventTypeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.DisplayPowerStateEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.DisplayPowerStateEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_display_control.DisplayPowerStateEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.DisplayPowerStateEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.DisplayEventInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.DisplayEventTypeEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_display_control.DisplayEventTypeEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.DeviceEventInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.DeviceEventTypeEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_display_control.DeviceEventTypeEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.DisplayPowerInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_display_control.DisplayPowerStateEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_display_control.DisplayPowerStateEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_display_control.SwapchainCounterCreateInfoEXT
module Vulkan.Extensions.VK_EXT_direct_mode_display
-- | vkReleaseDisplayEXT - Release access to an acquired VkDisplayKHR
--
-- Return Codes
--
--
--
-- See Also
--
-- DisplayKHR, PhysicalDevice
releaseDisplayEXT :: forall io. MonadIO io => PhysicalDevice -> DisplayKHR -> io ()
type EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION = 1
pattern EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION :: forall a. Integral a => a
type EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME = "VK_EXT_direct_mode_display"
pattern EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDisplayKHR - Opaque handle to a display object
--
-- See Also
--
-- DisplayPlanePropertiesKHR, DisplayPropertiesKHR,
-- acquireXlibDisplayEXT, createDisplayModeKHR,
-- displayPowerControlEXT, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getRandROutputDisplayEXT, registerDisplayEventEXT,
-- releaseDisplayEXT
newtype DisplayKHR
DisplayKHR :: Word64 -> DisplayKHR
module Vulkan.Extensions.VK_EXT_debug_utils
-- | vkSetDebugUtilsObjectNameEXT - Give a user-friendly name to an object
--
-- Valid Usage
--
--
--
--
-- - pNameInfo->objectHandle must not be
-- NULL_HANDLE
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to pNameInfo->objectHandle must be
-- externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DebugUtilsObjectNameInfoEXT, Device
setDebugUtilsObjectNameEXT :: forall io. MonadIO io => Device -> DebugUtilsObjectNameInfoEXT -> io ()
-- | vkSetDebugUtilsObjectTagEXT - Attach arbitrary data to an object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to pTagInfo->objectHandle must be
-- externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DebugUtilsObjectTagInfoEXT, Device
setDebugUtilsObjectTagEXT :: forall io. MonadIO io => Device -> DebugUtilsObjectTagInfoEXT -> io ()
-- | vkQueueBeginDebugUtilsLabelEXT - Open a queue debug label region
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- DebugUtilsLabelEXT, Queue
queueBeginDebugUtilsLabelEXT :: forall io. MonadIO io => Queue -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
-- | vkQueueEndDebugUtilsLabelEXT - Close a queue debug label region
--
-- Description
--
-- The calls to queueBeginDebugUtilsLabelEXT and
-- queueEndDebugUtilsLabelEXT must be matched and balanced.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Queue
queueEndDebugUtilsLabelEXT :: forall io. MonadIO io => Queue -> io ()
-- | vkQueueInsertDebugUtilsLabelEXT - Insert a label into a queue
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- DebugUtilsLabelEXT, Queue
queueInsertDebugUtilsLabelEXT :: forall io. MonadIO io => Queue -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
-- | vkCmdBeginDebugUtilsLabelEXT - Open a command buffer debug label
-- region
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pLabelInfo must be a valid pointer to a valid
-- DebugUtilsLabelEXT structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, DebugUtilsLabelEXT
cmdBeginDebugUtilsLabelEXT :: forall io. MonadIO io => CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginDebugUtilsLabelEXT and cmdEndDebugUtilsLabelEXT
--
-- Note that cmdEndDebugUtilsLabelEXT is *not* called if an
-- exception is thrown by the inner action.
cmdUseDebugUtilsLabelEXT :: forall io r. MonadIO io => CommandBuffer -> DebugUtilsLabelEXT -> io r -> io r
-- | vkCmdEndDebugUtilsLabelEXT - Close a command buffer label region
--
-- Description
--
-- An application may open a debug label region in one command
-- buffer and close it in another, or otherwise split debug label regions
-- across multiple command buffers or multiple queue submissions. When
-- viewed from the linear series of submissions to a single queue, the
-- calls to cmdBeginDebugUtilsLabelEXT and
-- cmdEndDebugUtilsLabelEXT must be matched and balanced.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdEndDebugUtilsLabelEXT :: forall io. MonadIO io => CommandBuffer -> io ()
-- | vkCmdInsertDebugUtilsLabelEXT - Insert a label into a command buffer
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pLabelInfo must be a valid pointer to a valid
-- DebugUtilsLabelEXT structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, DebugUtilsLabelEXT
cmdInsertDebugUtilsLabelEXT :: forall io. MonadIO io => CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
-- | vkCreateDebugUtilsMessengerEXT - Create a debug messenger object
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- The application must ensure that
-- createDebugUtilsMessengerEXT is not executed in parallel with
-- any Vulkan command that is also called with instance or child
-- of instance as the dispatchable argument.
--
-- See Also
--
-- AllocationCallbacks, DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsMessengerEXT, Instance
createDebugUtilsMessengerEXT :: forall io. MonadIO io => Instance -> DebugUtilsMessengerCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io DebugUtilsMessengerEXT
-- | A convenience wrapper to make a compatible pair of calls to
-- createDebugUtilsMessengerEXT and
-- destroyDebugUtilsMessengerEXT
--
-- To ensure that destroyDebugUtilsMessengerEXT is always called:
-- pass bracket (or the allocate function from your favourite
-- resource management library) as the first argument. To just extract
-- the pair pass (,) as the first argument.
withDebugUtilsMessengerEXT :: forall io r. MonadIO io => Instance -> DebugUtilsMessengerCreateInfoEXT -> Maybe AllocationCallbacks -> (io DebugUtilsMessengerEXT -> (DebugUtilsMessengerEXT -> io ()) -> r) -> r
-- | vkDestroyDebugUtilsMessengerEXT - Destroy a debug messenger object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- messenger was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- messenger was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - If messenger is not NULL_HANDLE,
-- messenger must be a valid
-- DebugUtilsMessengerEXT handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If messenger is a valid handle, it must have been
-- created, allocated, or retrieved from instance
--
--
-- Host Synchronization
--
--
-- - Host access to messenger must be externally
-- synchronized
--
--
-- The application must ensure that
-- destroyDebugUtilsMessengerEXT is not executed in parallel with
-- any Vulkan command that is also called with instance or child
-- of instance as the dispatchable argument.
--
-- See Also
--
-- AllocationCallbacks, DebugUtilsMessengerEXT,
-- Instance
destroyDebugUtilsMessengerEXT :: forall io. MonadIO io => Instance -> DebugUtilsMessengerEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkSubmitDebugUtilsMessageEXT - Inject a message into a debug stream
--
-- Description
--
-- The call will propagate through the layers and generate callback(s) as
-- indicated by the message’s flags. The parameters are passed on to the
-- callback in addition to the pUserData value that was defined
-- at the time the messenger was registered.
--
-- Valid Usage
--
--
-- - The objectType member of each element of
-- pCallbackData->pObjects must not be
-- OBJECT_TYPE_UNKNOWN
--
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- See Also
--
-- DebugUtilsMessageSeverityFlagBitsEXT,
-- DebugUtilsMessageTypeFlagsEXT,
-- DebugUtilsMessengerCallbackDataEXT, Instance
submitDebugUtilsMessageEXT :: forall io. MonadIO io => Instance -> DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> DebugUtilsMessengerCallbackDataEXT -> io ()
-- | VkDebugUtilsObjectNameInfoEXT - Specify parameters of a name to give
-- to an object
--
-- Description
--
-- Applications may change the name associated with an object
-- simply by calling setDebugUtilsObjectNameEXT again with a new
-- string. If pObjectName is either NULL or an empty
-- string, then any previously set name is removed.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - objectType must be a valid ObjectType
-- value
-- - If pObjectName is not NULL, pObjectName
-- must be a null-terminated UTF-8 string
--
--
-- See Also
--
-- DebugUtilsMessengerCallbackDataEXT, ObjectType,
-- StructureType, setDebugUtilsObjectNameEXT
data DebugUtilsObjectNameInfoEXT
DebugUtilsObjectNameInfoEXT :: ObjectType -> Word64 -> Maybe ByteString -> DebugUtilsObjectNameInfoEXT
-- | objectType is a ObjectType specifying the type of the
-- object to be named.
[$sel:objectType:DebugUtilsObjectNameInfoEXT] :: DebugUtilsObjectNameInfoEXT -> ObjectType
-- | objectHandle is the object to be named.
[$sel:objectHandle:DebugUtilsObjectNameInfoEXT] :: DebugUtilsObjectNameInfoEXT -> Word64
-- | pObjectName is either NULL or a null-terminated
-- UTF-8 string specifying the name to apply to objectHandle.
[$sel:objectName:DebugUtilsObjectNameInfoEXT] :: DebugUtilsObjectNameInfoEXT -> Maybe ByteString
-- | VkDebugUtilsObjectTagInfoEXT - Specify parameters of a tag to attach
-- to an object
--
-- Description
--
-- The tagName parameter gives a name or identifier to the type
-- of data being tagged. This can be used by debugging layers to easily
-- filter for only data that can be used by that implementation.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ObjectType, StructureType,
-- setDebugUtilsObjectTagEXT
data DebugUtilsObjectTagInfoEXT
DebugUtilsObjectTagInfoEXT :: ObjectType -> Word64 -> Word64 -> Word64 -> Ptr () -> DebugUtilsObjectTagInfoEXT
-- | objectType is a ObjectType specifying the type of the
-- object to be named.
--
-- objectType must not be OBJECT_TYPE_UNKNOWN
--
-- objectType must be a valid ObjectType value
[$sel:objectType:DebugUtilsObjectTagInfoEXT] :: DebugUtilsObjectTagInfoEXT -> ObjectType
-- | objectHandle is the object to be tagged.
--
-- objectHandle must be a valid Vulkan handle of the type
-- associated with objectType as defined in the VkObjectType
-- and Vulkan Handle Relationship table
[$sel:objectHandle:DebugUtilsObjectTagInfoEXT] :: DebugUtilsObjectTagInfoEXT -> Word64
-- | tagName is a numerical identifier of the tag.
[$sel:tagName:DebugUtilsObjectTagInfoEXT] :: DebugUtilsObjectTagInfoEXT -> Word64
-- | tagSize is the number of bytes of data to attach to the
-- object.
--
-- tagSize must be greater than 0
[$sel:tagSize:DebugUtilsObjectTagInfoEXT] :: DebugUtilsObjectTagInfoEXT -> Word64
-- | pTag is a pointer to an array of tagSize bytes
-- containing the data to be associated with the object.
--
-- pTag must be a valid pointer to an array of
-- tagSize bytes
[$sel:tag:DebugUtilsObjectTagInfoEXT] :: DebugUtilsObjectTagInfoEXT -> Ptr ()
-- | VkDebugUtilsLabelEXT - Specify parameters of a label region
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DebugUtilsMessengerCallbackDataEXT, StructureType,
-- cmdBeginDebugUtilsLabelEXT, cmdInsertDebugUtilsLabelEXT,
-- queueBeginDebugUtilsLabelEXT,
-- queueInsertDebugUtilsLabelEXT
data DebugUtilsLabelEXT
DebugUtilsLabelEXT :: ByteString -> (Float, Float, Float, Float) -> DebugUtilsLabelEXT
-- | pLabelName is a pointer to a null-terminated UTF-8 string
-- containing the name of the label.
--
-- pLabelName must be a null-terminated UTF-8 string
[$sel:labelName:DebugUtilsLabelEXT] :: DebugUtilsLabelEXT -> ByteString
-- | color is an optional RGBA color value that can be associated
-- with the label. A particular implementation may choose to
-- ignore this color value. The values contain RGBA values in order, in
-- the range 0.0 to 1.0. If all elements in color are set to 0.0
-- then it is ignored.
[$sel:color:DebugUtilsLabelEXT] :: DebugUtilsLabelEXT -> (Float, Float, Float, Float)
-- | VkDebugUtilsMessengerCreateInfoEXT - Structure specifying parameters
-- of a newly created debug messenger
--
-- Description
--
-- For each DebugUtilsMessengerEXT that is created the
-- DebugUtilsMessengerCreateInfoEXT::messageSeverity and
-- DebugUtilsMessengerCreateInfoEXT::messageType
-- determine when that
-- DebugUtilsMessengerCreateInfoEXT::pfnUserCallback is
-- called. The process to determine if the user’s
-- pfnUserCallback is triggered when an event occurs is as
-- follows:
--
--
-- - The implementation will perform a bitwise AND of the event’s
-- DebugUtilsMessageSeverityFlagBitsEXT with the
-- messageSeverity provided during creation of the
-- DebugUtilsMessengerEXT object.
- If the value is 0, the
-- message is skipped.
-- - The implementation will perform bitwise AND of the event’s
-- DebugUtilsMessageTypeFlagBitsEXT with the messageType
-- provided during the creation of the DebugUtilsMessengerEXT
-- object.
- If the value is 0, the message is
-- skipped.
-- - The callback will trigger a debug message for the current
-- event
--
--
-- The callback will come directly from the component that detected the
-- event, unless some other layer intercepts the calls for its own
-- purposes (filter them in a different way, log to a system error log,
-- etc.).
--
-- An application can receive multiple callbacks if multiple
-- DebugUtilsMessengerEXT objects are created. A callback will
-- always be executed in the same thread as the originating Vulkan call.
--
-- A callback can be called from multiple threads simultaneously
-- (if the application is making Vulkan calls from multiple threads).
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PFN_vkDebugUtilsMessengerCallbackEXT,
-- DebugUtilsMessageSeverityFlagsEXT,
-- DebugUtilsMessageTypeFlagsEXT,
-- DebugUtilsMessengerCreateFlagsEXT, StructureType,
-- createDebugUtilsMessengerEXT
data DebugUtilsMessengerCreateInfoEXT
DebugUtilsMessengerCreateInfoEXT :: DebugUtilsMessengerCreateFlagsEXT -> DebugUtilsMessageSeverityFlagsEXT -> DebugUtilsMessageTypeFlagsEXT -> PFN_vkDebugUtilsMessengerCallbackEXT -> Ptr () -> DebugUtilsMessengerCreateInfoEXT
-- | flags is 0 and is reserved for future use.
--
-- flags must be 0
[$sel:flags:DebugUtilsMessengerCreateInfoEXT] :: DebugUtilsMessengerCreateInfoEXT -> DebugUtilsMessengerCreateFlagsEXT
-- | messageSeverity is a bitmask of
-- DebugUtilsMessageSeverityFlagBitsEXT specifying which severity
-- of event(s) will cause this callback to be called.
--
-- messageSeverity must be a valid combination of
-- DebugUtilsMessageSeverityFlagBitsEXT values
--
-- messageSeverity must not be 0
[$sel:messageSeverity:DebugUtilsMessengerCreateInfoEXT] :: DebugUtilsMessengerCreateInfoEXT -> DebugUtilsMessageSeverityFlagsEXT
-- | messageType is a bitmask of
-- DebugUtilsMessageTypeFlagBitsEXT specifying which type of
-- event(s) will cause this callback to be called.
--
-- messageType must be a valid combination of
-- DebugUtilsMessageTypeFlagBitsEXT values
--
-- messageType must not be 0
[$sel:messageType:DebugUtilsMessengerCreateInfoEXT] :: DebugUtilsMessengerCreateInfoEXT -> DebugUtilsMessageTypeFlagsEXT
-- | pfnUserCallback is the application callback function to call.
--
-- pfnUserCallback must be a valid
-- PFN_vkDebugUtilsMessengerCallbackEXT
--
-- pfnUserCallback must be a valid
-- PFN_vkDebugUtilsMessengerCallbackEXT value
[$sel:pfnUserCallback:DebugUtilsMessengerCreateInfoEXT] :: DebugUtilsMessengerCreateInfoEXT -> PFN_vkDebugUtilsMessengerCallbackEXT
-- | pUserData is user data to be passed to the callback.
[$sel:userData:DebugUtilsMessengerCreateInfoEXT] :: DebugUtilsMessengerCreateInfoEXT -> Ptr ()
-- | VkDebugUtilsMessengerCallbackDataEXT - Structure specifying parameters
-- returned to the callback
--
-- Description
--
-- Note
--
-- This structure should only be considered valid during the lifetime of
-- the triggered callback.
--
-- Since adding queue and command buffer labels behaves like pushing and
-- popping onto a stack, the order of both pQueueLabels and
-- pCmdBufLabels is based on the order the labels were defined.
-- The result is that the first label in either pQueueLabels or
-- pCmdBufLabels will be the first defined (and therefore the
-- oldest) while the last label in each list will be the most recent.
--
-- Note
--
-- pQueueLabels will only be non-NULL if one of the
-- objects in pObjects can be related directly to a defined
-- Queue which has had one or more labels associated with it.
--
-- Likewise, pCmdBufLabels will only be non-NULL if one
-- of the objects in pObjects can be related directly to a
-- defined CommandBuffer which has had one or more labels
-- associated with it. Additionally, while command buffer labels allow
-- for beginning and ending across different command buffers, the debug
-- messaging framework cannot guarantee that labels in
-- pCmdBufLables will contain those defined outside of the
-- associated command buffer. This is partially due to the fact that the
-- association of one command buffer with another may not have been
-- defined at the time the debug message is triggered.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - If pMessageIdName is not NULL,
-- pMessageIdName must be a null-terminated UTF-8
-- string
-- - pMessage must be a null-terminated UTF-8
-- string
-- - If queueLabelCount is not 0,
-- pQueueLabels must be a valid pointer to an array of
-- queueLabelCount valid DebugUtilsLabelEXT
-- structures
-- - If cmdBufLabelCount is not 0,
-- pCmdBufLabels must be a valid pointer to an array of
-- cmdBufLabelCount valid DebugUtilsLabelEXT
-- structures
-- - If objectCount is not 0, pObjects
-- must be a valid pointer to an array of objectCount
-- valid DebugUtilsObjectNameInfoEXT structures
--
--
-- See Also
--
-- DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataFlagsEXT,
-- DebugUtilsObjectNameInfoEXT, StructureType,
-- submitDebugUtilsMessageEXT
data DebugUtilsMessengerCallbackDataEXT
DebugUtilsMessengerCallbackDataEXT :: DebugUtilsMessengerCallbackDataFlagsEXT -> Maybe ByteString -> Int32 -> ByteString -> Vector DebugUtilsLabelEXT -> Vector DebugUtilsLabelEXT -> Vector DebugUtilsObjectNameInfoEXT -> DebugUtilsMessengerCallbackDataEXT
-- | flags is 0 and is reserved for future use.
[$sel:flags:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> DebugUtilsMessengerCallbackDataFlagsEXT
-- | pMessageIdName is a null-terminated string that identifies
-- the particular message ID that is associated with the provided
-- message. If the message corresponds to a validation layer message,
-- then this string may contain the portion of the Vulkan specification
-- that is believed to have been violated.
[$sel:messageIdName:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> Maybe ByteString
-- | messageIdNumber is the ID number of the triggering message.
-- If the message corresponds to a validation layer message, then this
-- number is related to the internal number associated with the message
-- being triggered.
[$sel:messageIdNumber:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> Int32
-- | pMessage is a null-terminated string detailing the trigger
-- conditions.
[$sel:message:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> ByteString
-- | pQueueLabels is NULL or a pointer to an array of
-- DebugUtilsLabelEXT active in the current Queue at the
-- time the callback was triggered. Refer to Queue Labels for more
-- information.
[$sel:queueLabels:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> Vector DebugUtilsLabelEXT
-- | pCmdBufLabels is NULL or a pointer to an array of
-- DebugUtilsLabelEXT active in the current CommandBuffer
-- at the time the callback was triggered. Refer to Command Buffer
-- Labels for more information.
[$sel:cmdBufLabels:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> Vector DebugUtilsLabelEXT
-- | pObjects is a pointer to an array of
-- DebugUtilsObjectNameInfoEXT objects related to the detected
-- issue. The array is roughly in order or importance, but the 0th
-- element is always guaranteed to be the most important object for this
-- message.
[$sel:objects:DebugUtilsMessengerCallbackDataEXT] :: DebugUtilsMessengerCallbackDataEXT -> Vector DebugUtilsObjectNameInfoEXT
-- | VkDebugUtilsMessengerCreateFlagsEXT - Reserved for future use
--
-- Description
--
-- DebugUtilsMessengerCreateFlagsEXT is a bitmask type for setting
-- a mask, but is currently reserved for future use.
--
-- See Also
--
-- DebugUtilsMessengerCreateInfoEXT
newtype DebugUtilsMessengerCreateFlagsEXT
DebugUtilsMessengerCreateFlagsEXT :: Flags -> DebugUtilsMessengerCreateFlagsEXT
-- | VkDebugUtilsMessengerCallbackDataFlagsEXT - Reserved for future use
--
-- Description
--
-- DebugUtilsMessengerCallbackDataFlagsEXT is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- DebugUtilsMessengerCallbackDataEXT
newtype DebugUtilsMessengerCallbackDataFlagsEXT
DebugUtilsMessengerCallbackDataFlagsEXT :: Flags -> DebugUtilsMessengerCallbackDataFlagsEXT
-- | VkDebugUtilsMessageSeverityFlagBitsEXT - Bitmask specifying which
-- severities of events cause a debug messenger callback
--
-- See Also
--
-- DebugUtilsMessageSeverityFlagsEXT,
-- submitDebugUtilsMessageEXT
newtype DebugUtilsMessageSeverityFlagBitsEXT
DebugUtilsMessageSeverityFlagBitsEXT :: Flags -> DebugUtilsMessageSeverityFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT specifies the most
-- verbose output indicating all diagnostic messages from the Vulkan
-- loader, layers, and drivers should be captured.
pattern DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT specifies an
-- informational message such as resource details that may be handy when
-- debugging an application.
pattern DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT specifies use of
-- Vulkan that may expose an app bug. Such cases may not be
-- immediately harmful, such as a fragment shader outputting to a
-- location with no attachment. Other cases may point to behavior
-- that is almost certainly bad when unintended such as using an image
-- whose memory has not been filled. In general if you see a warning but
-- you know that the behavior is intended/desired, then simply ignore the
-- warning.
pattern DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT specifies that the
-- application has violated a valid usage condition of the specification.
pattern DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
type DebugUtilsMessageSeverityFlagsEXT = DebugUtilsMessageSeverityFlagBitsEXT
-- | VkDebugUtilsMessageTypeFlagBitsEXT - Bitmask specifying which types of
-- events cause a debug messenger callback
--
-- See Also
--
-- DebugUtilsMessageTypeFlagsEXT
newtype DebugUtilsMessageTypeFlagBitsEXT
DebugUtilsMessageTypeFlagBitsEXT :: Flags -> DebugUtilsMessageTypeFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT specifies that some
-- general event has occurred. This is typically a non-specification,
-- non-performance event.
pattern DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT :: DebugUtilsMessageTypeFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT specifies that
-- something has occurred during validation against the Vulkan
-- specification that may indicate invalid behavior.
pattern DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT :: DebugUtilsMessageTypeFlagBitsEXT
-- | DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT specifies a
-- potentially non-optimal use of Vulkan, e.g. using
-- cmdClearColorImage when setting
-- AttachmentDescription::loadOp to
-- ATTACHMENT_LOAD_OP_CLEAR would have worked.
pattern DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT :: DebugUtilsMessageTypeFlagBitsEXT
type DebugUtilsMessageTypeFlagsEXT = DebugUtilsMessageTypeFlagBitsEXT
-- | PFN_vkDebugUtilsMessengerCallbackEXT - Application-defined debug
-- messenger callback function
--
-- Description
--
-- The callback must not call
-- destroyDebugUtilsMessengerEXT.
--
-- The callback returns a Bool32, which is interpreted in a
-- layer-specified manner. The application should always return
-- FALSE. The TRUE value is reserved for use in layer
-- development.
--
-- See Also
--
-- DebugUtilsMessengerCreateInfoEXT
type PFN_vkDebugUtilsMessengerCallbackEXT = FunPtr FN_vkDebugUtilsMessengerCallbackEXT
type FN_vkDebugUtilsMessengerCallbackEXT = DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> ("pUserData" ::: Ptr ()) -> IO Bool32
type EXT_DEBUG_UTILS_SPEC_VERSION = 2
pattern EXT_DEBUG_UTILS_SPEC_VERSION :: forall a. Integral a => a
type EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils"
pattern EXT_DEBUG_UTILS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDebugUtilsMessengerEXT - Opaque handle to a debug messenger object
--
-- Description
--
-- The debug messenger will provide detailed feedback on the
-- application’s use of Vulkan when events of interest occur. When an
-- event of interest does occur, the debug messenger will submit a debug
-- message to the debug callback that was provided during its creation.
-- Additionally, the debug messenger is responsible with filtering out
-- debug messages that the callback is not interested in and will only
-- provide desired debug messages.
--
-- See Also
--
-- createDebugUtilsMessengerEXT,
-- destroyDebugUtilsMessengerEXT
newtype DebugUtilsMessengerEXT
DebugUtilsMessengerEXT :: Word64 -> DebugUtilsMessengerEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectNameInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectNameInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsLabelEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsLabelEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageTypeFlagBitsEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessageSeverityFlagBitsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCallbackDataFlagsEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsMessengerCreateFlagsEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsLabelEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsLabelEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsLabelEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectTagInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectNameInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectNameInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_utils.DebugUtilsObjectNameInfoEXT
module Vulkan.Extensions.VK_EXT_debug_report
-- | vkCreateDebugReportCallbackEXT - Create a debug report callback object
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DebugReportCallbackCreateInfoEXT,
-- DebugReportCallbackEXT, Instance
createDebugReportCallbackEXT :: forall io. MonadIO io => Instance -> DebugReportCallbackCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io DebugReportCallbackEXT
-- | A convenience wrapper to make a compatible pair of calls to
-- createDebugReportCallbackEXT and
-- destroyDebugReportCallbackEXT
--
-- To ensure that destroyDebugReportCallbackEXT is always called:
-- pass bracket (or the allocate function from your favourite
-- resource management library) as the first argument. To just extract
-- the pair pass (,) as the first argument.
withDebugReportCallbackEXT :: forall io r. MonadIO io => Instance -> DebugReportCallbackCreateInfoEXT -> Maybe AllocationCallbacks -> (io DebugReportCallbackEXT -> (DebugReportCallbackEXT -> io ()) -> r) -> r
-- | vkDestroyDebugReportCallbackEXT - Destroy a debug report callback
-- object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when callback
-- was created, a compatible set of callbacks must be provided
-- here
--
--
--
-- - If no AllocationCallbacks were provided when
-- callback was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - If callback is not NULL_HANDLE, callback
-- must be a valid DebugReportCallbackEXT handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If callback is a valid handle, it must have been
-- created, allocated, or retrieved from instance
--
--
-- Host Synchronization
--
--
-- - Host access to callback must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, DebugReportCallbackEXT,
-- Instance
destroyDebugReportCallbackEXT :: forall io. MonadIO io => Instance -> DebugReportCallbackEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkDebugReportMessageEXT - Inject a message into a debug stream
--
-- Description
--
-- The call will propagate through the layers and generate callback(s) as
-- indicated by the message’s flags. The parameters are passed on to the
-- callback in addition to the pUserData value that was defined
-- at the time the callback was registered.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - flags must be a valid combination of
-- DebugReportFlagBitsEXT values
-- - flags must not be 0
-- - objectType must be a valid
-- DebugReportObjectTypeEXT value
-- - pLayerPrefix must be a null-terminated UTF-8
-- string
-- - pMessage must be a null-terminated UTF-8
-- string
--
--
-- See Also
--
-- DebugReportFlagsEXT, DebugReportObjectTypeEXT,
-- Instance
debugReportMessageEXT :: forall io. MonadIO io => Instance -> DebugReportFlagsEXT -> DebugReportObjectTypeEXT -> ("object" ::: Word64) -> ("location" ::: Word64) -> ("messageCode" ::: Int32) -> ("layerPrefix" ::: ByteString) -> ("message" ::: ByteString) -> io ()
pattern STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT :: StructureType
-- | VkDebugReportCallbackCreateInfoEXT - Structure specifying parameters
-- of a newly created debug report callback
--
-- Description
--
-- For each DebugReportCallbackEXT that is created the
-- DebugReportCallbackCreateInfoEXT::flags determine when
-- that DebugReportCallbackCreateInfoEXT::pfnCallback is
-- called. When an event happens, the implementation will do a bitwise
-- AND of the event’s DebugReportFlagBitsEXT flags to each
-- DebugReportCallbackEXT object’s flags. For each non-zero result
-- the corresponding callback will be called. The callback will come
-- directly from the component that detected the event, unless some other
-- layer intercepts the calls for its own purposes (filter them in a
-- different way, log to a system error log, etc.).
--
-- An application may receive multiple callbacks if multiple
-- DebugReportCallbackEXT objects were created. A callback will
-- always be executed in the same thread as the originating Vulkan call.
--
-- A callback may be called from multiple threads simultaneously (if the
-- application is making Vulkan calls from multiple threads).
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PFN_vkDebugReportCallbackEXT, DebugReportFlagsEXT,
-- StructureType, createDebugReportCallbackEXT
data DebugReportCallbackCreateInfoEXT
DebugReportCallbackCreateInfoEXT :: DebugReportFlagsEXT -> PFN_vkDebugReportCallbackEXT -> Ptr () -> DebugReportCallbackCreateInfoEXT
-- | flags is a bitmask of DebugReportFlagBitsEXT
-- specifying which event(s) will cause this callback to be called.
--
-- flags must be a valid combination of
-- DebugReportFlagBitsEXT values
[$sel:flags:DebugReportCallbackCreateInfoEXT] :: DebugReportCallbackCreateInfoEXT -> DebugReportFlagsEXT
-- | pfnCallback is the application callback function to call.
--
-- pfnCallback must be a valid
-- PFN_vkDebugReportCallbackEXT value
[$sel:pfnCallback:DebugReportCallbackCreateInfoEXT] :: DebugReportCallbackCreateInfoEXT -> PFN_vkDebugReportCallbackEXT
-- | pUserData is user data to be passed to the callback.
[$sel:userData:DebugReportCallbackCreateInfoEXT] :: DebugReportCallbackCreateInfoEXT -> Ptr ()
-- | VkDebugReportFlagBitsEXT - Bitmask specifying events which cause a
-- debug report callback
--
-- See Also
--
-- DebugReportFlagsEXT
newtype DebugReportFlagBitsEXT
DebugReportFlagBitsEXT :: Flags -> DebugReportFlagBitsEXT
-- | DEBUG_REPORT_INFORMATION_BIT_EXT specifies an informational
-- message such as resource details that may be handy when debugging an
-- application.
pattern DEBUG_REPORT_INFORMATION_BIT_EXT :: DebugReportFlagBitsEXT
-- | DEBUG_REPORT_WARNING_BIT_EXT specifies use of Vulkan that
-- may expose an app bug. Such cases may not be immediately
-- harmful, such as a fragment shader outputting to a location with no
-- attachment. Other cases may point to behavior that is almost
-- certainly bad when unintended such as using an image whose memory has
-- not been filled. In general if you see a warning but you know that the
-- behavior is intended/desired, then simply ignore the warning.
pattern DEBUG_REPORT_WARNING_BIT_EXT :: DebugReportFlagBitsEXT
-- | DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT specifies a
-- potentially non-optimal use of Vulkan, e.g. using
-- cmdClearColorImage when setting
-- AttachmentDescription::loadOp to
-- ATTACHMENT_LOAD_OP_CLEAR would have worked.
pattern DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT :: DebugReportFlagBitsEXT
-- | DEBUG_REPORT_ERROR_BIT_EXT specifies that the application has
-- violated a valid usage condition of the specification.
pattern DEBUG_REPORT_ERROR_BIT_EXT :: DebugReportFlagBitsEXT
-- | DEBUG_REPORT_DEBUG_BIT_EXT specifies diagnostic information
-- from the implementation and layers.
pattern DEBUG_REPORT_DEBUG_BIT_EXT :: DebugReportFlagBitsEXT
type DebugReportFlagsEXT = DebugReportFlagBitsEXT
-- | VkDebugReportObjectTypeEXT - Specify the type of an object handle
--
-- Description
--
-- '
--
-- TODO: table
--
-- DebugReportObjectTypeEXT and Vulkan Handle Relationship
--
-- Note
--
-- The primary expected use of ERROR_VALIDATION_FAILED_EXT is for
-- validation layer testing. It is not expected that an application would
-- see this error code during normal use of the validation layers.
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT, debugReportMessageEXT
newtype DebugReportObjectTypeEXT
DebugReportObjectTypeEXT :: Int32 -> DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DebugReportObjectTypeEXT
-- | PFN_vkDebugReportCallbackEXT - Application-defined debug report
-- callback function
--
-- Description
--
-- The callback must not call
-- destroyDebugReportCallbackEXT.
--
-- The callback returns a Bool32, which is interpreted in a
-- layer-specified manner. The application should always return
-- FALSE. The TRUE value is reserved for use in layer
-- development.
--
-- object must be a Vulkan object or NULL_HANDLE.
-- If objectType is not
-- DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT and object is not
-- NULL_HANDLE, object must be a Vulkan object of
-- the corresponding type associated with objectType as defined
-- in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#debug-report-object-types.
--
-- See Also
--
-- DebugReportCallbackCreateInfoEXT
type PFN_vkDebugReportCallbackEXT = FunPtr FN_vkDebugReportCallbackEXT
type FN_vkDebugReportCallbackEXT = DebugReportFlagsEXT -> DebugReportObjectTypeEXT -> ("object" ::: Word64) -> ("location" ::: CSize) -> ("messageCode" ::: Int32) -> ("pLayerPrefix" ::: Ptr CChar) -> ("pMessage" ::: Ptr CChar) -> ("pUserData" ::: Ptr ()) -> IO Bool32
type EXT_DEBUG_REPORT_SPEC_VERSION = 9
pattern EXT_DEBUG_REPORT_SPEC_VERSION :: forall a. Integral a => a
type EXT_DEBUG_REPORT_EXTENSION_NAME = "VK_EXT_debug_report"
pattern EXT_DEBUG_REPORT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDebugReportCallbackEXT - Opaque handle to a debug report callback
-- object
--
-- See Also
--
-- createDebugReportCallbackEXT,
-- destroyDebugReportCallbackEXT
newtype DebugReportCallbackEXT
DebugReportCallbackEXT :: Word64 -> DebugReportCallbackEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_report.DebugReportObjectTypeEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_report.DebugReportObjectTypeEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_debug_report.DebugReportObjectTypeEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_debug_report.DebugReportObjectTypeEXT
instance Data.Bits.Bits Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
instance GHC.Classes.Ord Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_report.DebugReportCallbackCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_report.DebugReportCallbackCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_report.DebugReportCallbackCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_report.DebugReportCallbackCreateInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_report.DebugReportCallbackCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_report.DebugReportCallbackCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_report.DebugReportObjectTypeEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_debug_report.DebugReportObjectTypeEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
instance GHC.Read.Read Vulkan.Extensions.VK_EXT_debug_report.DebugReportFlagBitsEXT
module Vulkan.Extensions.VK_EXT_debug_marker
-- | vkDebugMarkerSetObjectNameEXT - Give a user-friendly name to an object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to pNameInfo->object must be
-- externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT, Device
debugMarkerSetObjectNameEXT :: forall io. MonadIO io => Device -> DebugMarkerObjectNameInfoEXT -> io ()
-- | vkDebugMarkerSetObjectTagEXT - Attach arbitrary data to an object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to pTagInfo->object must be
-- externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DebugMarkerObjectTagInfoEXT, Device
debugMarkerSetObjectTagEXT :: forall io. MonadIO io => Device -> DebugMarkerObjectTagInfoEXT -> io ()
-- | vkCmdDebugMarkerBeginEXT - Open a command buffer marker region
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, DebugMarkerMarkerInfoEXT
cmdDebugMarkerBeginEXT :: forall io. MonadIO io => CommandBuffer -> DebugMarkerMarkerInfoEXT -> io ()
-- | vkCmdDebugMarkerEndEXT - Close a command buffer marker region
--
-- Description
--
-- An application may open a marker region in one command buffer
-- and close it in another, or otherwise split marker regions across
-- multiple command buffers or multiple queue submissions. When viewed
-- from the linear series of submissions to a single queue, the calls to
-- cmdDebugMarkerBeginEXT and cmdDebugMarkerEndEXT
-- must be matched and balanced.
--
-- Valid Usage
--
--
--
--
-- - If commandBuffer is a secondary command buffer, there
-- must be an outstanding cmdDebugMarkerBeginEXT command
-- recorded to commandBuffer that has not previously been ended
-- by a call to cmdDebugMarkerEndEXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdDebugMarkerEndEXT :: forall io. MonadIO io => CommandBuffer -> io ()
-- | vkCmdDebugMarkerInsertEXT - Insert a marker label into a command
-- buffer
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, DebugMarkerMarkerInfoEXT
cmdDebugMarkerInsertEXT :: forall io. MonadIO io => CommandBuffer -> DebugMarkerMarkerInfoEXT -> io ()
-- | VkDebugMarkerObjectNameInfoEXT - Specify parameters of a name to give
-- to an object
--
-- Description
--
-- Applications may change the name associated with an object
-- simply by calling debugMarkerSetObjectNameEXT again with a new
-- string. To remove a previously set name, pObjectName
-- should be set to an empty string.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DebugReportObjectTypeEXT, StructureType,
-- debugMarkerSetObjectNameEXT
data DebugMarkerObjectNameInfoEXT
DebugMarkerObjectNameInfoEXT :: DebugReportObjectTypeEXT -> Word64 -> ByteString -> DebugMarkerObjectNameInfoEXT
-- | objectType is a DebugReportObjectTypeEXT specifying
-- the type of the object to be named.
--
-- objectType must not be
-- DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT
--
-- objectType must be a valid
-- DebugReportObjectTypeEXT value
[$sel:objectType:DebugMarkerObjectNameInfoEXT] :: DebugMarkerObjectNameInfoEXT -> DebugReportObjectTypeEXT
-- | object is the object to be named.
--
-- object must not be NULL_HANDLE
--
-- object must be a Vulkan object of the type associated
-- with objectType as defined in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#debug-report-object-types
[$sel:object:DebugMarkerObjectNameInfoEXT] :: DebugMarkerObjectNameInfoEXT -> Word64
-- | pObjectName is a null-terminated UTF-8 string specifying the
-- name to apply to object.
--
-- pObjectName must be a null-terminated UTF-8 string
[$sel:objectName:DebugMarkerObjectNameInfoEXT] :: DebugMarkerObjectNameInfoEXT -> ByteString
-- | VkDebugMarkerObjectTagInfoEXT - Specify parameters of a tag to attach
-- to an object
--
-- Description
--
-- The tagName parameter gives a name or identifier to the type
-- of data being tagged. This can be used by debugging layers to easily
-- filter for only data that can be used by that implementation.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DebugReportObjectTypeEXT, StructureType,
-- debugMarkerSetObjectTagEXT
data DebugMarkerObjectTagInfoEXT
DebugMarkerObjectTagInfoEXT :: DebugReportObjectTypeEXT -> Word64 -> Word64 -> Word64 -> Ptr () -> DebugMarkerObjectTagInfoEXT
-- | objectType is a DebugReportObjectTypeEXT specifying
-- the type of the object to be named.
--
-- objectType must not be
-- DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT
--
-- objectType must be a valid
-- DebugReportObjectTypeEXT value
[$sel:objectType:DebugMarkerObjectTagInfoEXT] :: DebugMarkerObjectTagInfoEXT -> DebugReportObjectTypeEXT
-- | object is the object to be tagged.
--
-- object must not be NULL_HANDLE
--
-- object must be a Vulkan object of the type associated
-- with objectType as defined in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#debug-report-object-types
[$sel:object:DebugMarkerObjectTagInfoEXT] :: DebugMarkerObjectTagInfoEXT -> Word64
-- | tagName is a numerical identifier of the tag.
[$sel:tagName:DebugMarkerObjectTagInfoEXT] :: DebugMarkerObjectTagInfoEXT -> Word64
-- | tagSize is the number of bytes of data to attach to the
-- object.
--
-- tagSize must be greater than 0
[$sel:tagSize:DebugMarkerObjectTagInfoEXT] :: DebugMarkerObjectTagInfoEXT -> Word64
-- | pTag is a pointer to an array of tagSize bytes
-- containing the data to be associated with the object.
--
-- pTag must be a valid pointer to an array of
-- tagSize bytes
[$sel:tag:DebugMarkerObjectTagInfoEXT] :: DebugMarkerObjectTagInfoEXT -> Ptr ()
-- | VkDebugMarkerMarkerInfoEXT - Specify parameters of a command buffer
-- marker region
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, cmdDebugMarkerBeginEXT,
-- cmdDebugMarkerInsertEXT
data DebugMarkerMarkerInfoEXT
DebugMarkerMarkerInfoEXT :: ByteString -> (Float, Float, Float, Float) -> DebugMarkerMarkerInfoEXT
-- | pMarkerName is a pointer to a null-terminated UTF-8 string
-- containing the name of the marker.
--
-- pMarkerName must be a null-terminated UTF-8 string
[$sel:markerName:DebugMarkerMarkerInfoEXT] :: DebugMarkerMarkerInfoEXT -> ByteString
-- | color is an optional RGBA color value that can be
-- associated with the marker. A particular implementation may
-- choose to ignore this color value. The values contain RGBA values in
-- order, in the range 0.0 to 1.0. If all elements in color are
-- set to 0.0 then it is ignored.
[$sel:color:DebugMarkerMarkerInfoEXT] :: DebugMarkerMarkerInfoEXT -> (Float, Float, Float, Float)
type EXT_DEBUG_MARKER_SPEC_VERSION = 4
pattern EXT_DEBUG_MARKER_SPEC_VERSION :: forall a. Integral a => a
type EXT_DEBUG_MARKER_EXTENSION_NAME = "VK_EXT_debug_marker"
pattern EXT_DEBUG_MARKER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDebugReportObjectTypeEXT - Specify the type of an object handle
--
-- Description
--
-- '
--
-- TODO: table
--
-- DebugReportObjectTypeEXT and Vulkan Handle Relationship
--
-- Note
--
-- The primary expected use of ERROR_VALIDATION_FAILED_EXT is for
-- validation layer testing. It is not expected that an application would
-- see this error code during normal use of the validation layers.
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT, debugReportMessageEXT
newtype DebugReportObjectTypeEXT
DebugReportObjectTypeEXT :: Int32 -> DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DebugReportObjectTypeEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectNameInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectNameInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectTagInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectTagInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerMarkerInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerMarkerInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerMarkerInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerMarkerInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerMarkerInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectTagInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectTagInfoEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectTagInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectTagInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectNameInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectNameInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_debug_marker.DebugMarkerObjectNameInfoEXT
module Vulkan.Extensions.VK_EXT_acquire_xlib_display
-- | vkAcquireXlibDisplayEXT - Acquire access to a VkDisplayKHR using Xlib
--
-- Description
--
-- All permissions necessary to control the display are granted to the
-- Vulkan instance associated with physicalDevice until the
-- display is released or the X11 connection specified by dpy is
-- terminated. Permission to access the display may be temporarily
-- revoked during periods when the X11 server from which control was
-- acquired itself loses access to display. During such periods,
-- operations which require access to the display must fail with
-- an approriate error code. If the X11 server associated with
-- dpy does not own display, or if permission to access
-- it has already been acquired by another entity, the call must
-- return the error code ERROR_INITIALIZATION_FAILED.
--
-- Note
--
-- One example of when an X11 server loses access to a display is when it
-- loses ownership of its virtual terminal.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DisplayKHR, PhysicalDevice
acquireXlibDisplayEXT :: forall io. MonadIO io => PhysicalDevice -> ("dpy" ::: Ptr Display) -> DisplayKHR -> io ()
-- | vkGetRandROutputDisplayEXT - Query the VkDisplayKHR corresponding to
-- an X11 RandR Output
--
-- Description
--
-- If there is no DisplayKHR corresponding to rrOutput on
-- physicalDevice, NULL_HANDLE must be returned in
-- pDisplay.
--
-- Return Codes
--
--
--
-- See Also
--
-- DisplayKHR, PhysicalDevice
getRandROutputDisplayEXT :: forall io. MonadIO io => PhysicalDevice -> ("dpy" ::: Ptr Display) -> RROutput -> io DisplayKHR
type EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION = 1
pattern EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION :: forall a. Integral a => a
type EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME = "VK_EXT_acquire_xlib_display"
pattern EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type RROutput = Word64
-- | VkDisplayKHR - Opaque handle to a display object
--
-- See Also
--
-- DisplayPlanePropertiesKHR, DisplayPropertiesKHR,
-- acquireXlibDisplayEXT, createDisplayModeKHR,
-- displayPowerControlEXT, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getRandROutputDisplayEXT, registerDisplayEventEXT,
-- releaseDisplayEXT
newtype DisplayKHR
DisplayKHR :: Word64 -> DisplayKHR
type Display = Ptr ()
module Vulkan.Extensions.VK_AMD_display_native_hdr
-- | vkSetLocalDimmingAMD - Set Local Dimming
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - swapChain must be a valid SwapchainKHR
-- handle
-- - Both of device, and swapChain must have
-- been created, allocated, or retrieved from the same
-- Instance
--
--
-- Valid Usage
--
--
--
-- See Also
--
-- Bool32, Device, SwapchainKHR
setLocalDimmingAMD :: forall io. MonadIO io => Device -> SwapchainKHR -> ("localDimmingEnable" ::: Bool) -> io ()
-- | VkDisplayNativeHdrSurfaceCapabilitiesAMD - Structure describing
-- display native HDR specific capabilities of a surface
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data DisplayNativeHdrSurfaceCapabilitiesAMD
DisplayNativeHdrSurfaceCapabilitiesAMD :: Bool -> DisplayNativeHdrSurfaceCapabilitiesAMD
-- | localDimmingSupport specifies whether the surface supports
-- local dimming. If this is TRUE,
-- SwapchainDisplayNativeHdrCreateInfoAMD can be used to
-- explicitly enable or disable local dimming for the surface. Local
-- dimming may also be overriden by setLocalDimmingAMD during the
-- lifetime of the swapchain.
[$sel:localDimmingSupport:DisplayNativeHdrSurfaceCapabilitiesAMD] :: DisplayNativeHdrSurfaceCapabilitiesAMD -> Bool
-- | VkSwapchainDisplayNativeHdrCreateInfoAMD - Structure specifying
-- display native HDR parameters of a newly created swapchain object
--
-- Description
--
-- If the pNext chain of SwapchainCreateInfoKHR does not
-- include this structure, the default value for
-- localDimmingEnable is TRUE, meaning local dimming is
-- initially enabled for the swapchain.
--
-- Valid Usage (Implicit)
--
--
--
-- Valid Usage
--
--
--
-- See Also
--
-- Bool32, StructureType
data SwapchainDisplayNativeHdrCreateInfoAMD
SwapchainDisplayNativeHdrCreateInfoAMD :: Bool -> SwapchainDisplayNativeHdrCreateInfoAMD
-- | localDimmingEnable specifies whether local dimming is enabled
-- for the swapchain.
[$sel:localDimmingEnable:SwapchainDisplayNativeHdrCreateInfoAMD] :: SwapchainDisplayNativeHdrCreateInfoAMD -> Bool
type AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION = 1
pattern AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION :: forall a. Integral a => a
type AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME = "VK_AMD_display_native_hdr"
pattern AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkSwapchainKHR - Opaque handle to a swapchain object
--
-- Description
--
-- A swapchain is an abstraction for an array of presentable images that
-- are associated with a surface. The presentable images are represented
-- by Image objects created by the platform. One image (which
-- can be an array image for multiview/stereoscopic-3D surfaces)
-- is displayed at a time, but multiple images can be queued for
-- presentation. An application renders to the image, and then queues the
-- image for presentation to the surface.
--
-- A native window cannot be associated with more than one
-- non-retired swapchain at a time. Further, swapchains cannot be
-- created for native windows that have a non-Vulkan graphics API surface
-- associated with them.
--
-- Note
--
-- The presentation engine is an abstraction for the platform’s
-- compositor or display engine.
--
-- The presentation engine may be synchronous or asynchronous with
-- respect to the application and/or logical device.
--
-- Some implementations may use the device’s graphics queue or
-- dedicated presentation hardware to perform presentation.
--
-- The presentable images of a swapchain are owned by the presentation
-- engine. An application can acquire use of a presentable image
-- from the presentation engine. Use of a presentable image must
-- occur only after the image is returned by acquireNextImageKHR,
-- and before it is presented by queuePresentKHR. This includes
-- transitioning the image layout and rendering commands.
--
-- An application can acquire use of a presentable image with
-- acquireNextImageKHR. After acquiring a presentable image and
-- before modifying it, the application must use a synchronization
-- primitive to ensure that the presentation engine has finished reading
-- from the image. The application can then transition the image’s
-- layout, queue rendering commands to it, etc. Finally, the application
-- presents the image with queuePresentKHR, which releases the
-- acquisition of the image.
--
-- The presentation engine controls the order in which presentable images
-- are acquired for use by the application.
--
-- Note
--
-- This allows the platform to handle situations which require
-- out-of-order return of images after presentation. At the same time, it
-- allows the application to generate command buffers referencing all of
-- the images in the swapchain at initialization time, rather than in its
-- main loop.
--
-- See Also
--
-- AcquireNextImageInfoKHR,
-- BindImageMemorySwapchainInfoKHR,
-- ImageSwapchainCreateInfoKHR, PresentInfoKHR,
-- SwapchainCreateInfoKHR,
-- acquireFullScreenExclusiveModeEXT, acquireNextImageKHR,
-- createSharedSwapchainsKHR, createSwapchainKHR,
-- destroySwapchainKHR, getPastPresentationTimingGOOGLE,
-- getRefreshCycleDurationGOOGLE, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- releaseFullScreenExclusiveModeEXT, setHdrMetadataEXT,
-- setLocalDimmingAMD
newtype SwapchainKHR
SwapchainKHR :: Word64 -> SwapchainKHR
-- | VkColorSpaceKHR - supported color space of the presentation engine
--
-- Description
--
-- Note
--
-- In the initial release of the VK_KHR_surface and
-- VK_KHR_swapchain extensions, the token
-- VK_COLORSPACE_SRGB_NONLINEAR_KHR was used. Starting in the
-- 2016-05-13 updates to the extension branches, matching release 1.0.13
-- of the core API specification, COLOR_SPACE_SRGB_NONLINEAR_KHR
-- is used instead for consistency with Vulkan naming rules. The older
-- enum is still available for backwards compatibility.
--
-- Note
--
-- In older versions of this extension
-- COLOR_SPACE_DISPLAY_P3_LINEAR_EXT was misnamed
-- COLOR_SPACE_DCI_P3_LINEAR_EXT. This has been updated to
-- indicate that it uses RGB color encoding, not XYZ. The old name is
-- deprecated but is maintained for backwards compatibility.
--
-- The color components of non-linear color space swap chain images
-- must have had the appropriate transfer function applied. The
-- color space selected for the swap chain image will not affect the
-- processing of data written into the image by the implementation.
-- Vulkan requires that all implementations support the sRGB transfer
-- function by use of an SRGB pixel format. Other transfer functions,
-- such as SMPTE 170M or SMPTE2084, can be performed by the
-- application shader. This extension defines enums for
-- ColorSpaceKHR that correspond to the following color spaces:
--
-- TODO: table
--
-- Color Spaces and Attributes
--
-- The transfer functions are described in the “Transfer Functions”
-- chapter of the Khronos Data Format Specification.
--
-- Except Display-P3 OETF, which is:
--
-- [begin{aligned} E & = begin{cases} 1.055 times L^{1 over 2.4} -
-- 0.055 & text{for} 0.0030186 leq L leq 1 -- 12.92 times L &
-- text{for} 0 leq L < 0.0030186
newtype ColorSpaceKHR
ColorSpaceKHR :: Int32 -> ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_LINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_SRGB_NONLINEAR_KHR specifies support for the sRGB
-- color space.
pattern COLOR_SPACE_SRGB_NONLINEAR_KHR :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_NATIVE_AMD specifies support for the
-- display’s native color space. This matches the color space
-- expectations of AMD’s FreeSync2 standard, for displays supporting it.
pattern COLOR_SPACE_DISPLAY_NATIVE_AMD :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT specifies support for
-- the extended sRGB color space to be displayed using an sRGB EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_PASS_THROUGH_EXT specifies that color components
-- are used “as is”. This is intended to allow applications to supply
-- data for color spaces not described here.
pattern COLOR_SPACE_PASS_THROUGH_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_NONLINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using the Gamma 2.2 EOTF.
pattern COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_ADOBERGB_LINEAR_EXT specifies support for the
-- AdobeRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_ADOBERGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_HLG_EXT specifies support for the HDR10
-- (BT2020 color space) to be displayed using the Hybrid Log Gamma (HLG)
-- EOTF.
pattern COLOR_SPACE_HDR10_HLG_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DOLBYVISION_EXT specifies support for the Dolby
-- Vision (BT2020 color space), proprietary encoding, to be displayed
-- using the SMPTE ST2084 EOTF.
pattern COLOR_SPACE_DOLBYVISION_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_HDR10_ST2084_EXT specifies support for the HDR10
-- (BT2020 color) space to be displayed using the SMPTE ST2084 Perceptual
-- Quantizer (PQ) EOTF.
pattern COLOR_SPACE_HDR10_ST2084_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT2020_LINEAR_EXT specifies support for the BT2020
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT2020_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_NONLINEAR_EXT specifies support for the BT709
-- color space to be displayed using the SMPTE 170M EOTF.
pattern COLOR_SPACE_BT709_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_BT709_LINEAR_EXT specifies support for the BT709
-- color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_BT709_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DCI_P3_NONLINEAR_EXT specifies support for the
-- DCI-P3 color space to be displayed using the DCI-P3 EOTF. Note that
-- values in such an image are interpreted as XYZ encoded color data by
-- the presentation engine.
pattern COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT specifies support for the
-- extended sRGB color space to be displayed using a linear EOTF.
pattern COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: ColorSpaceKHR
-- | COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT specifies support for the
-- Display-P3 color space to be displayed using an sRGB-like EOTF
-- (defined below).
pattern COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: ColorSpaceKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance GHC.Classes.Eq Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
instance GHC.Generics.Generic Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance GHC.Show.Show Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_display_native_hdr.SwapchainDisplayNativeHdrCreateInfoAMD
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
instance Foreign.Storable.Storable Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_AMD_display_native_hdr.DisplayNativeHdrSurfaceCapabilitiesAMD
module Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template
-- | vkCreateDescriptorUpdateTemplate - Create a new descriptor update
-- template
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DescriptorUpdateTemplate,
-- DescriptorUpdateTemplateCreateInfo, Device
createDescriptorUpdateTemplate :: forall io. MonadIO io => Device -> DescriptorUpdateTemplateCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io DescriptorUpdateTemplate
-- | A convenience wrapper to make a compatible pair of calls to
-- createDescriptorUpdateTemplate and
-- destroyDescriptorUpdateTemplate
--
-- To ensure that destroyDescriptorUpdateTemplate is always
-- called: pass bracket (or the allocate function from your
-- favourite resource management library) as the first argument. To just
-- extract the pair pass (,) as the first argument.
withDescriptorUpdateTemplate :: forall io r. MonadIO io => Device -> DescriptorUpdateTemplateCreateInfo -> Maybe AllocationCallbacks -> (io DescriptorUpdateTemplate -> (DescriptorUpdateTemplate -> io ()) -> r) -> r
-- | vkDestroyDescriptorUpdateTemplate - Destroy a descriptor update
-- template object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- descriptorSetLayout was created, a compatible set of
-- callbacks must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- descriptorSetLayout was created, pAllocator
-- must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If descriptorUpdateTemplate is not NULL_HANDLE,
-- descriptorUpdateTemplate must be a valid
-- DescriptorUpdateTemplate handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If descriptorUpdateTemplate is a valid handle, it
-- must have been created, allocated, or retrieved from
-- device
--
--
-- Host Synchronization
--
--
-- - Host access to descriptorUpdateTemplate must be
-- externally synchronized
--
--
-- See Also
--
-- AllocationCallbacks, DescriptorUpdateTemplate,
-- Device
destroyDescriptorUpdateTemplate :: forall io. MonadIO io => Device -> DescriptorUpdateTemplate -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkUpdateDescriptorSetWithTemplate - Update the contents of a
-- descriptor set object using an update template
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - descriptorSet must be a valid DescriptorSet
-- handle
-- - descriptorUpdateTemplate must be a valid
-- DescriptorUpdateTemplate handle
-- - descriptorUpdateTemplate must have been created,
-- allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to descriptorSet must be externally
-- synchronized
--
--
-- API example.
--
--
-- struct AppBufferView {
-- VkBufferView bufferView;
-- uint32_t applicationRelatedInformation;
-- };
--
-- struct AppDataStructure
-- {
-- VkDescriptorImageInfo imageInfo; // a single image info
-- VkDescriptorBufferInfo bufferInfoArray[3]; // 3 buffer infos in an array
-- AppBufferView bufferView[2]; // An application defined structure containing a bufferView
-- // ... some more application related data
-- };
--
-- const VkDescriptorUpdateTemplateEntry descriptorUpdateTemplateEntries[] =
-- {
-- // binding to a single image descriptor
-- {
-- 0, // binding
-- 0, // dstArrayElement
-- 1, // descriptorCount
-- VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, // descriptorType
-- offsetof(AppDataStructure, imageInfo), // offset
-- 0 // stride is not required if descriptorCount is 1
-- },
--
-- // binding to an array of buffer descriptors
-- {
-- 1, // binding
-- 0, // dstArrayElement
-- 3, // descriptorCount
-- VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, // descriptorType
-- offsetof(AppDataStructure, bufferInfoArray), // offset
-- sizeof(VkDescriptorBufferInfo) // stride, descriptor buffer infos are compact
-- },
--
-- // binding to an array of buffer views
-- {
-- 2, // binding
-- 0, // dstArrayElement
-- 2, // descriptorCount
-- VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, // descriptorType
-- offsetof(AppDataStructure, bufferView) +
-- offsetof(AppBufferView, bufferView), // offset
-- sizeof(AppBufferView) // stride, bufferViews do not have to be compact
-- },
-- };
--
-- // create a descriptor update template for descriptor set updates
-- const VkDescriptorUpdateTemplateCreateInfo createInfo =
-- {
-- VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, // sType
-- NULL, // pNext
-- 0, // flags
-- 3, // descriptorUpdateEntryCount
-- descriptorUpdateTemplateEntries, // pDescriptorUpdateEntries
-- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET, // templateType
-- myLayout, // descriptorSetLayout
-- 0, // pipelineBindPoint, ignored by given templateType
-- 0, // pipelineLayout, ignored by given templateType
-- 0, // set, ignored by given templateType
-- };
--
-- VkDescriptorUpdateTemplate myDescriptorUpdateTemplate;
-- myResult = vkCreateDescriptorUpdateTemplate(
-- myDevice,
-- &createInfo,
-- NULL,
-- &myDescriptorUpdateTemplate);
-- }
--
--
-- AppDataStructure appData;
--
-- // fill appData here or cache it in your engine
-- vkUpdateDescriptorSetWithTemplate(myDevice, myDescriptorSet, myDescriptorUpdateTemplate, &appData);
--
--
-- See Also
--
-- DescriptorSet, DescriptorUpdateTemplate, Device
updateDescriptorSetWithTemplate :: forall io. MonadIO io => Device -> DescriptorSet -> DescriptorUpdateTemplate -> ("data" ::: Ptr ()) -> io ()
-- | VkDescriptorUpdateTemplateEntry - Describes a single descriptor update
-- of the descriptor update template
--
-- Valid Usage
--
--
-- - dstBinding must be a valid binding in the
-- descriptor set layout implicitly specified when using a descriptor
-- update template to update descriptors
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- DescriptorType, DescriptorUpdateTemplateCreateInfo
data DescriptorUpdateTemplateEntry
DescriptorUpdateTemplateEntry :: Word32 -> Word32 -> Word32 -> DescriptorType -> Word64 -> Word64 -> DescriptorUpdateTemplateEntry
-- | dstBinding is the descriptor binding to update when using
-- this descriptor update template.
[$sel:dstBinding:DescriptorUpdateTemplateEntry] :: DescriptorUpdateTemplateEntry -> Word32
-- | dstArrayElement is the starting element in the array
-- belonging to dstBinding. If the descriptor binding identified
-- by srcBinding has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- dstArrayElement specifies the starting byte offset to update.
[$sel:dstArrayElement:DescriptorUpdateTemplateEntry] :: DescriptorUpdateTemplateEntry -> Word32
-- | descriptorCount is the number of descriptors to update. If
-- descriptorCount is greater than the number of remaining array
-- elements in the destination binding, those affect consecutive bindings
-- in a manner similar to WriteDescriptorSet above. If the
-- descriptor binding identified by dstBinding has a descriptor
-- type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- descriptorCount specifies the number of bytes to update and
-- the remaining array elements in the destination binding refer to the
-- remaining number of bytes in it.
[$sel:descriptorCount:DescriptorUpdateTemplateEntry] :: DescriptorUpdateTemplateEntry -> Word32
-- | descriptorType is a DescriptorType specifying the type
-- of the descriptor.
[$sel:descriptorType:DescriptorUpdateTemplateEntry] :: DescriptorUpdateTemplateEntry -> DescriptorType
-- | offset is the offset in bytes of the first binding in the raw
-- data structure.
[$sel:offset:DescriptorUpdateTemplateEntry] :: DescriptorUpdateTemplateEntry -> Word64
-- | stride is the stride in bytes between two consecutive array
-- elements of the descriptor update informations in the raw data
-- structure. The actual pointer ptr for each array element j of update
-- entry i is computed using the following formula:
--
--
-- const char *ptr = (const char *)pData + pDescriptorUpdateEntries[i].offset + j * pDescriptorUpdateEntries[i].stride
--
--
-- The stride is useful in case the bindings are stored in structs along
-- with other data. If descriptorType is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then the value of
-- stride is ignored and the stride is assumed to be 1,
-- i.e. the descriptor update information for them is always specified as
-- a contiguous range.
[$sel:stride:DescriptorUpdateTemplateEntry] :: DescriptorUpdateTemplateEntry -> Word64
-- | VkDescriptorUpdateTemplateCreateInfo - Structure specifying parameters
-- of a newly created descriptor update template
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - pDescriptorUpdateEntries must be a valid pointer
-- to an array of descriptorUpdateEntryCount valid
-- DescriptorUpdateTemplateEntry structures
-- - templateType must be a valid
-- DescriptorUpdateTemplateType value
-- - descriptorUpdateEntryCount must be greater than
-- 0
-- - Both of descriptorSetLayout, and pipelineLayout
-- that are valid handles of non-ignored parameters must have been
-- created, allocated, or retrieved from the same Device
--
--
-- See Also
--
-- DescriptorSetLayout,
-- DescriptorUpdateTemplateCreateFlags,
-- DescriptorUpdateTemplateEntry,
-- DescriptorUpdateTemplateType, PipelineBindPoint,
-- PipelineLayout, StructureType,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR
data DescriptorUpdateTemplateCreateInfo
DescriptorUpdateTemplateCreateInfo :: DescriptorUpdateTemplateCreateFlags -> Vector DescriptorUpdateTemplateEntry -> DescriptorUpdateTemplateType -> DescriptorSetLayout -> PipelineBindPoint -> PipelineLayout -> Word32 -> DescriptorUpdateTemplateCreateInfo
-- | flags is reserved for future use.
[$sel:flags:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> DescriptorUpdateTemplateCreateFlags
-- | pDescriptorUpdateEntries is a pointer to an array of
-- DescriptorUpdateTemplateEntry structures describing the
-- descriptors to be updated by the descriptor update template.
[$sel:descriptorUpdateEntries:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> Vector DescriptorUpdateTemplateEntry
-- | templateType Specifies the type of the descriptor update
-- template. If set to
-- DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET it can
-- only be used to update descriptor sets with a fixed
-- descriptorSetLayout. If set to
-- DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR it
-- can only be used to push descriptor sets using the provided
-- pipelineBindPoint, pipelineLayout, and set
-- number.
[$sel:templateType:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> DescriptorUpdateTemplateType
-- | descriptorSetLayout is the descriptor set layout the
-- parameter update template will be used with. All descriptor sets which
-- are going to be updated through the newly created descriptor update
-- template must be created with this layout.
-- descriptorSetLayout is the descriptor set layout used to
-- build the descriptor update template. All descriptor sets which are
-- going to be updated through the newly created descriptor update
-- template must be created with a layout that matches (is the
-- same as, or defined identically to) this layout. This parameter is
-- ignored if templateType is not
-- DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET.
[$sel:descriptorSetLayout:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> DescriptorSetLayout
-- | pipelineBindPoint is a PipelineBindPoint indicating
-- whether the descriptors will be used by graphics pipelines or compute
-- pipelines. This parameter is ignored if templateType is not
-- DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
[$sel:pipelineBindPoint:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> PipelineBindPoint
-- | pipelineLayout is a PipelineLayout object used to
-- program the bindings. This parameter is ignored if
-- templateType is not
-- DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
[$sel:pipelineLayout:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> PipelineLayout
-- | set is the set number of the descriptor set in the pipeline
-- layout that will be updated. This parameter is ignored if
-- templateType is not
-- DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR
[$sel:set:DescriptorUpdateTemplateCreateInfo] :: DescriptorUpdateTemplateCreateInfo -> Word32
-- | VkDescriptorUpdateTemplate - Opaque handle to a descriptor update
-- template
--
-- See Also
--
-- cmdPushDescriptorSetWithTemplateKHR,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR,
-- updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorUpdateTemplate
DescriptorUpdateTemplate :: Word64 -> DescriptorUpdateTemplate
-- | VkDescriptorUpdateTemplateCreateFlags - Reserved for future use
--
-- Description
--
-- DescriptorUpdateTemplateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- DescriptorUpdateTemplateCreateInfo
newtype DescriptorUpdateTemplateCreateFlags
DescriptorUpdateTemplateCreateFlags :: Flags -> DescriptorUpdateTemplateCreateFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkDescriptorUpdateTemplateType - Indicates the valid usage of the
-- descriptor update template
--
-- See Also
--
-- DescriptorUpdateTemplateCreateInfo
newtype DescriptorUpdateTemplateType
DescriptorUpdateTemplateType :: Int32 -> DescriptorUpdateTemplateType
-- | DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET specifies that
-- the descriptor update template will be used for descriptor set updates
-- only.
pattern DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET :: DescriptorUpdateTemplateType
-- | DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR specifies
-- that the descriptor update template will be used for push descriptor
-- updates only.
pattern DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR :: DescriptorUpdateTemplateType
-- | VkObjectType - Specify an enumeration to track object handle types
--
-- Description
--
-- '
--
-- TODO: table
--
-- VkObjectType and Vulkan Handle Relationship
--
-- See Also
--
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- getPrivateDataEXT, setPrivateDataEXT
newtype ObjectType
ObjectType :: Int32 -> ObjectType
pattern OBJECT_TYPE_UNKNOWN :: ObjectType
pattern OBJECT_TYPE_INSTANCE :: ObjectType
pattern OBJECT_TYPE_PHYSICAL_DEVICE :: ObjectType
pattern OBJECT_TYPE_DEVICE :: ObjectType
pattern OBJECT_TYPE_QUEUE :: ObjectType
pattern OBJECT_TYPE_SEMAPHORE :: ObjectType
pattern OBJECT_TYPE_COMMAND_BUFFER :: ObjectType
pattern OBJECT_TYPE_FENCE :: ObjectType
pattern OBJECT_TYPE_DEVICE_MEMORY :: ObjectType
pattern OBJECT_TYPE_BUFFER :: ObjectType
pattern OBJECT_TYPE_IMAGE :: ObjectType
pattern OBJECT_TYPE_EVENT :: ObjectType
pattern OBJECT_TYPE_QUERY_POOL :: ObjectType
pattern OBJECT_TYPE_BUFFER_VIEW :: ObjectType
pattern OBJECT_TYPE_IMAGE_VIEW :: ObjectType
pattern OBJECT_TYPE_SHADER_MODULE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_CACHE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_LAYOUT :: ObjectType
pattern OBJECT_TYPE_RENDER_PASS :: ObjectType
pattern OBJECT_TYPE_PIPELINE :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: ObjectType
pattern OBJECT_TYPE_SAMPLER :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_POOL :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET :: ObjectType
pattern OBJECT_TYPE_FRAMEBUFFER :: ObjectType
pattern OBJECT_TYPE_COMMAND_POOL :: ObjectType
pattern OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: ObjectType
pattern OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: ObjectType
pattern OBJECT_TYPE_DEFERRED_OPERATION_KHR :: ObjectType
pattern OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: ObjectType
pattern OBJECT_TYPE_VALIDATION_CACHE_EXT :: ObjectType
pattern OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: ObjectType
pattern OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: ObjectType
pattern OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: ObjectType
pattern OBJECT_TYPE_DISPLAY_MODE_KHR :: ObjectType
pattern OBJECT_TYPE_DISPLAY_KHR :: ObjectType
pattern OBJECT_TYPE_SWAPCHAIN_KHR :: ObjectType
pattern OBJECT_TYPE_SURFACE_KHR :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: ObjectType
pattern OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: ObjectType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateCreateInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_descriptor_update_template.DescriptorUpdateTemplateEntry
module Vulkan.Core10.PipelineLayout
-- | vkCreatePipelineLayout - Creates a new pipeline layout object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, PipelineLayout,
-- PipelineLayoutCreateInfo
createPipelineLayout :: forall io. MonadIO io => Device -> PipelineLayoutCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io PipelineLayout
-- | A convenience wrapper to make a compatible pair of calls to
-- createPipelineLayout and destroyPipelineLayout
--
-- To ensure that destroyPipelineLayout is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withPipelineLayout :: forall io r. MonadIO io => Device -> PipelineLayoutCreateInfo -> Maybe AllocationCallbacks -> (io PipelineLayout -> (PipelineLayout -> io ()) -> r) -> r
-- | vkDestroyPipelineLayout - Destroy a pipeline layout object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- pipelineLayout was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- pipelineLayout was created, pAllocator must
-- be NULL
-- - pipelineLayout must not have been passed to any
-- vkCmd* command for any command buffers that are still in the
-- recording state when destroyPipelineLayout is
-- called
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipelineLayout is not NULL_HANDLE,
-- pipelineLayout must be a valid PipelineLayout
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If pipelineLayout is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to pipelineLayout must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, PipelineLayout
destroyPipelineLayout :: forall io. MonadIO io => Device -> PipelineLayout -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkPushConstantRange - Structure specifying a push constant range
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineLayoutCreateInfo, ShaderStageFlags
data PushConstantRange
PushConstantRange :: ShaderStageFlags -> Word32 -> Word32 -> PushConstantRange
-- | stageFlags is a set of stage flags describing the shader
-- stages that will access a range of push constants. If a particular
-- stage is not included in the range, then accessing members of that
-- range of push constants from the corresponding shader stage will
-- return undefined values.
--
-- stageFlags must be a valid combination of
-- ShaderStageFlagBits values
--
-- stageFlags must not be 0
[$sel:stageFlags:PushConstantRange] :: PushConstantRange -> ShaderStageFlags
-- | offset and size are the start offset and size,
-- respectively, consumed by the range. Both offset and
-- size are in units of bytes and must be a multiple of
-- 4. The layout of the push constant variables is specified in the
-- shader.
--
-- offset must be less than
-- PhysicalDeviceLimits::maxPushConstantsSize
--
-- offset must be a multiple of 4
[$sel:offset:PushConstantRange] :: PushConstantRange -> Word32
-- | size must be greater than 0
--
-- size must be a multiple of 4
--
-- size must be less than or equal to
-- PhysicalDeviceLimits::maxPushConstantsSize minus
-- offset
[$sel:size:PushConstantRange] :: PushConstantRange -> Word32
-- | VkPipelineLayoutCreateInfo - Structure specifying the parameters of a
-- newly created pipeline layout object
--
-- Valid Usage
--
--
--
--
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of DESCRIPTOR_TYPE_SAMPLER and
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceLimits::maxPerStageDescriptorSamplers
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER and
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceLimits::maxPerStageDescriptorUniformBuffers
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER and
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceLimits::maxPerStageDescriptorStorageBuffers
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, and
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceLimits::maxPerStageDescriptorSampledImages
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, and
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceLimits::maxPerStageDescriptorStorageImages
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader
-- stage across all elements of pSetLayouts must be less
-- than or equal to
-- PhysicalDeviceLimits::maxPerStageDescriptorInputAttachments
-- - The total number of bindings in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT accessible to any
-- given shader stage across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceInlineUniformBlockPropertiesEXT::maxPerStageDescriptorInlineUniformBlocks
-- - The total number of descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_SAMPLER and
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindSamplers
-- - The total number of descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER and
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindUniformBuffers
-- - The total number of descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER and
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindStorageBuffers
-- - The total number of descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, and
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindSampledImages
-- - The total number of descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, and
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any given
-- shader stage across all elements of pSetLayouts must
-- be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindStorageImages
-- - The total number of descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader
-- stage across all elements of pSetLayouts must be less
-- than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindInputAttachments
-- - The total number of bindings with a descriptorType of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT accessible to any
-- given shader stage across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceInlineUniformBlockPropertiesEXT::maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of DESCRIPTOR_TYPE_SAMPLER and
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetSamplers
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader
-- stages and across all elements of pSetLayouts must be
-- less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetUniformBuffers
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetUniformBuffersDynamic
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader
-- stages and across all elements of pSetLayouts must be
-- less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetStorageBuffers
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetStorageBuffersDynamic
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, and
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetSampledImages
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, and
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetStorageImages
-- - The total number of descriptors in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader
-- stages and across all elements of pSetLayouts must be
-- less than or equal to
-- PhysicalDeviceLimits::maxDescriptorSetInputAttachments
-- - The total number of bindings in descriptor set layouts created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- with a descriptorType of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceInlineUniformBlockPropertiesEXT::maxDescriptorSetInlineUniformBlocks
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_SAMPLER and
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindSamplers
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader
-- stages and across all elements of pSetLayouts must be
-- less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindUniformBuffers
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindUniformBuffersDynamic
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader
-- stages and across all elements of pSetLayouts must be
-- less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageBuffers
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageBuffersDynamic
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, and
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindSampledImages
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, and
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageImages
-- - The total number of descriptors of the type
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader
-- stages and across all elements of pSetLayouts must be
-- less than or equal to
-- PhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindInputAttachments
-- - The total number of bindings with a descriptorType of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT accessible across all
-- shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceInlineUniformBlockPropertiesEXT::maxDescriptorSetUpdateAfterBindInlineUniformBlocks
-- - Any two elements of pPushConstantRanges must not
-- include the same stage in stageFlags
-- - pSetLayouts must not contain more than one
-- descriptor set layout that was created with
-- DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR set
-- - The total number of bindings with a descriptorType of
-- DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR accessible across
-- all shader stages and across all elements of pSetLayouts
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxDescriptorSetAccelerationStructures
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - If setLayoutCount is not 0, pSetLayouts
-- must be a valid pointer to an array of setLayoutCount
-- valid DescriptorSetLayout handles
-- - If pushConstantRangeCount is not 0,
-- pPushConstantRanges must be a valid pointer to an
-- array of pushConstantRangeCount valid
-- PushConstantRange structures
--
--
-- See Also
--
-- DescriptorSetLayout, PipelineLayoutCreateFlags,
-- PushConstantRange, StructureType,
-- createPipelineLayout
data PipelineLayoutCreateInfo
PipelineLayoutCreateInfo :: PipelineLayoutCreateFlags -> Vector DescriptorSetLayout -> Vector PushConstantRange -> PipelineLayoutCreateInfo
-- | flags is reserved for future use.
[$sel:flags:PipelineLayoutCreateInfo] :: PipelineLayoutCreateInfo -> PipelineLayoutCreateFlags
-- | pSetLayouts is a pointer to an array of
-- DescriptorSetLayout objects.
[$sel:setLayouts:PipelineLayoutCreateInfo] :: PipelineLayoutCreateInfo -> Vector DescriptorSetLayout
-- | pPushConstantRanges is a pointer to an array of
-- PushConstantRange structures defining a set of push constant
-- ranges for use in a single pipeline layout. In addition to descriptor
-- set layouts, a pipeline layout also describes how many push constants
-- can be accessed by each stage of the pipeline.
--
-- Note
--
-- Push constants represent a high speed path to modify constant data in
-- pipelines that is expected to outperform memory-backed resource
-- updates.
[$sel:pushConstantRanges:PipelineLayoutCreateInfo] :: PipelineLayoutCreateInfo -> Vector PushConstantRange
-- | VkPipelineLayout - Opaque handle to a pipeline layout object
--
-- See Also
--
-- ComputePipelineCreateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- GraphicsPipelineCreateInfo,
-- IndirectCommandsLayoutTokenNV,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindDescriptorSets,
-- cmdPushConstants, cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR,
-- createPipelineLayout, destroyPipelineLayout
newtype PipelineLayout
PipelineLayout :: Word64 -> PipelineLayout
instance GHC.Classes.Eq Vulkan.Core10.PipelineLayout.PushConstantRange
instance GHC.Generics.Generic Vulkan.Core10.PipelineLayout.PushConstantRange
instance GHC.Show.Show Vulkan.Core10.PipelineLayout.PushConstantRange
instance GHC.Generics.Generic Vulkan.Core10.PipelineLayout.PipelineLayoutCreateInfo
instance GHC.Show.Show Vulkan.Core10.PipelineLayout.PipelineLayoutCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.PipelineLayout.PipelineLayoutCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.PipelineLayout.PipelineLayoutCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.PipelineLayout.PipelineLayoutCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.PipelineLayout.PushConstantRange
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.PipelineLayout.PushConstantRange
instance Foreign.Storable.Storable Vulkan.Core10.PipelineLayout.PushConstantRange
instance Vulkan.Zero.Zero Vulkan.Core10.PipelineLayout.PushConstantRange
module Vulkan.Core10.PipelineCache
-- | vkCreatePipelineCache - Creates a new pipeline cache
--
-- Description
--
-- Note
--
-- Applications can track and manage the total host memory size of
-- a pipeline cache object using the pAllocator. Applications
-- can limit the amount of data retrieved from a pipeline cache
-- object in getPipelineCacheData. Implementations should
-- not internally limit the total number of entries added to a pipeline
-- cache object or the total host memory consumed.
--
-- Once created, a pipeline cache can be passed to the
-- createGraphicsPipelines createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, and createComputePipelines
-- commands. If the pipeline cache passed into these commands is not
-- NULL_HANDLE, the implementation will query it for possible
-- reuse opportunities and update it with new content. The use of the
-- pipeline cache object in these commands is internally synchronized,
-- and the same pipeline cache object can be used in multiple
-- threads simultaneously.
--
-- If flags of pCreateInfo includes
-- PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT, all
-- commands that modify the returned pipeline cache object must be
-- externally synchronized.
--
-- Note
--
-- Implementations should make every effort to limit any critical
-- sections to the actual accesses to the cache, which is expected to be
-- significantly shorter than the duration of the
-- vkCreate*Pipelines commands.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, PipelineCache,
-- PipelineCacheCreateInfo
createPipelineCache :: forall io. MonadIO io => Device -> PipelineCacheCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io PipelineCache
-- | A convenience wrapper to make a compatible pair of calls to
-- createPipelineCache and destroyPipelineCache
--
-- To ensure that destroyPipelineCache is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withPipelineCache :: forall io r. MonadIO io => Device -> PipelineCacheCreateInfo -> Maybe AllocationCallbacks -> (io PipelineCache -> (PipelineCache -> io ()) -> r) -> r
-- | vkDestroyPipelineCache - Destroy a pipeline cache object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- pipelineCache was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- pipelineCache was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipelineCache is not NULL_HANDLE,
-- pipelineCache must be a valid PipelineCache
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If pipelineCache is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to pipelineCache must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, PipelineCache
destroyPipelineCache :: forall io. MonadIO io => Device -> PipelineCache -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetPipelineCacheData - Get the data store from a pipeline cache
--
-- Description
--
-- If pData is NULL, then the maximum size of the data
-- that can be retrieved from the pipeline cache, in bytes, is
-- returned in pDataSize. Otherwise, pDataSize
-- must point to a variable set by the user to the size of the
-- buffer, in bytes, pointed to by pData, and on return the
-- variable is overwritten with the amount of data actually written to
-- pData.
--
-- If pDataSize is less than the maximum size that can be
-- retrieved by the pipeline cache, at most pDataSize bytes will
-- be written to pData, and getPipelineCacheData will
-- return INCOMPLETE. Any data written to pData is valid
-- and can be provided as the pInitialData member of the
-- PipelineCacheCreateInfo structure passed to
-- createPipelineCache.
--
-- Two calls to getPipelineCacheData with the same parameters
-- must retrieve the same data unless a command that modifies the
-- contents of the cache is called between them.
--
-- Applications can store the data retrieved from the pipeline
-- cache, and use these data, possibly in a future run of the
-- application, to populate new pipeline cache objects. The results of
-- pipeline compiles, however, may depend on the vendor ID, device
-- ID, driver version, and other details of the device. To enable
-- applications to detect when previously retrieved data is incompatible
-- with the device, the initial bytes written to pData
-- must be a header consisting of the following members:
--
-- TODO: table
--
-- Layout for pipeline cache header version
-- PIPELINE_CACHE_HEADER_VERSION_ONE
--
-- The first four bytes encode the length of the entire pipeline cache
-- header, in bytes. This value includes all fields in the header
-- including the pipeline cache version field and the size of the length
-- field.
--
-- The next four bytes encode the pipeline cache version, as described
-- for PipelineCacheHeaderVersion. A consumer of the pipeline
-- cache should use the cache version to interpret the remainder
-- of the cache header.
--
-- If pDataSize is less than what is necessary to store this
-- header, nothing will be written to pData and zero will be
-- written to pDataSize.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pipelineCache must be a valid PipelineCache
-- handle
-- - pDataSize must be a valid pointer to a
-- size_t value
-- - If the value referenced by pDataSize is not 0,
-- and pData is not NULL, pData must be
-- a valid pointer to an array of pDataSize bytes
-- - pipelineCache must have been created, allocated,
-- or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PipelineCache
getPipelineCacheData :: forall io. MonadIO io => Device -> PipelineCache -> io (Result, "data" ::: ByteString)
-- | vkMergePipelineCaches - Combine the data stores of pipeline caches
--
-- Description
--
-- Note
--
-- The details of the merge operation are implementation dependent, but
-- implementations should merge the contents of the specified
-- pipelines and prune duplicate entries.
--
-- Valid Usage
--
--
-- - dstCache must not appear in the list of source
-- caches
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - dstCache must be a valid PipelineCache
-- handle
-- - pSrcCaches must be a valid pointer to an array of
-- srcCacheCount valid PipelineCache handles
-- - srcCacheCount must be greater than 0
-- - dstCache must have been created, allocated, or
-- retrieved from device
-- - Each element of pSrcCaches must have been created,
-- allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to dstCache must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, PipelineCache
mergePipelineCaches :: forall io. MonadIO io => Device -> ("dstCache" ::: PipelineCache) -> ("srcCaches" ::: Vector PipelineCache) -> io ()
-- | VkPipelineCacheCreateInfo - Structure specifying parameters of a newly
-- created pipeline cache
--
-- Valid Usage
--
--
-- - If initialDataSize is not 0, it must be
-- equal to the size of pInitialData, as returned by
-- getPipelineCacheData when pInitialData was originally
-- retrieved
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be a valid combination of
-- PipelineCacheCreateFlagBits values
-- - If initialDataSize is not 0,
-- pInitialData must be a valid pointer to an array of
-- initialDataSize bytes
--
--
-- See Also
--
-- PipelineCacheCreateFlags, StructureType,
-- createPipelineCache
data PipelineCacheCreateInfo
PipelineCacheCreateInfo :: PipelineCacheCreateFlags -> Word64 -> Ptr () -> PipelineCacheCreateInfo
-- | flags is a bitmask of PipelineCacheCreateFlagBits
-- specifying the behavior of the pipeline cache.
[$sel:flags:PipelineCacheCreateInfo] :: PipelineCacheCreateInfo -> PipelineCacheCreateFlags
-- | initialDataSize is the number of bytes in
-- pInitialData. If initialDataSize is zero, the
-- pipeline cache will initially be empty.
[$sel:initialDataSize:PipelineCacheCreateInfo] :: PipelineCacheCreateInfo -> Word64
-- | pInitialData is a pointer to previously retrieved pipeline
-- cache data. If the pipeline cache data is incompatible (as defined
-- below) with the device, the pipeline cache will be initially empty. If
-- initialDataSize is zero, pInitialData is ignored.
[$sel:initialData:PipelineCacheCreateInfo] :: PipelineCacheCreateInfo -> Ptr ()
-- | VkPipelineCache - Opaque handle to a pipeline cache object
--
-- See Also
--
-- createComputePipelines, createGraphicsPipelines,
-- createPipelineCache, createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, destroyPipelineCache,
-- getPipelineCacheData, mergePipelineCaches
newtype PipelineCache
PipelineCache :: Word64 -> PipelineCache
-- | VkPipelineCacheCreateFlagBits - Bitmask specifying the behavior of the
-- pipeline cache
--
-- See Also
--
-- PipelineCacheCreateFlags
newtype PipelineCacheCreateFlagBits
PipelineCacheCreateFlagBits :: Flags -> PipelineCacheCreateFlagBits
-- | PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT specifies
-- that all commands that modify the created PipelineCache will be
-- externally synchronized. When set, the implementation
-- may skip any unnecessary processing needed to support
-- simultaneous modification from multiple threads where allowed.
pattern PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT :: PipelineCacheCreateFlagBits
type PipelineCacheCreateFlags = PipelineCacheCreateFlagBits
instance GHC.Generics.Generic Vulkan.Core10.PipelineCache.PipelineCacheCreateInfo
instance GHC.Show.Show Vulkan.Core10.PipelineCache.PipelineCacheCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.PipelineCache.PipelineCacheCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.PipelineCache.PipelineCacheCreateInfo
instance Foreign.Storable.Storable Vulkan.Core10.PipelineCache.PipelineCacheCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.PipelineCache.PipelineCacheCreateInfo
module Vulkan.Core10.MemoryManagement
-- | vkGetBufferMemoryRequirements - Returns the memory requirements for
-- specified Vulkan object
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - buffer must be a valid Buffer handle
-- - pMemoryRequirements must be a valid pointer to a
-- MemoryRequirements structure
-- - buffer must have been created, allocated, or
-- retrieved from device
--
--
-- See Also
--
-- Buffer, Device, MemoryRequirements
getBufferMemoryRequirements :: forall io. MonadIO io => Device -> Buffer -> io MemoryRequirements
-- | vkBindBufferMemory - Bind device memory to a buffer object
--
-- Description
--
-- bindBufferMemory is equivalent to passing the same parameters
-- through BindBufferMemoryInfo to bindBufferMemory2.
--
-- Valid Usage
--
--
-- - buffer must not already be backed by a memory
-- object
--
--
--
-- - buffer must not have been created with any sparse
-- memory binding flags
-- - memoryOffset must be less than the size of
-- memory
-- - memory must have been allocated using one of the
-- memory types allowed in the memoryTypeBits member of the
-- MemoryRequirements structure returned from a call to
-- getBufferMemoryRequirements with buffer
-- - memoryOffset must be an integer multiple of the
-- alignment member of the MemoryRequirements structure
-- returned from a call to getBufferMemoryRequirements with
-- buffer
-- - The size member of the MemoryRequirements
-- structure returned from a call to getBufferMemoryRequirements
-- with buffer must be less than or equal to the size of
-- memory minus memoryOffset
-- - If buffer requires a dedicated allocation(as reported by
-- getBufferMemoryRequirements2 in
-- MemoryDedicatedRequirements::requiresDedicatedAllocation for
-- buffer), memory must have been created with
-- MemoryDedicatedAllocateInfo::buffer equal to
-- buffer
-- - If the MemoryAllocateInfo provided when memory was
-- allocated included a MemoryDedicatedAllocateInfo structure in
-- its pNext chain, and
-- MemoryDedicatedAllocateInfo::buffer was not
-- NULL_HANDLE, then buffer must equal
-- MemoryDedicatedAllocateInfo::buffer, and
-- memoryOffset must be zero
-- - If buffer was created with the BUFFER_CREATE_PROTECTED_BIT
-- bit set, the buffer must be bound to a memory object allocated
-- with a memory type that reports
-- MEMORY_PROPERTY_PROTECTED_BIT
-- - If buffer was created with the BUFFER_CREATE_PROTECTED_BIT
-- bit not set, the buffer must not be bound to a memory object
-- created with a memory type that reports
-- MEMORY_PROPERTY_PROTECTED_BIT
-- - If buffer was created with
-- DedicatedAllocationBufferCreateInfoNV::dedicatedAllocation
-- equal to TRUE, memory must have been created
-- with DedicatedAllocationMemoryAllocateInfoNV::buffer
-- equal to a buffer handle created with identical creation parameters to
-- buffer and memoryOffset must be zero
-- - If the value of
-- ExportMemoryAllocateInfo::handleTypes used to allocate
-- memory is not 0, it must include at least one
-- of the handles set in
-- ExternalMemoryBufferCreateInfo::handleTypes when
-- buffer was created
-- - If memory was created by a memory import operation, that
-- is not ImportAndroidHardwareBufferInfoANDROID with a
-- non-NULL buffer value, the external handle type of
-- the imported memory must also have been set in
-- ExternalMemoryBufferCreateInfo::handleTypes when
-- buffer was created
-- - If memory was created with the
-- ImportAndroidHardwareBufferInfoANDROID memory import operation
-- with a non-NULL buffer value,
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- must also have been set in
-- ExternalMemoryBufferCreateInfo::handleTypes when
-- buffer was created
-- - If the
-- PhysicalDeviceBufferDeviceAddressFeatures::bufferDeviceAddress
-- feature is enabled and buffer was created with the
-- BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT bit set, memory
-- must have been allocated with the
-- MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT bit set
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - buffer must be a valid Buffer handle
-- - memory must be a valid DeviceMemory
-- handle
-- - buffer must have been created, allocated, or
-- retrieved from device
-- - memory must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to buffer must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Buffer, Device, DeviceMemory, DeviceSize
bindBufferMemory :: forall io. MonadIO io => Device -> Buffer -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> io ()
-- | vkGetImageMemoryRequirements - Returns the memory requirements for
-- specified Vulkan object
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - image must be a valid Image handle
-- - pMemoryRequirements must be a valid pointer to a
-- MemoryRequirements structure
-- - image must have been created, allocated, or
-- retrieved from device
--
--
-- See Also
--
-- Device, Image, MemoryRequirements
getImageMemoryRequirements :: forall io. MonadIO io => Device -> Image -> io MemoryRequirements
-- | vkBindImageMemory - Bind device memory to an image object
--
-- Description
--
-- bindImageMemory is equivalent to passing the same parameters
-- through BindImageMemoryInfo to bindImageMemory2.
--
-- Valid Usage
--
--
--
--
-- - image must not already be backed by a memory
-- object
-- - image must not have been created with any sparse
-- memory binding flags
-- - memoryOffset must be less than the size of
-- memory
-- - memory must have been allocated using one of the
-- memory types allowed in the memoryTypeBits member of the
-- MemoryRequirements structure returned from a call to
-- getImageMemoryRequirements with image
-- - memoryOffset must be an integer multiple of the
-- alignment member of the MemoryRequirements structure
-- returned from a call to getImageMemoryRequirements with
-- image
-- - The difference of the size of memory and
-- memoryOffset must be greater than or equal to the
-- size member of the MemoryRequirements structure
-- returned from a call to getImageMemoryRequirements with the
-- same image
-- - If image requires a dedicated allocation (as reported by
-- getImageMemoryRequirements2 in
-- MemoryDedicatedRequirements::requiresDedicatedAllocation for
-- image), memory must have been created with
-- MemoryDedicatedAllocateInfo::image equal to
-- image
-- - If the dedicated allocation image aliasing feature is not
-- enabled, and the MemoryAllocateInfo provided when
-- memory was allocated included a
-- MemoryDedicatedAllocateInfo structure in its pNext
-- chain, and MemoryDedicatedAllocateInfo::image was not
-- NULL_HANDLE, then image must equal
-- MemoryDedicatedAllocateInfo::image and
-- memoryOffset must be zero
-- - If the dedicated allocation image aliasing feature is
-- enabled, and the MemoryAllocateInfo provided when
-- memory was allocated included a
-- MemoryDedicatedAllocateInfo structure in its pNext
-- chain, and MemoryDedicatedAllocateInfo::image was not
-- NULL_HANDLE, then memoryOffset must be zero,
-- and image must be either equal to
-- MemoryDedicatedAllocateInfo::image or an image that
-- was created using the same parameters in ImageCreateInfo, with
-- the exception that extent and arrayLayers may
-- differ subject to the following restrictions: every dimension in the
-- extent parameter of the image being bound must be
-- equal to or smaller than the original image for which the allocation
-- was created; and the arrayLayers parameter of the image being
-- bound must be equal to or smaller than the original image for
-- which the allocation was created
-- - If image was created with the IMAGE_CREATE_PROTECTED_BIT
-- bit set, the image must be bound to a memory object allocated
-- with a memory type that reports
-- MEMORY_PROPERTY_PROTECTED_BIT
-- - If image was created with the IMAGE_CREATE_PROTECTED_BIT
-- bit not set, the image must not be bound to a memory object
-- created with a memory type that reports
-- MEMORY_PROPERTY_PROTECTED_BIT
-- - If image was created with
-- DedicatedAllocationImageCreateInfoNV::dedicatedAllocation
-- equal to TRUE, memory must have been created
-- with DedicatedAllocationMemoryAllocateInfoNV::image
-- equal to an image handle created with identical creation parameters to
-- image and memoryOffset must be zero
-- - If the value of
-- ExportMemoryAllocateInfo::handleTypes used to allocate
-- memory is not 0, it must include at least one
-- of the handles set in
-- ExternalMemoryImageCreateInfo::handleTypes when
-- image was created
-- - If memory was created by a memory import operation, that
-- is not ImportAndroidHardwareBufferInfoANDROID with a
-- non-NULL buffer value, the external handle type of
-- the imported memory must also have been set in
-- ExternalMemoryImageCreateInfo::handleTypes when
-- image was created
-- - If memory was created with the
-- ImportAndroidHardwareBufferInfoANDROID memory import operation
-- with a non-NULL buffer value,
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- must also have been set in
-- ExternalMemoryImageCreateInfo::handleTypes when
-- image was created
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - image must be a valid Image handle
-- - memory must be a valid DeviceMemory
-- handle
-- - image must have been created, allocated, or
-- retrieved from device
-- - memory must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to image must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceMemory, DeviceSize, Image
bindImageMemory :: forall io. MonadIO io => Device -> Image -> DeviceMemory -> ("memoryOffset" ::: DeviceSize) -> io ()
-- | VkMemoryRequirements - Structure specifying memory requirements
--
-- See Also
--
-- DeviceSize, MemoryRequirements2,
-- getBufferMemoryRequirements, getImageMemoryRequirements
data MemoryRequirements
MemoryRequirements :: DeviceSize -> DeviceSize -> Word32 -> MemoryRequirements
-- | size is the size, in bytes, of the memory allocation
-- required for the resource.
[$sel:size:MemoryRequirements] :: MemoryRequirements -> DeviceSize
-- | alignment is the alignment, in bytes, of the offset within
-- the allocation required for the resource.
[$sel:alignment:MemoryRequirements] :: MemoryRequirements -> DeviceSize
-- | memoryTypeBits is a bitmask and contains one bit set for
-- every supported memory type for the resource. Bit i is set if
-- and only if the memory type i in the
-- PhysicalDeviceMemoryProperties structure for the physical
-- device is supported for the resource.
[$sel:memoryTypeBits:MemoryRequirements] :: MemoryRequirements -> Word32
-- | VkDeviceMemory - Opaque handle to a device memory object
--
-- See Also
--
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryInfo, BindImageMemoryInfo,
-- DeviceMemoryOpaqueCaptureAddressInfo, MappedMemoryRange,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- SparseImageMemoryBind, SparseMemoryBind,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV, allocateMemory,
-- bindBufferMemory, bindImageMemory, freeMemory,
-- getDeviceMemoryCommitment, getMemoryWin32HandleNV,
-- mapMemory, unmapMemory
newtype DeviceMemory
DeviceMemory :: Word64 -> DeviceMemory
instance GHC.Classes.Eq Vulkan.Core10.MemoryManagement.MemoryRequirements
instance GHC.Generics.Generic Vulkan.Core10.MemoryManagement.MemoryRequirements
instance GHC.Show.Show Vulkan.Core10.MemoryManagement.MemoryRequirements
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.MemoryManagement.MemoryRequirements
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.MemoryManagement.MemoryRequirements
instance Foreign.Storable.Storable Vulkan.Core10.MemoryManagement.MemoryRequirements
instance Vulkan.Zero.Zero Vulkan.Core10.MemoryManagement.MemoryRequirements
module Vulkan.Core10.LayerDiscovery
-- | vkEnumerateInstanceLayerProperties - Returns up to requested number of
-- global layer properties
--
-- Description
--
-- If pProperties is NULL, then the number of layer
-- properties available is returned in pPropertyCount.
-- Otherwise, pPropertyCount must point to a variable set
-- by the user to the number of elements in the pProperties
-- array, and on return the variable is overwritten with the number of
-- structures actually written to pProperties. If
-- pPropertyCount is less than the number of layer properties
-- available, at most pPropertyCount structures will be written.
-- If pPropertyCount is smaller than the number of layers
-- available, INCOMPLETE will be returned instead of
-- SUCCESS, to indicate that not all the available layer
-- properties were returned.
--
-- The list of available layers may change at any time due to actions
-- outside of the Vulkan implementation, so two calls to
-- enumerateInstanceLayerProperties with the same parameters
-- may return different results, or retrieve different
-- pPropertyCount values or pProperties contents. Once
-- an instance has been created, the layers enabled for that instance
-- will continue to be enabled and valid for the lifetime of that
-- instance, even if some of them become unavailable for future
-- instances.
--
-- Valid Usage (Implicit)
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
--
--
--
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount LayerProperties structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- LayerProperties
enumerateInstanceLayerProperties :: forall io. MonadIO io => io (Result, "properties" ::: Vector LayerProperties)
-- | vkEnumerateDeviceLayerProperties - Returns properties of available
-- physical device layers
--
-- Description
--
-- If pProperties is NULL, then the number of layer
-- properties available is returned in pPropertyCount.
-- Otherwise, pPropertyCount must point to a variable set
-- by the user to the number of elements in the pProperties
-- array, and on return the variable is overwritten with the number of
-- structures actually written to pProperties. If
-- pPropertyCount is less than the number of layer properties
-- available, at most pPropertyCount structures will be written.
-- If pPropertyCount is smaller than the number of layers
-- available, INCOMPLETE will be returned instead of
-- SUCCESS, to indicate that not all the available layer
-- properties were returned.
--
-- The list of layers enumerated by enumerateDeviceLayerProperties
-- must be exactly the sequence of layers enabled for the
-- instance. The members of LayerProperties for each enumerated
-- layer must be the same as the properties when the layer was
-- enumerated by enumerateInstanceLayerProperties.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount LayerProperties structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- LayerProperties, PhysicalDevice
enumerateDeviceLayerProperties :: forall io. MonadIO io => PhysicalDevice -> io (Result, "properties" ::: Vector LayerProperties)
-- | VkLayerProperties - Structure specifying layer properties
--
-- See Also
--
-- enumerateDeviceLayerProperties,
-- enumerateInstanceLayerProperties
data LayerProperties
LayerProperties :: ByteString -> Word32 -> Word32 -> ByteString -> LayerProperties
-- | layerName is an array of MAX_EXTENSION_NAME_SIZE
-- char containing a null-terminated UTF-8 string which is the
-- name of the layer. Use this name in the ppEnabledLayerNames
-- array passed in the InstanceCreateInfo structure to enable this
-- layer for an instance.
[$sel:layerName:LayerProperties] :: LayerProperties -> ByteString
-- | specVersion is the Vulkan version the layer was written to,
-- encoded as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-coreversions-versionnumbers.
[$sel:specVersion:LayerProperties] :: LayerProperties -> Word32
-- | implementationVersion is the version of this layer. It is an
-- integer, increasing with backward compatible changes.
[$sel:implementationVersion:LayerProperties] :: LayerProperties -> Word32
-- | description is an array of MAX_DESCRIPTION_SIZE
-- char containing a null-terminated UTF-8 string which provides
-- additional details that can be used by the application to
-- identify the layer.
[$sel:description:LayerProperties] :: LayerProperties -> ByteString
instance GHC.Generics.Generic Vulkan.Core10.LayerDiscovery.LayerProperties
instance GHC.Show.Show Vulkan.Core10.LayerDiscovery.LayerProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.LayerDiscovery.LayerProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.LayerDiscovery.LayerProperties
instance Foreign.Storable.Storable Vulkan.Core10.LayerDiscovery.LayerProperties
instance Vulkan.Zero.Zero Vulkan.Core10.LayerDiscovery.LayerProperties
module Vulkan.Core10.ExtensionDiscovery
-- | vkEnumerateInstanceExtensionProperties - Returns up to requested
-- number of global extension properties
--
-- Description
--
-- When pLayerName parameter is NULL, only extensions
-- provided by the Vulkan implementation or by implicitly enabled layers
-- are returned. When pLayerName is the name of a layer, the
-- instance extensions provided by that layer are returned.
--
-- If pProperties is NULL, then the number of
-- extensions properties available is returned in
-- pPropertyCount. Otherwise, pPropertyCount
-- must point to a variable set by the user to the number of
-- elements in the pProperties array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pProperties. If pPropertyCount is less than the
-- number of extension properties available, at most
-- pPropertyCount structures will be written. If
-- pPropertyCount is smaller than the number of extensions
-- available, INCOMPLETE will be returned instead of
-- SUCCESS, to indicate that not all the available properties were
-- returned.
--
-- Because the list of available layers may change externally between
-- calls to enumerateInstanceExtensionProperties, two calls may
-- retrieve different results if a pLayerName is available in
-- one call but not in another. The extensions supported by a layer may
-- also change between two calls, e.g. if the layer implementation is
-- replaced by a different version between those calls.
--
-- Implementations must not advertise any pair of extensions that
-- cannot be enabled together due to behavioral differences, or any
-- extension that cannot be enabled against the advertised version.
--
-- Valid Usage (Implicit)
--
--
-- - If pLayerName is not NULL, pLayerName
-- must be a null-terminated UTF-8 string
--
--
--
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount ExtensionProperties structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- ExtensionProperties
enumerateInstanceExtensionProperties :: forall io. MonadIO io => ("layerName" ::: Maybe ByteString) -> io (Result, "properties" ::: Vector ExtensionProperties)
-- | vkEnumerateDeviceExtensionProperties - Returns properties of available
-- physical device extensions
--
-- Description
--
-- When pLayerName parameter is NULL, only extensions
-- provided by the Vulkan implementation or by implicitly enabled layers
-- are returned. When pLayerName is the name of a layer, the
-- device extensions provided by that layer are returned.
--
-- Implementations must not advertise any pair of extensions that
-- cannot be enabled together due to behavioral differences, or any
-- extension that cannot be enabled against the advertised version.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pLayerName is not NULL, pLayerName
-- must be a null-terminated UTF-8 string
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount ExtensionProperties structures
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- ExtensionProperties, PhysicalDevice
enumerateDeviceExtensionProperties :: forall io. MonadIO io => PhysicalDevice -> ("layerName" ::: Maybe ByteString) -> io (Result, "properties" ::: Vector ExtensionProperties)
-- | VkExtensionProperties - Structure specifying an extension properties
--
-- See Also
--
-- enumerateDeviceExtensionProperties,
-- enumerateInstanceExtensionProperties
data ExtensionProperties
ExtensionProperties :: ByteString -> Word32 -> ExtensionProperties
-- | extensionName is an array of MAX_EXTENSION_NAME_SIZE
-- char containing a null-terminated UTF-8 string which is the
-- name of the extension.
[$sel:extensionName:ExtensionProperties] :: ExtensionProperties -> ByteString
-- | specVersion is the version of this extension. It is an
-- integer, incremented with backward compatible changes.
[$sel:specVersion:ExtensionProperties] :: ExtensionProperties -> Word32
instance GHC.Generics.Generic Vulkan.Core10.ExtensionDiscovery.ExtensionProperties
instance GHC.Show.Show Vulkan.Core10.ExtensionDiscovery.ExtensionProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.ExtensionDiscovery.ExtensionProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.ExtensionDiscovery.ExtensionProperties
instance Foreign.Storable.Storable Vulkan.Core10.ExtensionDiscovery.ExtensionProperties
instance Vulkan.Zero.Zero Vulkan.Core10.ExtensionDiscovery.ExtensionProperties
module Vulkan.Core10.Event
-- | vkCreateEvent - Create a new event object
--
-- Description
--
-- When created, the event object is in the unsignaled state.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- EventCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pEvent must be a valid pointer to a Event
-- handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Event,
-- EventCreateInfo
createEvent :: forall io. MonadIO io => Device -> EventCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io Event
-- | A convenience wrapper to make a compatible pair of calls to
-- createEvent and destroyEvent
--
-- To ensure that destroyEvent is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withEvent :: forall io r. MonadIO io => Device -> EventCreateInfo -> Maybe AllocationCallbacks -> (io Event -> (Event -> io ()) -> r) -> r
-- | vkDestroyEvent - Destroy an event object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to event must
-- have completed execution
--
--
--
-- - If AllocationCallbacks were provided when event
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when event
-- was created, pAllocator must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If event is not NULL_HANDLE, event
-- must be a valid Event handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If event is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to event must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Event
destroyEvent :: forall io. MonadIO io => Device -> Event -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetEventStatus - Retrieve the status of an event object
--
-- Description
--
-- Upon success, getEventStatus returns the state of the event
-- object with the following return codes:
--
-- TODO: table
--
-- Event Object Status Codes
--
-- If a cmdSetEvent or cmdResetEvent command is in a
-- command buffer that is in the pending state, then the value
-- returned by this command may immediately be out of date.
--
-- The state of an event can be updated by the host. The state of
-- the event is immediately changed, and subsequent calls to
-- getEventStatus will return the new state. If an event is
-- already in the requested state, then updating it to the same state has
-- no effect.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Event
getEventStatus :: forall io. MonadIO io => Device -> Event -> io Result
-- | vkSetEvent - Set an event to signaled state
--
-- Description
--
-- When setEvent is executed on the host, it defines an /event
-- signal operation/ which sets the event to the signaled state.
--
-- If event is already in the signaled state when
-- setEvent is executed, then setEvent has no effect, and
-- no event signal operation occurs.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - event must be a valid Event handle
-- - event must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to event must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Event
setEvent :: forall io. MonadIO io => Device -> Event -> io ()
-- | vkResetEvent - Reset an event to non-signaled state
--
-- Description
--
-- When resetEvent is executed on the host, it defines an /event
-- unsignal operation/ which resets the event to the unsignaled state.
--
-- If event is already in the unsignaled state when
-- resetEvent is executed, then resetEvent has no effect,
-- and no event unsignal operation occurs.
--
-- Valid Usage
--
--
-- - event must not be waited on by a
-- cmdWaitEvents command that is currently executing
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - event must be a valid Event handle
-- - event must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to event must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Event
resetEvent :: forall io. MonadIO io => Device -> Event -> io ()
-- | VkEventCreateInfo - Structure specifying parameters of a newly created
-- event
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- EventCreateFlags, StructureType, createEvent
data EventCreateInfo
EventCreateInfo :: EventCreateFlags -> EventCreateInfo
-- | flags is reserved for future use.
--
-- flags must be 0
[$sel:flags:EventCreateInfo] :: EventCreateInfo -> EventCreateFlags
-- | VkEvent - Opaque handle to an event object
--
-- See Also
--
-- cmdResetEvent, cmdSetEvent, cmdWaitEvents,
-- createEvent, destroyEvent, getEventStatus,
-- resetEvent, setEvent
newtype Event
Event :: Word64 -> Event
-- | VkEventCreateFlags - Reserved for future use
--
-- Description
--
-- EventCreateFlags is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- See Also
--
-- EventCreateInfo
newtype EventCreateFlags
EventCreateFlags :: Flags -> EventCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.Event.EventCreateInfo
instance GHC.Generics.Generic Vulkan.Core10.Event.EventCreateInfo
instance GHC.Show.Show Vulkan.Core10.Event.EventCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Event.EventCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Event.EventCreateInfo
instance Foreign.Storable.Storable Vulkan.Core10.Event.EventCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.Event.EventCreateInfo
module Vulkan.Core10.CommandPool
-- | vkCreateCommandPool - Create a new command pool object
--
-- Valid Usage
--
--
-- - pCreateInfo->queueFamilyIndex must be the index
-- of a queue family available in the logical device device
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- CommandPoolCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pCommandPool must be a valid pointer to a
-- CommandPool handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, CommandPool,
-- CommandPoolCreateInfo, Device
createCommandPool :: forall io. MonadIO io => Device -> CommandPoolCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io CommandPool
-- | A convenience wrapper to make a compatible pair of calls to
-- createCommandPool and destroyCommandPool
--
-- To ensure that destroyCommandPool is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withCommandPool :: forall io r. MonadIO io => Device -> CommandPoolCreateInfo -> Maybe AllocationCallbacks -> (io CommandPool -> (CommandPool -> io ()) -> r) -> r
-- | vkDestroyCommandPool - Destroy a command pool object
--
-- Description
--
-- When a pool is destroyed, all command buffers allocated from the pool
-- are freed.
--
-- Any primary command buffer allocated from another CommandPool
-- that is in the recording or executable state and has a
-- secondary command buffer allocated from commandPool recorded
-- into it, becomes invalid.
--
-- Valid Usage
--
--
--
--
-- - If AllocationCallbacks were provided when
-- commandPool was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- commandPool was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If commandPool is not NULL_HANDLE,
-- commandPool must be a valid CommandPool
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If commandPool is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to commandPool must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, CommandPool, Device
destroyCommandPool :: forall io. MonadIO io => Device -> CommandPool -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkResetCommandPool - Reset a command pool
--
-- Description
--
-- Resetting a command pool recycles all of the resources from all of the
-- command buffers allocated from the command pool back to the command
-- pool. All command buffers that have been allocated from the command
-- pool are put in the initial state.
--
-- Any primary command buffer allocated from another CommandPool
-- that is in the recording or executable state and has a
-- secondary command buffer allocated from commandPool recorded
-- into it, becomes invalid.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - commandPool must be a valid CommandPool
-- handle
-- - flags must be a valid combination of
-- CommandPoolResetFlagBits values
-- - commandPool must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to commandPool must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandPool, CommandPoolResetFlags, Device
resetCommandPool :: forall io. MonadIO io => Device -> CommandPool -> CommandPoolResetFlags -> io ()
-- | VkCommandPoolCreateInfo - Structure specifying parameters of a newly
-- created command pool
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- CommandPoolCreateFlags, StructureType,
-- createCommandPool
data CommandPoolCreateInfo
CommandPoolCreateInfo :: CommandPoolCreateFlags -> Word32 -> CommandPoolCreateInfo
-- | flags is a bitmask of CommandPoolCreateFlagBits
-- indicating usage behavior for the pool and command buffers allocated
-- from it.
[$sel:flags:CommandPoolCreateInfo] :: CommandPoolCreateInfo -> CommandPoolCreateFlags
-- | queueFamilyIndex designates a queue family as described in
-- section Queue Family Properties. All command buffers allocated
-- from this command pool must be submitted on queues from the
-- same queue family.
[$sel:queueFamilyIndex:CommandPoolCreateInfo] :: CommandPoolCreateInfo -> Word32
-- | VkCommandPool - Opaque handle to a command pool object
--
-- See Also
--
-- CommandBufferAllocateInfo, createCommandPool,
-- destroyCommandPool, freeCommandBuffers,
-- resetCommandPool, trimCommandPool,
-- trimCommandPoolKHR
newtype CommandPool
CommandPool :: Word64 -> CommandPool
-- | VkCommandPoolCreateFlagBits - Bitmask specifying usage behavior for a
-- command pool
--
-- See Also
--
-- CommandPoolCreateFlags
newtype CommandPoolCreateFlagBits
CommandPoolCreateFlagBits :: Flags -> CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_TRANSIENT_BIT specifies that command
-- buffers allocated from the pool will be short-lived, meaning that they
-- will be reset or freed in a relatively short timeframe. This flag
-- may be used by the implementation to control memory allocation
-- behavior within the pool.
pattern COMMAND_POOL_CREATE_TRANSIENT_BIT :: CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT allows any command
-- buffer allocated from a pool to be individually reset to the
-- initial state; either by calling resetCommandBuffer, or
-- via the implicit reset when calling beginCommandBuffer. If this
-- flag is not set on a pool, then resetCommandBuffer must
-- not be called for any command buffer allocated from that pool.
pattern COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT :: CommandPoolCreateFlagBits
-- | COMMAND_POOL_CREATE_PROTECTED_BIT specifies that command
-- buffers allocated from the pool are protected command buffers.
pattern COMMAND_POOL_CREATE_PROTECTED_BIT :: CommandPoolCreateFlagBits
type CommandPoolCreateFlags = CommandPoolCreateFlagBits
-- | VkCommandPoolResetFlagBits - Bitmask controlling behavior of a command
-- pool reset
--
-- See Also
--
-- CommandPoolResetFlags
newtype CommandPoolResetFlagBits
CommandPoolResetFlagBits :: Flags -> CommandPoolResetFlagBits
-- | COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT specifies that
-- resetting a command pool recycles all of the resources from the
-- command pool back to the system.
pattern COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT :: CommandPoolResetFlagBits
type CommandPoolResetFlags = CommandPoolResetFlagBits
instance GHC.Classes.Eq Vulkan.Core10.CommandPool.CommandPoolCreateInfo
instance GHC.Generics.Generic Vulkan.Core10.CommandPool.CommandPoolCreateInfo
instance GHC.Show.Show Vulkan.Core10.CommandPool.CommandPoolCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandPool.CommandPoolCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandPool.CommandPoolCreateInfo
instance Foreign.Storable.Storable Vulkan.Core10.CommandPool.CommandPoolCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.CommandPool.CommandPoolCreateInfo
module Vulkan.Core10.BufferView
-- | vkCreateBufferView - Create a new buffer view object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- BufferViewCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pView must be a valid pointer to a
-- BufferView handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, BufferView,
-- BufferViewCreateInfo, Device
createBufferView :: forall io. MonadIO io => Device -> BufferViewCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io BufferView
-- | A convenience wrapper to make a compatible pair of calls to
-- createBufferView and destroyBufferView
--
-- To ensure that destroyBufferView is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withBufferView :: forall io r. MonadIO io => Device -> BufferViewCreateInfo -> Maybe AllocationCallbacks -> (io BufferView -> (BufferView -> io ()) -> r) -> r
-- | vkDestroyBufferView - Destroy a buffer view object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to bufferView
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- bufferView was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- bufferView was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If bufferView is not NULL_HANDLE,
-- bufferView must be a valid BufferView
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If bufferView is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to bufferView must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, BufferView, Device
destroyBufferView :: forall io. MonadIO io => Device -> BufferView -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkBufferViewCreateInfo - Structure specifying parameters of a newly
-- created buffer view
--
-- Valid Usage
--
--
-- - offset must be less than the size of
-- buffer
--
--
--
-- - If range is not equal to WHOLE_SIZE,
-- range must be greater than 0
-- - If range is not equal to WHOLE_SIZE,
-- range must be an integer multiple of the texel block
-- size of format
-- - If range is not equal to WHOLE_SIZE, the number of
-- texel buffer elements given by (⌊range / (texel block size)⌋
-- × (texels per block)) where texel block size and texels per block are
-- as defined in the Compatible Formats table for format,
-- must be less than or equal to
-- PhysicalDeviceLimits::maxTexelBufferElements
-- - If range is not equal to WHOLE_SIZE, the sum of
-- offset and range must be less than or equal
-- to the size of buffer
-- - If range is equal to WHOLE_SIZE, the number of
-- texel buffer elements given by (⌊(size - offset) / (texel
-- block size)⌋ × (texels per block)) where size is the size of
-- buffer, and texel block size and texels per block are as
-- defined in the Compatible Formats table for format,
-- must be less than or equal to
-- PhysicalDeviceLimits::maxTexelBufferElements
-- - buffer must have been created with a
-- usage value containing at least one of
-- BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT or
-- BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT
-- - If buffer was created with usage containing
-- BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, format
-- must be supported for uniform texel buffers, as specified by
-- the FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT flag in
-- FormatProperties::bufferFeatures returned by
-- getPhysicalDeviceFormatProperties
-- - If buffer was created with usage containing
-- BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, format
-- must be supported for storage texel buffers, as specified by
-- the FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT flag in
-- FormatProperties::bufferFeatures returned by
-- getPhysicalDeviceFormatProperties
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - If the texelBufferAlignment feature is not enabled,
-- offset must be a multiple of
-- PhysicalDeviceLimits::minTexelBufferOffsetAlignment
-- - If the texelBufferAlignment feature is enabled and if
-- buffer was created with usage containing
-- BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, offset
-- must be a multiple of the lesser of
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT::storageTexelBufferOffsetAlignmentBytes
-- or, if
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT::storageTexelBufferOffsetSingleTexelAlignment
-- is TRUE, the size of a texel of the requested format.
-- If the size of a texel is a multiple of three bytes, then the size of
-- a single component of format is used instead
-- - If the texelBufferAlignment feature is enabled and if
-- buffer was created with usage containing
-- BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, offset
-- must be a multiple of the lesser of
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT::uniformTexelBufferOffsetAlignmentBytes
-- or, if
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT::uniformTexelBufferOffsetSingleTexelAlignment
-- is TRUE, the size of a texel of the requested format.
-- If the size of a texel is a multiple of three bytes, then the size of
-- a single component of format is used instead
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - buffer must be a valid Buffer handle
-- - format must be a valid Format value
--
--
-- See Also
--
-- Buffer, BufferViewCreateFlags, DeviceSize,
-- Format, StructureType, createBufferView
data BufferViewCreateInfo
BufferViewCreateInfo :: BufferViewCreateFlags -> Buffer -> Format -> DeviceSize -> DeviceSize -> BufferViewCreateInfo
-- | flags is reserved for future use.
[$sel:flags:BufferViewCreateInfo] :: BufferViewCreateInfo -> BufferViewCreateFlags
-- | buffer is a Buffer on which the view will be created.
[$sel:buffer:BufferViewCreateInfo] :: BufferViewCreateInfo -> Buffer
-- | format is a Format describing the format of the data
-- elements in the buffer.
[$sel:format:BufferViewCreateInfo] :: BufferViewCreateInfo -> Format
-- | offset is an offset in bytes from the base address of the
-- buffer. Accesses to the buffer view from shaders use addressing that
-- is relative to this starting offset.
[$sel:offset:BufferViewCreateInfo] :: BufferViewCreateInfo -> DeviceSize
-- | range is a size in bytes of the buffer view. If
-- range is equal to WHOLE_SIZE, the range from
-- offset to the end of the buffer is used. If WHOLE_SIZE
-- is used and the remaining size of the buffer is not a multiple of the
-- texel block size of format, the nearest smaller
-- multiple is used.
[$sel:range:BufferViewCreateInfo] :: BufferViewCreateInfo -> DeviceSize
-- | VkBufferView - Opaque handle to a buffer view object
--
-- See Also
--
-- WriteDescriptorSet, createBufferView,
-- destroyBufferView
newtype BufferView
BufferView :: Word64 -> BufferView
-- | VkBufferViewCreateFlags - Reserved for future use
--
-- Description
--
-- BufferViewCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- BufferViewCreateInfo
newtype BufferViewCreateFlags
BufferViewCreateFlags :: Flags -> BufferViewCreateFlags
instance GHC.Classes.Eq Vulkan.Core10.BufferView.BufferViewCreateInfo
instance GHC.Generics.Generic Vulkan.Core10.BufferView.BufferViewCreateInfo
instance GHC.Show.Show Vulkan.Core10.BufferView.BufferViewCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.BufferView.BufferViewCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.BufferView.BufferViewCreateInfo
instance Foreign.Storable.Storable Vulkan.Core10.BufferView.BufferViewCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.BufferView.BufferViewCreateInfo
module Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities
-- | vkGetPhysicalDeviceExternalSemaphoreProperties - Function for querying
-- external semaphore handle capabilities.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalSemaphoreProperties, PhysicalDevice,
-- PhysicalDeviceExternalSemaphoreInfo
getPhysicalDeviceExternalSemaphoreProperties :: forall a io. (Extendss PhysicalDeviceExternalSemaphoreInfo a, PokeChain a, MonadIO io) => PhysicalDevice -> PhysicalDeviceExternalSemaphoreInfo a -> io ExternalSemaphoreProperties
-- | VkPhysicalDeviceExternalSemaphoreInfo - Structure specifying semaphore
-- creation parameters.
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlagBits, StructureType,
-- getPhysicalDeviceExternalSemaphoreProperties,
-- getPhysicalDeviceExternalSemaphorePropertiesKHR
data PhysicalDeviceExternalSemaphoreInfo (es :: [Type])
PhysicalDeviceExternalSemaphoreInfo :: Chain es -> ExternalSemaphoreHandleTypeFlagBits -> PhysicalDeviceExternalSemaphoreInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PhysicalDeviceExternalSemaphoreInfo] :: PhysicalDeviceExternalSemaphoreInfo (es :: [Type]) -> Chain es
-- | handleType is a ExternalSemaphoreHandleTypeFlagBits
-- value specifying the external semaphore handle type for which
-- capabilities will be returned.
[$sel:handleType:PhysicalDeviceExternalSemaphoreInfo] :: PhysicalDeviceExternalSemaphoreInfo (es :: [Type]) -> ExternalSemaphoreHandleTypeFlagBits
-- | VkExternalSemaphoreProperties - Structure describing supported
-- external semaphore handle features
--
-- Description
--
-- If handleType is not supported by the implementation, then
-- ExternalSemaphoreProperties::externalSemaphoreFeatures
-- will be set to zero.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalSemaphoreFeatureFlags,
-- ExternalSemaphoreHandleTypeFlags, StructureType,
-- getPhysicalDeviceExternalSemaphoreProperties,
-- getPhysicalDeviceExternalSemaphorePropertiesKHR
data ExternalSemaphoreProperties
ExternalSemaphoreProperties :: ExternalSemaphoreHandleTypeFlags -> ExternalSemaphoreHandleTypeFlags -> ExternalSemaphoreFeatureFlags -> ExternalSemaphoreProperties
-- | exportFromImportedHandleTypes is a bitmask of
-- ExternalSemaphoreHandleTypeFlagBits specifying which types of
-- imported handle handleType can be exported from.
[$sel:exportFromImportedHandleTypes:ExternalSemaphoreProperties] :: ExternalSemaphoreProperties -> ExternalSemaphoreHandleTypeFlags
-- | compatibleHandleTypes is a bitmask of
-- ExternalSemaphoreHandleTypeFlagBits specifying handle types
-- which can be specified at the same time as handleType
-- when creating a semaphore.
[$sel:compatibleHandleTypes:ExternalSemaphoreProperties] :: ExternalSemaphoreProperties -> ExternalSemaphoreHandleTypeFlags
-- | externalSemaphoreFeatures is a bitmask of
-- ExternalSemaphoreFeatureFlagBits describing the features of
-- handleType.
[$sel:externalSemaphoreFeatures:ExternalSemaphoreProperties] :: ExternalSemaphoreProperties -> ExternalSemaphoreFeatureFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external
-- semaphore handle types
--
-- Description
--
-- Note
--
-- Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT
-- generated by the implementation may represent either Linux Sync Files
-- or Android Fences at the implementation’s discretion. Applications
-- should only use operations defined for both types of file
-- descriptors, unless they know via means external to Vulkan the type of
-- the file descriptor, or are prepared to deal with the system-defined
-- operation failures resulting from using the wrong type.
--
-- Some external semaphore handle types can only be shared within the
-- same underlying physical device and/or the same driver version, as
-- defined in the following table:
--
-- TODO: table
--
-- External semaphore handle types compatibility
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlags,
-- ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- PhysicalDeviceExternalSemaphoreInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR
newtype ExternalSemaphoreHandleTypeFlagBits
ExternalSemaphoreHandleTypeFlagBits :: Flags -> ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX
-- file descriptor handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It must be compatible with
-- the POSIX system calls dup, dup2, close,
-- and the non-standard system call dup3. Additionally, it
-- must be transportable over a socket using an
-- SCM_RIGHTS control message. It owns a reference to the
-- underlying synchronization primitive represented by its Vulkan
-- semaphore object.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT
-- handle that has only limited valid usage outside of Vulkan and other
-- compatible APIs. It must be compatible with the functions
-- DuplicateHandle, CloseHandle,
-- CompareObjectHandles, GetHandleInformation, and
-- SetHandleInformation. It owns a reference to the underlying
-- synchronization primitive represented by its Vulkan semaphore object.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a
-- global share handle that has only limited valid usage outside of
-- Vulkan and other compatible APIs. It is not compatible with any native
-- APIs. It does not own a reference to the underlying synchronization
-- primitive represented its Vulkan semaphore object, and will therefore
-- become invalid when all Vulkan semaphore objects associated with it
-- are destroyed.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT
-- handle returned by ID3D12Device::CreateSharedHandle
-- referring to a Direct3D 12 fence. It owns a reference to the
-- underlying synchronization primitive associated with the Direct3D
-- fence.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT :: ExternalSemaphoreHandleTypeFlagBits
-- | EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX
-- file descriptor handle to a Linux Sync File or Android Fence object.
-- It can be used with any native API accepting a valid sync file or
-- fence as input. It owns a reference to the underlying synchronization
-- primitive associated with the file descriptor. Implementations which
-- support importing this handle type must accept any type of sync
-- or fence FD supported by the native system they are running on.
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT :: ExternalSemaphoreHandleTypeFlagBits
type ExternalSemaphoreHandleTypeFlags = ExternalSemaphoreHandleTypeFlagBits
-- | VkExternalSemaphoreFeatureFlagBits - Bitfield describing features of
-- an external semaphore handle type
--
-- See Also
--
-- ExternalSemaphoreFeatureFlags
newtype ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits :: Flags -> ExternalSemaphoreFeatureFlagBits
-- | EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT specifies that
-- handles of this type can be exported from Vulkan semaphore
-- objects.
pattern EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT :: ExternalSemaphoreFeatureFlagBits
-- | EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT specifies that
-- handles of this type can be imported as Vulkan semaphore
-- objects.
pattern EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT :: ExternalSemaphoreFeatureFlagBits
type ExternalSemaphoreFeatureFlags = ExternalSemaphoreFeatureFlagBits
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es)
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.ExternalSemaphoreProperties
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities.PhysicalDeviceExternalSemaphoreInfo es)
module Vulkan.Extensions.VK_KHR_external_semaphore_capabilities
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR :: StructureType
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR :: ExternalSemaphoreHandleTypeFlagBits
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR :: ExternalSemaphoreHandleTypeFlagBits
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR :: ExternalSemaphoreHandleTypeFlagBits
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR :: ExternalSemaphoreHandleTypeFlagBits
pattern EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR :: ExternalSemaphoreHandleTypeFlagBits
pattern EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR :: ExternalSemaphoreFeatureFlagBits
pattern EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR :: ExternalSemaphoreFeatureFlagBits
getPhysicalDeviceExternalSemaphorePropertiesKHR :: forall (a :: [Type]) io. (Extendss PhysicalDeviceExternalSemaphoreInfo a, PokeChain a, MonadIO io) => PhysicalDevice -> PhysicalDeviceExternalSemaphoreInfo a -> io ExternalSemaphoreProperties
type ExternalSemaphoreHandleTypeFlagsKHR = ExternalSemaphoreHandleTypeFlags
type ExternalSemaphoreFeatureFlagsKHR = ExternalSemaphoreFeatureFlags
type ExternalSemaphoreHandleTypeFlagBitsKHR = ExternalSemaphoreHandleTypeFlagBits
type ExternalSemaphoreFeatureFlagBitsKHR = ExternalSemaphoreFeatureFlagBits
type PhysicalDeviceExternalSemaphoreInfoKHR = PhysicalDeviceExternalSemaphoreInfo
type ExternalSemaphorePropertiesKHR = ExternalSemaphoreProperties
type KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION = 1
pattern KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_semaphore_capabilities"
pattern KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR :: StructureType
pattern LUID_SIZE_KHR :: Integral a => a
module Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2
-- | vkBindBufferMemory2 - Bind device memory to buffer objects
--
-- Description
--
-- On some implementations, it may be more efficient to batch
-- memory bindings into a single command.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- BindBufferMemoryInfo, Device
bindBufferMemory2 :: forall io. MonadIO io => Device -> ("bindInfos" ::: Vector (SomeStruct BindBufferMemoryInfo)) -> io ()
-- | vkBindImageMemory2 - Bind device memory to image objects
--
-- Description
--
-- On some implementations, it may be more efficient to batch
-- memory bindings into a single command.
--
-- Valid Usage
--
--
--
--
-- - pBindInfos must not refer to the same image
-- subresource more than once
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pBindInfos must be a valid pointer to an array of
-- bindInfoCount valid BindImageMemoryInfo
-- structures
-- - bindInfoCount must be greater than 0
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- BindImageMemoryInfo, Device
bindImageMemory2 :: forall io. MonadIO io => Device -> ("bindInfos" ::: Vector (SomeStruct BindImageMemoryInfo)) -> io ()
-- | VkBindBufferMemoryInfo - Structure specifying how to bind a buffer to
-- memory
--
-- Valid Usage
--
--
-- - buffer must not already be backed by a memory
-- object
--
--
--
-- - buffer must not have been created with any sparse
-- memory binding flags
-- - memoryOffset must be less than the size of
-- memory
-- - memory must have been allocated using one of the
-- memory types allowed in the memoryTypeBits member of the
-- MemoryRequirements structure returned from a call to
-- getBufferMemoryRequirements with buffer
-- - memoryOffset must be an integer multiple of the
-- alignment member of the MemoryRequirements structure
-- returned from a call to getBufferMemoryRequirements with
-- buffer
-- - The size member of the MemoryRequirements
-- structure returned from a call to getBufferMemoryRequirements
-- with buffer must be less than or equal to the size of
-- memory minus memoryOffset
-- - If buffer requires a dedicated allocation(as reported by
-- getBufferMemoryRequirements2 in
-- MemoryDedicatedRequirements::requiresDedicatedAllocation for
-- buffer), memory must have been created with
-- MemoryDedicatedAllocateInfo::buffer equal to
-- buffer and memoryOffset must be zero
-- - If the MemoryAllocateInfo provided when memory was
-- allocated included a MemoryDedicatedAllocateInfo structure in
-- its pNext chain, and
-- MemoryDedicatedAllocateInfo::buffer was not
-- NULL_HANDLE, then buffer must equal
-- MemoryDedicatedAllocateInfo::buffer and
-- memoryOffset must be zero
-- - If buffer was created with
-- DedicatedAllocationBufferCreateInfoNV::dedicatedAllocation
-- equal to TRUE, memory must have been created
-- with DedicatedAllocationMemoryAllocateInfoNV::buffer
-- equal to buffer and memoryOffset must be
-- zero
-- - If the pNext chain includes a
-- BindBufferMemoryDeviceGroupInfo structure, all instances of
-- memory specified by
-- BindBufferMemoryDeviceGroupInfo::pDeviceIndices
-- must have been allocated
-- - If the value of
-- ExportMemoryAllocateInfo::handleTypes used to allocate
-- memory is not 0, it must include at least one
-- of the handles set in
-- ExternalMemoryBufferCreateInfo::handleTypes when
-- buffer was created
-- - If memory was created by a memory import operation, that
-- is not ImportAndroidHardwareBufferInfoANDROID with a
-- non-NULL buffer value, the external handle type of
-- the imported memory must also have been set in
-- ExternalMemoryBufferCreateInfo::handleTypes when
-- buffer was created
-- - If memory was created with the
-- ImportAndroidHardwareBufferInfoANDROID memory import operation
-- with a non-NULL buffer value,
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- must also have been set in
-- ExternalMemoryBufferCreateInfo::handleTypes when
-- buffer was created
-- - If the
-- PhysicalDeviceBufferDeviceAddressFeaturesKHR::bufferDeviceAddress
-- feature is enabled and buffer was created with the
-- BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR bit set,
-- memory must have been allocated with the
-- MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR bit set
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of BindBufferMemoryDeviceGroupInfo
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - buffer must be a valid Buffer handle
-- - memory must be a valid DeviceMemory
-- handle
-- - Both of buffer, and memory must have been
-- created, allocated, or retrieved from the same Device
--
--
-- See Also
--
-- Buffer, DeviceMemory, DeviceSize,
-- StructureType, bindBufferMemory2,
-- bindBufferMemory2KHR
data BindBufferMemoryInfo (es :: [Type])
BindBufferMemoryInfo :: Chain es -> Buffer -> DeviceMemory -> DeviceSize -> BindBufferMemoryInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:BindBufferMemoryInfo] :: BindBufferMemoryInfo (es :: [Type]) -> Chain es
-- | buffer is the buffer to be attached to memory.
[$sel:buffer:BindBufferMemoryInfo] :: BindBufferMemoryInfo (es :: [Type]) -> Buffer
-- | memory is a DeviceMemory object describing the device
-- memory to attach.
[$sel:memory:BindBufferMemoryInfo] :: BindBufferMemoryInfo (es :: [Type]) -> DeviceMemory
-- | memoryOffset is the start offset of the region of
-- memory which is to be bound to the buffer. The number of
-- bytes returned in the MemoryRequirements::size member
-- in memory, starting from memoryOffset bytes, will be
-- bound to the specified buffer.
[$sel:memoryOffset:BindBufferMemoryInfo] :: BindBufferMemoryInfo (es :: [Type]) -> DeviceSize
-- | VkBindImageMemoryInfo - Structure specifying how to bind an image to
-- memory
--
-- Valid Usage
--
--
-- - image must not already be backed by a memory
-- object
--
--
--
-- - image must not have been created with any sparse
-- memory binding flags
-- - memoryOffset must be less than the size of
-- memory
-- - If the pNext chain does not include a
-- BindImagePlaneMemoryInfo structure, memory must
-- have been allocated using one of the memory types allowed in the
-- memoryTypeBits member of the MemoryRequirements
-- structure returned from a call to getImageMemoryRequirements2
-- with image
-- - If the pNext chain does not include a
-- BindImagePlaneMemoryInfo structure, memoryOffset
-- must be an integer multiple of the alignment member of
-- the MemoryRequirements structure returned from a call to
-- getImageMemoryRequirements2 with image
-- - If the pNext chain does not include a
-- BindImagePlaneMemoryInfo structure, the difference of the size
-- of memory and memoryOffset must be greater
-- than or equal to the size member of the
-- MemoryRequirements structure returned from a call to
-- getImageMemoryRequirements2 with the same image
-- - If the pNext chain includes a
-- BindImagePlaneMemoryInfo structure, image must
-- have been created with the IMAGE_CREATE_DISJOINT_BIT bit
-- set
-- - If the pNext chain includes a
-- BindImagePlaneMemoryInfo structure, memory must
-- have been allocated using one of the memory types allowed in the
-- memoryTypeBits member of the MemoryRequirements
-- structure returned from a call to getImageMemoryRequirements2
-- with image and where
-- BindImagePlaneMemoryInfo::planeAspect corresponds to
-- the ImagePlaneMemoryRequirementsInfo::planeAspect in
-- the ImageMemoryRequirementsInfo2 structure’s pNext
-- chain
-- - If the pNext chain includes a
-- BindImagePlaneMemoryInfo structure, memoryOffset
-- must be an integer multiple of the alignment member of
-- the MemoryRequirements structure returned from a call to
-- getImageMemoryRequirements2 with image and where
-- BindImagePlaneMemoryInfo::planeAspect corresponds to
-- the ImagePlaneMemoryRequirementsInfo::planeAspect in
-- the ImageMemoryRequirementsInfo2 structure’s pNext
-- chain
-- - If the pNext chain includes a
-- BindImagePlaneMemoryInfo structure, the difference of the size
-- of memory and memoryOffset must be greater
-- than or equal to the size member of the
-- MemoryRequirements structure returned from a call to
-- getImageMemoryRequirements2 with the same image and
-- where BindImagePlaneMemoryInfo::planeAspect
-- corresponds to the
-- ImagePlaneMemoryRequirementsInfo::planeAspect in the
-- ImageMemoryRequirementsInfo2 structure’s pNext
-- chain
-- - If image requires a dedicated allocation (as reported by
-- getImageMemoryRequirements2 in
-- MemoryDedicatedRequirements::requiresDedicatedAllocation for
-- image), memory must have been created with
-- MemoryDedicatedAllocateInfo::image equal to
-- image and memoryOffset must be zero
-- - If the dedicated allocation image aliasing feature is not
-- enabled, and the MemoryAllocateInfo provided when
-- memory was allocated included a
-- MemoryDedicatedAllocateInfo structure in its pNext
-- chain, and MemoryDedicatedAllocateInfo::image was not
-- NULL_HANDLE, then image must equal
-- MemoryDedicatedAllocateInfo::image and
-- memoryOffset must be zero
-- - If the dedicated allocation image aliasing feature is
-- enabled, and the MemoryAllocateInfo provided when
-- memory was allocated included a
-- MemoryDedicatedAllocateInfo structure in its pNext
-- chain, and MemoryDedicatedAllocateInfo::image was not
-- NULL_HANDLE, then memoryOffset must be zero,
-- and image must be either equal to
-- MemoryDedicatedAllocateInfo::image or an image that
-- was created using the same parameters in ImageCreateInfo, with
-- the exception that extent and arrayLayers may
-- differ subject to the following restrictions: every dimension in the
-- extent parameter of the image being bound must be
-- equal to or smaller than the original image for which the allocation
-- was created; and the arrayLayers parameter of the image being
-- bound must be equal to or smaller than the original image for
-- which the allocation was created
-- - If image was created with
-- DedicatedAllocationImageCreateInfoNV::dedicatedAllocation
-- equal to TRUE, memory must have been created
-- with DedicatedAllocationMemoryAllocateInfoNV::image
-- equal to image and memoryOffset must be
-- zero
-- - If the pNext chain includes a
-- BindImageMemoryDeviceGroupInfo structure, all instances of
-- memory specified by
-- BindImageMemoryDeviceGroupInfo::pDeviceIndices
-- must have been allocated
-- - If the pNext chain includes a
-- BindImageMemoryDeviceGroupInfo structure, and
-- BindImageMemoryDeviceGroupInfo::splitInstanceBindRegionCount
-- is not zero, then image must have been created with
-- the IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT bit set
-- - If the pNext chain includes a
-- BindImageMemoryDeviceGroupInfo structure, all elements of
-- BindImageMemoryDeviceGroupInfo::pSplitInstanceBindRegions
-- must be valid rectangles contained within the dimensions of
-- image
-- - If the pNext chain includes a
-- BindImageMemoryDeviceGroupInfo structure, the union of the
-- areas of all elements of
-- BindImageMemoryDeviceGroupInfo::pSplitInstanceBindRegions
-- that correspond to the same instance of image must
-- cover the entire image
-- - If image was created with a valid swapchain handle in
-- ImageSwapchainCreateInfoKHR::swapchain, then the
-- pNext chain must include a
-- BindImageMemorySwapchainInfoKHR structure containing the same
-- swapchain handle
-- - If the pNext chain includes a
-- BindImageMemorySwapchainInfoKHR structure, memory
-- must be NULL_HANDLE
-- - If the pNext chain does not include a
-- BindImageMemorySwapchainInfoKHR structure, memory
-- must be a valid DeviceMemory handle
-- - If the value of
-- ExportMemoryAllocateInfo::handleTypes used to allocate
-- memory is not 0, it must include at least one
-- of the handles set in
-- ExternalMemoryImageCreateInfo::handleTypes when
-- image was created
-- - If memory was created by a memory import operation, that
-- is not ImportAndroidHardwareBufferInfoANDROID with a
-- non-NULL buffer value, the external handle type of
-- the imported memory must also have been set in
-- ExternalMemoryImageCreateInfo::handleTypes when
-- image was created
-- - If memory was created with the
-- ImportAndroidHardwareBufferInfoANDROID memory import operation
-- with a non-NULL buffer value,
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- must also have been set in
-- ExternalMemoryImageCreateInfo::handleTypes when
-- image was created
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of BindImageMemoryDeviceGroupInfo,
-- BindImageMemorySwapchainInfoKHR, or
-- BindImagePlaneMemoryInfo
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - image must be a valid Image handle
-- - Both of image, and memory that are valid handles
-- of non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- See Also
--
-- DeviceMemory, DeviceSize, Image,
-- StructureType, bindImageMemory2,
-- bindImageMemory2KHR
data BindImageMemoryInfo (es :: [Type])
BindImageMemoryInfo :: Chain es -> Image -> DeviceMemory -> DeviceSize -> BindImageMemoryInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:BindImageMemoryInfo] :: BindImageMemoryInfo (es :: [Type]) -> Chain es
-- | image is the image to be attached to memory.
[$sel:image:BindImageMemoryInfo] :: BindImageMemoryInfo (es :: [Type]) -> Image
-- | memory is a DeviceMemory object describing the device
-- memory to attach.
[$sel:memory:BindImageMemoryInfo] :: BindImageMemoryInfo (es :: [Type]) -> DeviceMemory
-- | memoryOffset is the start offset of the region of
-- memory which is to be bound to the image. The number of bytes
-- returned in the MemoryRequirements::size member in
-- memory, starting from memoryOffset bytes, will be
-- bound to the specified image.
[$sel:memoryOffset:BindImageMemoryInfo] :: BindImageMemoryInfo (es :: [Type]) -> DeviceSize
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindImageMemoryInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2.BindBufferMemoryInfo es)
module Vulkan.Extensions.VK_KHR_bind_memory2
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR :: StructureType
pattern IMAGE_CREATE_ALIAS_BIT_KHR :: ImageCreateFlagBits
bindBufferMemory2KHR :: MonadIO io => Device -> ("bindInfos" ::: Vector (SomeStruct BindBufferMemoryInfo)) -> io ()
bindImageMemory2KHR :: MonadIO io => Device -> ("bindInfos" ::: Vector (SomeStruct BindImageMemoryInfo)) -> io ()
type BindBufferMemoryInfoKHR = BindBufferMemoryInfo
type BindImageMemoryInfoKHR = BindImageMemoryInfo
type KHR_BIND_MEMORY_2_SPEC_VERSION = 1
pattern KHR_BIND_MEMORY_2_SPEC_VERSION :: forall a. Integral a => a
type KHR_BIND_MEMORY_2_EXTENSION_NAME = "VK_KHR_bind_memory2"
pattern KHR_BIND_MEMORY_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.SparseResourceMemoryManagement
-- | vkGetImageSparseMemoryRequirements - Query the memory requirements for
-- a sparse image
--
-- Description
--
-- If pSparseMemoryRequirements is NULL, then the
-- number of sparse memory requirements available is returned in
-- pSparseMemoryRequirementCount. Otherwise,
-- pSparseMemoryRequirementCount must point to a variable
-- set by the user to the number of elements in the
-- pSparseMemoryRequirements array, and on return the variable
-- is overwritten with the number of structures actually written to
-- pSparseMemoryRequirements. If
-- pSparseMemoryRequirementCount is less than the number of
-- sparse memory requirements available, at most
-- pSparseMemoryRequirementCount structures will be written.
--
-- If the image was not created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT then
-- pSparseMemoryRequirementCount will be set to zero and
-- pSparseMemoryRequirements will not be written to.
--
-- Note
--
-- It is legal for an implementation to report a larger value in
-- MemoryRequirements::size than would be obtained by
-- adding together memory sizes for all
-- SparseImageMemoryRequirements returned by
-- getImageSparseMemoryRequirements. This may occur when
-- the implementation requires unused padding in the address range
-- describing the resource.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - image must be a valid Image handle
-- - pSparseMemoryRequirementCount must be a valid
-- pointer to a uint32_t value
-- - If the value referenced by pSparseMemoryRequirementCount
-- is not 0, and pSparseMemoryRequirements is not
-- NULL, pSparseMemoryRequirements must be a
-- valid pointer to an array of pSparseMemoryRequirementCount
-- SparseImageMemoryRequirements structures
-- - image must have been created, allocated, or
-- retrieved from device
--
--
-- See Also
--
-- Device, Image, SparseImageMemoryRequirements
getImageSparseMemoryRequirements :: forall io. MonadIO io => Device -> Image -> io ("sparseMemoryRequirements" ::: Vector SparseImageMemoryRequirements)
-- | vkGetPhysicalDeviceSparseImageFormatProperties - Retrieve properties
-- of an image format applied to sparse images
--
-- Description
--
-- If pProperties is NULL, then the number of sparse
-- format properties available is returned in pPropertyCount.
-- Otherwise, pPropertyCount must point to a variable set
-- by the user to the number of elements in the pProperties
-- array, and on return the variable is overwritten with the number of
-- structures actually written to pProperties. If
-- pPropertyCount is less than the number of sparse format
-- properties available, at most pPropertyCount structures will
-- be written.
--
-- If IMAGE_CREATE_SPARSE_RESIDENCY_BIT is not supported for the
-- given arguments, pPropertyCount will be set to zero upon
-- return, and no data will be written to pProperties.
--
-- Multiple aspects are returned for depth/stencil images that are
-- implemented as separate planes by the implementation. The depth and
-- stencil data planes each have unique
-- SparseImageFormatProperties data.
--
-- Depth/stencil images with depth and stencil data interleaved into a
-- single plane will return a single SparseImageFormatProperties
-- structure with the aspectMask set to
-- IMAGE_ASPECT_DEPTH_BIT | IMAGE_ASPECT_STENCIL_BIT.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - format must be a valid Format value
-- - type must be a valid ImageType value
-- - samples must be a valid SampleCountFlagBits
-- value
-- - usage must be a valid combination of
-- ImageUsageFlagBits values
-- - usage must not be 0
-- - tiling must be a valid ImageTiling
-- value
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount SparseImageFormatProperties
-- structures
--
--
-- See Also
--
-- Format, ImageTiling, ImageType,
-- ImageUsageFlags, PhysicalDevice,
-- SampleCountFlagBits, SparseImageFormatProperties
getPhysicalDeviceSparseImageFormatProperties :: forall io. MonadIO io => PhysicalDevice -> Format -> ImageType -> ("samples" ::: SampleCountFlagBits) -> ImageUsageFlags -> ImageTiling -> io ("properties" ::: Vector SparseImageFormatProperties)
-- | vkQueueBindSparse - Bind device memory to a sparse resource object
--
-- Description
--
-- queueBindSparse is a queue submission command, with each
-- batch defined by an element of pBindInfo as a
-- BindSparseInfo structure. Batches begin execution in the order
-- they appear in pBindInfo, but may complete out of
-- order.
--
-- Within a batch, a given range of a resource must not be bound
-- more than once. Across batches, if a range is to be bound to one
-- allocation and offset and then to another allocation and offset, then
-- the application must guarantee (usually using semaphores) that
-- the binding operations are executed in the correct order, as well as
-- to order binding operations against the execution of command buffer
-- submissions.
--
-- As no operation to queueBindSparse causes any pipeline stage to
-- access memory, synchronization primitives used in this command
-- effectively only define execution dependencies.
--
-- Additional information about fence and semaphore operation is
-- described in the synchronization chapter.
--
-- Valid Usage
--
--
-- - If fence is not NULL_HANDLE, fence
-- must be unsignaled
--
--
--
-- - If fence is not NULL_HANDLE, fence
-- must not be associated with any other queue command that has
-- not yet completed execution on that queue
-- - Each element of the pSignalSemaphores member of each
-- element of pBindInfo must be unsignaled when the
-- semaphore signal operation it defines is executed on the device
-- - When a semaphore wait operation referring to a binary semaphore
-- defined by any element of the pWaitSemaphores member of any
-- element of pBindInfo executes on queue, there
-- must be no other queues waiting on the same semaphore
-- - All elements of the pWaitSemaphores member of all
-- elements of pBindInfo member referring to a binary semaphore
-- must be semaphores that are signaled, or have semaphore
-- signal operations previously submitted for execution
-- - All elements of the pWaitSemaphores member of all
-- elements of pBindInfo created with a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY must reference a semaphore signal
-- operation that has been submitted for execution and any semaphore
-- signal operations on which it depends (if any) must have also
-- been submitted for execution
--
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
--
-- - If bindInfoCount is not 0, pBindInfo
-- must be a valid pointer to an array of bindInfoCount
-- valid BindSparseInfo structures
-- - If fence is not NULL_HANDLE, fence
-- must be a valid Fence handle
-- - The queue must support sparse binding
-- operations
-- - Both of fence, and queue that are valid handles
-- of non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to queue must be externally
-- synchronized
--
--
--
-- - Host access to pBindInfo[].pBufferBinds[].buffer
-- must be externally synchronized
-- - Host access to pBindInfo[].pImageOpaqueBinds[].image
-- must be externally synchronized
-- - Host access to pBindInfo[].pImageBinds[].image
-- must be externally synchronized
-- - Host access to fence must be externally
-- synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- BindSparseInfo, Fence, Queue
queueBindSparse :: forall io. MonadIO io => Queue -> ("bindInfo" ::: Vector (SomeStruct BindSparseInfo)) -> Fence -> io ()
-- | VkSparseImageFormatProperties - Structure specifying sparse image
-- format properties
--
-- See Also
--
-- Extent3D, ImageAspectFlags,
-- SparseImageFormatFlags, SparseImageFormatProperties2,
-- SparseImageMemoryRequirements,
-- getPhysicalDeviceSparseImageFormatProperties
data SparseImageFormatProperties
SparseImageFormatProperties :: ImageAspectFlags -> Extent3D -> SparseImageFormatFlags -> SparseImageFormatProperties
-- | aspectMask is a bitmask ImageAspectFlagBits specifying
-- which aspects of the image the properties apply to.
[$sel:aspectMask:SparseImageFormatProperties] :: SparseImageFormatProperties -> ImageAspectFlags
-- | imageGranularity is the width, height, and depth of the
-- sparse image block in texels or compressed texel blocks.
[$sel:imageGranularity:SparseImageFormatProperties] :: SparseImageFormatProperties -> Extent3D
-- | flags is a bitmask of SparseImageFormatFlagBits
-- specifying additional information about the sparse resource.
[$sel:flags:SparseImageFormatProperties] :: SparseImageFormatProperties -> SparseImageFormatFlags
-- | VkSparseImageMemoryRequirements - Structure specifying sparse image
-- memory requirements
--
-- See Also
--
-- DeviceSize, SparseImageFormatProperties,
-- SparseImageMemoryRequirements2,
-- getImageSparseMemoryRequirements
data SparseImageMemoryRequirements
SparseImageMemoryRequirements :: SparseImageFormatProperties -> Word32 -> DeviceSize -> DeviceSize -> DeviceSize -> SparseImageMemoryRequirements
[$sel:formatProperties:SparseImageMemoryRequirements] :: SparseImageMemoryRequirements -> SparseImageFormatProperties
-- | imageMipTailFirstLod is the first mip level at which image
-- subresources are included in the mip tail region.
[$sel:imageMipTailFirstLod:SparseImageMemoryRequirements] :: SparseImageMemoryRequirements -> Word32
-- | imageMipTailSize is the memory size (in bytes) of the mip
-- tail region. If formatProperties.flags contains
-- SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, this is the size of the
-- whole mip tail, otherwise this is the size of the mip tail of a single
-- array layer. This value is guaranteed to be a multiple of the sparse
-- block size in bytes.
[$sel:imageMipTailSize:SparseImageMemoryRequirements] :: SparseImageMemoryRequirements -> DeviceSize
-- | imageMipTailOffset is the opaque memory offset used with
-- SparseImageOpaqueMemoryBindInfo to bind the mip tail region(s).
[$sel:imageMipTailOffset:SparseImageMemoryRequirements] :: SparseImageMemoryRequirements -> DeviceSize
-- | imageMipTailStride is the offset stride between each
-- array-layer’s mip tail, if formatProperties.flags does not
-- contain SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT (otherwise the
-- value is undefined).
[$sel:imageMipTailStride:SparseImageMemoryRequirements] :: SparseImageMemoryRequirements -> DeviceSize
-- | VkImageSubresource - Structure specifying an image subresource
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ImageAspectFlags, SparseImageMemoryBind,
-- getImageSubresourceLayout
data ImageSubresource
ImageSubresource :: ImageAspectFlags -> Word32 -> Word32 -> ImageSubresource
-- | aspectMask is a ImageAspectFlags selecting the image
-- aspect.
--
-- aspectMask must be a valid combination of
-- ImageAspectFlagBits values
--
-- aspectMask must not be 0
[$sel:aspectMask:ImageSubresource] :: ImageSubresource -> ImageAspectFlags
-- | mipLevel selects the mipmap level.
[$sel:mipLevel:ImageSubresource] :: ImageSubresource -> Word32
-- | arrayLayer selects the array layer.
[$sel:arrayLayer:ImageSubresource] :: ImageSubresource -> Word32
-- | VkSparseMemoryBind - Structure specifying a sparse memory bind
-- operation
--
-- Description
--
-- The binding range [resourceOffset,
-- resourceOffset + size) has different constraints
-- based on flags. If flags contains
-- SPARSE_MEMORY_BIND_METADATA_BIT, the binding range must
-- be within the mip tail region of the metadata aspect. This metadata
-- region is defined by:
--
--
-- - metadataRegion = [base, base + imageMipTailSize)
-- - base = imageMipTailOffset + imageMipTailStride ×
-- n
--
--
-- and imageMipTailOffset, imageMipTailSize, and
-- imageMipTailStride values are from the
-- SparseImageMemoryRequirements corresponding to the metadata
-- aspect of the image, and n is a valid array layer index for the image,
--
-- imageMipTailStride is considered to be zero for aspects where
-- SparseImageMemoryRequirements::formatProperties.flags
-- contains SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT.
--
-- If flags does not contain
-- SPARSE_MEMORY_BIND_METADATA_BIT, the binding range must
-- be within the range [0,MemoryRequirements::size).
--
-- Valid Usage
--
--
--
--
-- - If memory is not NULL_HANDLE, memory
-- must not have been created with a memory type that reports
-- MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT bit set
-- - size must be greater than 0
-- - resourceOffset must be less than the size of the
-- resource
-- - size must be less than or equal to the size of the
-- resource minus resourceOffset
-- - memoryOffset must be less than the size of
-- memory
-- - size must be less than or equal to the size of
-- memory minus memoryOffset
-- - If memory was created with
-- ExportMemoryAllocateInfo::handleTypes not equal to
-- 0, at least one handle type it contained must also
-- have been set in
-- ExternalMemoryBufferCreateInfo::handleTypes or
-- ExternalMemoryImageCreateInfo::handleTypes when the
-- resource was created
-- - If memory was created by a memory import operation, the
-- external handle type of the imported memory must also have been
-- set in ExternalMemoryBufferCreateInfo::handleTypes or
-- ExternalMemoryImageCreateInfo::handleTypes when the
-- resource was created
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DeviceMemory, DeviceSize,
-- SparseBufferMemoryBindInfo,
-- SparseImageOpaqueMemoryBindInfo, SparseMemoryBindFlags
data SparseMemoryBind
SparseMemoryBind :: DeviceSize -> DeviceSize -> DeviceMemory -> DeviceSize -> SparseMemoryBindFlags -> SparseMemoryBind
-- | resourceOffset is the offset into the resource.
[$sel:resourceOffset:SparseMemoryBind] :: SparseMemoryBind -> DeviceSize
-- | size is the size of the memory region to be bound.
[$sel:size:SparseMemoryBind] :: SparseMemoryBind -> DeviceSize
-- | memory is the DeviceMemory object that the range of
-- the resource is bound to. If memory is NULL_HANDLE,
-- the range is unbound.
[$sel:memory:SparseMemoryBind] :: SparseMemoryBind -> DeviceMemory
-- | memoryOffset is the offset into the DeviceMemory
-- object to bind the resource range to. If memory is
-- NULL_HANDLE, this value is ignored.
[$sel:memoryOffset:SparseMemoryBind] :: SparseMemoryBind -> DeviceSize
-- | flags is a bitmask of SparseMemoryBindFlagBits
-- specifying usage of the binding operation.
[$sel:flags:SparseMemoryBind] :: SparseMemoryBind -> SparseMemoryBindFlags
-- | VkSparseImageMemoryBind - Structure specifying sparse image memory
-- bind
--
-- Valid Usage
--
--
-- - If the sparse aliased residency feature is not enabled, and
-- if any other resources are bound to ranges of memory, the
-- range of memory being bound must not overlap with
-- those bound ranges
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DeviceMemory, DeviceSize, Extent3D,
-- ImageSubresource, Offset3D,
-- SparseImageMemoryBindInfo, SparseMemoryBindFlags
data SparseImageMemoryBind
SparseImageMemoryBind :: ImageSubresource -> Offset3D -> Extent3D -> DeviceMemory -> DeviceSize -> SparseMemoryBindFlags -> SparseImageMemoryBind
-- | subresource is the image aspect and region of interest
-- in the image.
[$sel:subresource:SparseImageMemoryBind] :: SparseImageMemoryBind -> ImageSubresource
-- | offset are the coordinates of the first texel within the
-- image subresource to bind.
[$sel:offset:SparseImageMemoryBind] :: SparseImageMemoryBind -> Offset3D
-- | extent is the size in texels of the region within the image
-- subresource to bind. The extent must be a multiple of the
-- sparse image block dimensions, except when binding sparse image blocks
-- along the edge of an image subresource it can instead be such
-- that any coordinate of offset + extent equals the
-- corresponding dimensions of the image subresource.
[$sel:extent:SparseImageMemoryBind] :: SparseImageMemoryBind -> Extent3D
-- | memory is the DeviceMemory object that the sparse
-- image blocks of the image are bound to. If memory is
-- NULL_HANDLE, the sparse image blocks are unbound.
[$sel:memory:SparseImageMemoryBind] :: SparseImageMemoryBind -> DeviceMemory
-- | memoryOffset is an offset into DeviceMemory object. If
-- memory is NULL_HANDLE, this value is ignored.
[$sel:memoryOffset:SparseImageMemoryBind] :: SparseImageMemoryBind -> DeviceSize
-- | flags are sparse memory binding flags.
[$sel:flags:SparseImageMemoryBind] :: SparseImageMemoryBind -> SparseMemoryBindFlags
-- | VkSparseBufferMemoryBindInfo - Structure specifying a sparse buffer
-- memory bind operation
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- BindSparseInfo, Buffer, SparseMemoryBind
data SparseBufferMemoryBindInfo
SparseBufferMemoryBindInfo :: Buffer -> Vector SparseMemoryBind -> SparseBufferMemoryBindInfo
-- | buffer is the Buffer object to be bound.
--
-- buffer must be a valid Buffer handle
[$sel:buffer:SparseBufferMemoryBindInfo] :: SparseBufferMemoryBindInfo -> Buffer
-- | pBinds is a pointer to array of SparseMemoryBind
-- structures.
--
-- pBinds must be a valid pointer to an array of
-- bindCount valid SparseMemoryBind structures
[$sel:binds:SparseBufferMemoryBindInfo] :: SparseBufferMemoryBindInfo -> Vector SparseMemoryBind
-- | VkSparseImageOpaqueMemoryBindInfo - Structure specifying sparse image
-- opaque memory bind info
--
-- Valid Usage
--
--
-- - If the flags member of any element of pBinds
-- contains SPARSE_MEMORY_BIND_METADATA_BIT, the binding range
-- defined must be within the mip tail region of the metadata
-- aspect of image
--
--
-- Valid Usage (Implicit)
--
--
-- - image must be a valid Image handle
--
--
--
-- - pBinds must be a valid pointer to an array of
-- bindCount valid SparseMemoryBind structures
-- - bindCount must be greater than 0
--
--
-- See Also
--
-- BindSparseInfo, Image, SparseMemoryBind
data SparseImageOpaqueMemoryBindInfo
SparseImageOpaqueMemoryBindInfo :: Image -> Vector SparseMemoryBind -> SparseImageOpaqueMemoryBindInfo
-- | image is the Image object to be bound.
[$sel:image:SparseImageOpaqueMemoryBindInfo] :: SparseImageOpaqueMemoryBindInfo -> Image
-- | pBinds is a pointer to an array of SparseMemoryBind
-- structures.
[$sel:binds:SparseImageOpaqueMemoryBindInfo] :: SparseImageOpaqueMemoryBindInfo -> Vector SparseMemoryBind
-- | VkSparseImageMemoryBindInfo - Structure specifying sparse image memory
-- bind info
--
-- Valid Usage
--
--
-- - The subresource.mipLevel member of each element of
-- pBinds must be less than the mipLevels
-- specified in ImageCreateInfo when image was
-- created
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - image must be a valid Image handle
--
--
--
-- - pBinds must be a valid pointer to an array of
-- bindCount valid SparseImageMemoryBind structures
-- - bindCount must be greater than 0
--
--
-- See Also
--
-- BindSparseInfo, Image, SparseImageMemoryBind
data SparseImageMemoryBindInfo
SparseImageMemoryBindInfo :: Image -> Vector SparseImageMemoryBind -> SparseImageMemoryBindInfo
-- | image is the Image object to be bound
[$sel:image:SparseImageMemoryBindInfo] :: SparseImageMemoryBindInfo -> Image
-- | pBinds is a pointer to an array of
-- SparseImageMemoryBind structures
[$sel:binds:SparseImageMemoryBindInfo] :: SparseImageMemoryBindInfo -> Vector SparseImageMemoryBind
-- | VkBindSparseInfo - Structure specifying a sparse binding operation
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of DeviceGroupBindSparseInfo or
-- TimelineSemaphoreSubmitInfo
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - If waitSemaphoreCount is not 0,
-- pWaitSemaphores must be a valid pointer to an array of
-- waitSemaphoreCount valid Semaphore handles
-- - If bufferBindCount is not 0,
-- pBufferBinds must be a valid pointer to an array of
-- bufferBindCount valid SparseBufferMemoryBindInfo
-- structures
-- - If imageOpaqueBindCount is not 0,
-- pImageOpaqueBinds must be a valid pointer to an array
-- of imageOpaqueBindCount valid
-- SparseImageOpaqueMemoryBindInfo structures
-- - If imageBindCount is not 0, pImageBinds
-- must be a valid pointer to an array of imageBindCount
-- valid SparseImageMemoryBindInfo structures
-- - If signalSemaphoreCount is not 0,
-- pSignalSemaphores must be a valid pointer to an array
-- of signalSemaphoreCount valid Semaphore handles
-- - Both of the elements of pSignalSemaphores, and the
-- elements of pWaitSemaphores that are valid handles of
-- non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- See Also
--
-- Semaphore, SparseBufferMemoryBindInfo,
-- SparseImageMemoryBindInfo,
-- SparseImageOpaqueMemoryBindInfo, StructureType,
-- queueBindSparse
data BindSparseInfo (es :: [Type])
BindSparseInfo :: Chain es -> Vector Semaphore -> Vector SparseBufferMemoryBindInfo -> Vector SparseImageOpaqueMemoryBindInfo -> Vector SparseImageMemoryBindInfo -> Vector Semaphore -> BindSparseInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:BindSparseInfo] :: BindSparseInfo (es :: [Type]) -> Chain es
-- | pWaitSemaphores is a pointer to an array of semaphores upon
-- which to wait on before the sparse binding operations for this batch
-- begin execution. If semaphores to wait on are provided, they define a
-- semaphore wait operation.
[$sel:waitSemaphores:BindSparseInfo] :: BindSparseInfo (es :: [Type]) -> Vector Semaphore
-- | pBufferBinds is a pointer to an array of
-- SparseBufferMemoryBindInfo structures.
[$sel:bufferBinds:BindSparseInfo] :: BindSparseInfo (es :: [Type]) -> Vector SparseBufferMemoryBindInfo
-- | pImageOpaqueBinds is a pointer to an array of
-- SparseImageOpaqueMemoryBindInfo structures, indicating opaque
-- sparse image bindings to perform.
[$sel:imageOpaqueBinds:BindSparseInfo] :: BindSparseInfo (es :: [Type]) -> Vector SparseImageOpaqueMemoryBindInfo
-- | pImageBinds is a pointer to an array of
-- SparseImageMemoryBindInfo structures, indicating sparse image
-- bindings to perform.
[$sel:imageBinds:BindSparseInfo] :: BindSparseInfo (es :: [Type]) -> Vector SparseImageMemoryBindInfo
-- | pSignalSemaphores is a pointer to an array of semaphores
-- which will be signaled when the sparse binding operations for this
-- batch have completed execution. If semaphores to be signaled are
-- provided, they define a semaphore signal operation.
[$sel:signalSemaphores:BindSparseInfo] :: BindSparseInfo (es :: [Type]) -> Vector Semaphore
-- | VkImageAspectFlagBits - Bitmask specifying which aspects of an image
-- are included in a view
--
-- See Also
--
-- BindImagePlaneMemoryInfo, ImageAspectFlags,
-- ImagePlaneMemoryRequirementsInfo
newtype ImageAspectFlagBits
ImageAspectFlagBits :: Flags -> ImageAspectFlagBits
-- | IMAGE_ASPECT_COLOR_BIT specifies the color aspect.
pattern IMAGE_ASPECT_COLOR_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_DEPTH_BIT specifies the depth aspect.
pattern IMAGE_ASPECT_DEPTH_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_STENCIL_BIT specifies the stencil aspect.
pattern IMAGE_ASPECT_STENCIL_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_METADATA_BIT specifies the metadata aspect, used
-- for sparse sparse resource operations.
pattern IMAGE_ASPECT_METADATA_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT specifies memory
-- plane 3.
pattern IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT specifies memory
-- plane 2.
pattern IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT specifies memory
-- plane 1.
pattern IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT specifies memory
-- plane 0.
pattern IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_2_BIT specifies plane 2 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_2_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_1_BIT specifies plane 1 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_1_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_0_BIT specifies plane 0 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_0_BIT :: ImageAspectFlagBits
type ImageAspectFlags = ImageAspectFlagBits
-- | VkSparseImageFormatFlagBits - Bitmask specifying additional
-- information about a sparse image resource
--
-- See Also
--
-- SparseImageFormatFlags
newtype SparseImageFormatFlagBits
SparseImageFormatFlagBits :: Flags -> SparseImageFormatFlagBits
-- | SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT specifies that the image
-- uses a single mip tail region for all array layers.
pattern SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT :: SparseImageFormatFlagBits
-- | SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT specifies that the
-- first mip level whose dimensions are not integer multiples of the
-- corresponding dimensions of the sparse image block begins the mip tail
-- region.
pattern SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT :: SparseImageFormatFlagBits
-- | SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT specifies that
-- the image uses non-standard sparse image block dimensions, and the
-- imageGranularity values do not match the standard sparse
-- image block dimensions for the given format.
pattern SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT :: SparseImageFormatFlagBits
type SparseImageFormatFlags = SparseImageFormatFlagBits
-- | VkSparseMemoryBindFlagBits - Bitmask specifying usage of a sparse
-- memory binding operation
--
-- See Also
--
-- SparseMemoryBindFlags
newtype SparseMemoryBindFlagBits
SparseMemoryBindFlagBits :: Flags -> SparseMemoryBindFlagBits
-- | SPARSE_MEMORY_BIND_METADATA_BIT specifies that the memory being
-- bound is only for the metadata aspect.
pattern SPARSE_MEMORY_BIND_METADATA_BIT :: SparseMemoryBindFlagBits
type SparseMemoryBindFlags = SparseMemoryBindFlagBits
instance GHC.Classes.Eq Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance GHC.Classes.Eq Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseImageFormatProperties
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseImageFormatProperties
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryRequirements
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryRequirements
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBind
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBind
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseBufferMemoryBindInfo
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseBufferMemoryBindInfo
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseImageOpaqueMemoryBindInfo
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseImageOpaqueMemoryBindInfo
instance GHC.Generics.Generic Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBindInfo
instance GHC.Show.Show Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBindInfo
instance GHC.Generics.Generic (Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.SparseResourceMemoryManagement.BindSparseInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBindInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBindInfo
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBindInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageOpaqueMemoryBindInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageOpaqueMemoryBindInfo
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseImageOpaqueMemoryBindInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseBufferMemoryBindInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseBufferMemoryBindInfo
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseBufferMemoryBindInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBind
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBind
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryBind
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance Foreign.Storable.Storable Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseMemoryBind
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance Foreign.Storable.Storable Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.ImageSubresource
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryRequirements
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryRequirements
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseImageMemoryRequirements
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageFormatProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.SparseResourceMemoryManagement.SparseImageFormatProperties
instance Vulkan.Zero.Zero Vulkan.Core10.SparseResourceMemoryManagement.SparseImageFormatProperties
module Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2
-- | vkGetBufferMemoryRequirements2 - Returns the memory requirements for
-- specified Vulkan object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- BufferMemoryRequirementsInfo2, Device,
-- MemoryRequirements2
getBufferMemoryRequirements2 :: forall a io. (Extendss MemoryRequirements2 a, PokeChain a, PeekChain a, MonadIO io) => Device -> BufferMemoryRequirementsInfo2 -> io (MemoryRequirements2 a)
-- | vkGetImageMemoryRequirements2 - Returns the memory requirements for
-- specified Vulkan object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device, ImageMemoryRequirementsInfo2,
-- MemoryRequirements2
getImageMemoryRequirements2 :: forall a b io. (Extendss ImageMemoryRequirementsInfo2 a, Extendss MemoryRequirements2 b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => Device -> ImageMemoryRequirementsInfo2 a -> io (MemoryRequirements2 b)
-- | vkGetImageSparseMemoryRequirements2 - Query the memory requirements
-- for a sparse image
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pInfo must be a valid pointer to a valid
-- ImageSparseMemoryRequirementsInfo2 structure
-- - pSparseMemoryRequirementCount must be a valid
-- pointer to a uint32_t value
-- - If the value referenced by pSparseMemoryRequirementCount
-- is not 0, and pSparseMemoryRequirements is not
-- NULL, pSparseMemoryRequirements must be a
-- valid pointer to an array of pSparseMemoryRequirementCount
-- SparseImageMemoryRequirements2 structures
--
--
-- See Also
--
-- Device, ImageSparseMemoryRequirementsInfo2,
-- SparseImageMemoryRequirements2
getImageSparseMemoryRequirements2 :: forall io. MonadIO io => Device -> ImageSparseMemoryRequirementsInfo2 -> io ("sparseMemoryRequirements" ::: Vector SparseImageMemoryRequirements2)
-- | VkBufferMemoryRequirementsInfo2 - (None)
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - buffer must be a valid Buffer handle
--
--
-- See Also
--
-- Buffer, StructureType,
-- getBufferMemoryRequirements2,
-- getBufferMemoryRequirements2KHR
data BufferMemoryRequirementsInfo2
BufferMemoryRequirementsInfo2 :: Buffer -> BufferMemoryRequirementsInfo2
-- | buffer is the buffer to query.
[$sel:buffer:BufferMemoryRequirementsInfo2] :: BufferMemoryRequirementsInfo2 -> Buffer
-- | VkImageMemoryRequirementsInfo2 - (None)
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of ImagePlaneMemoryRequirementsInfo
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - image must be a valid Image handle
--
--
-- See Also
--
-- Image, StructureType,
-- getImageMemoryRequirements2,
-- getImageMemoryRequirements2KHR
data ImageMemoryRequirementsInfo2 (es :: [Type])
ImageMemoryRequirementsInfo2 :: Chain es -> Image -> ImageMemoryRequirementsInfo2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:ImageMemoryRequirementsInfo2] :: ImageMemoryRequirementsInfo2 (es :: [Type]) -> Chain es
-- | image is the image to query.
[$sel:image:ImageMemoryRequirementsInfo2] :: ImageMemoryRequirementsInfo2 (es :: [Type]) -> Image
-- | VkImageSparseMemoryRequirementsInfo2 - (None)
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Image, StructureType,
-- getImageSparseMemoryRequirements2,
-- getImageSparseMemoryRequirements2KHR
data ImageSparseMemoryRequirementsInfo2
ImageSparseMemoryRequirementsInfo2 :: Image -> ImageSparseMemoryRequirementsInfo2
-- | image is the image to query.
--
-- image must be a valid Image handle
[$sel:image:ImageSparseMemoryRequirementsInfo2] :: ImageSparseMemoryRequirementsInfo2 -> Image
-- | VkMemoryRequirements2 - Structure specifying memory requirements
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of MemoryDedicatedRequirements
-- - The sType value of each struct in the pNext
-- chain must be unique
--
--
-- See Also
--
-- MemoryRequirements, StructureType,
-- getAccelerationStructureMemoryRequirementsKHR,
-- getBufferMemoryRequirements2,
-- getBufferMemoryRequirements2KHR,
-- getGeneratedCommandsMemoryRequirementsNV,
-- getImageMemoryRequirements2,
-- getImageMemoryRequirements2KHR
data MemoryRequirements2 (es :: [Type])
MemoryRequirements2 :: Chain es -> MemoryRequirements -> MemoryRequirements2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:MemoryRequirements2] :: MemoryRequirements2 (es :: [Type]) -> Chain es
-- | memoryRequirements is a MemoryRequirements structure
-- describing the memory requirements of the resource.
[$sel:memoryRequirements:MemoryRequirements2] :: MemoryRequirements2 (es :: [Type]) -> MemoryRequirements
-- | VkSparseImageMemoryRequirements2 - (None)
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- SparseImageMemoryRequirements, StructureType,
-- getImageSparseMemoryRequirements2,
-- getImageSparseMemoryRequirements2KHR
data SparseImageMemoryRequirements2
SparseImageMemoryRequirements2 :: SparseImageMemoryRequirements -> SparseImageMemoryRequirements2
-- | memoryRequirements is a SparseImageMemoryRequirements
-- structure describing the memory requirements of the sparse image.
[$sel:memoryRequirements:SparseImageMemoryRequirements2] :: SparseImageMemoryRequirements2 -> SparseImageMemoryRequirements
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es)
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es)
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.SparseImageMemoryRequirements2
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.SparseImageMemoryRequirements2
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.SparseImageMemoryRequirements2
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.SparseImageMemoryRequirements2
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.SparseImageMemoryRequirements2
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.MemoryRequirements2 es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageSparseMemoryRequirementsInfo2
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.ImageMemoryRequirementsInfo2 es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2.BufferMemoryRequirementsInfo2
module Vulkan.Extensions.VK_KHR_get_memory_requirements2
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR :: StructureType
getBufferMemoryRequirements2KHR :: forall (a :: [Type]) io. (Extendss MemoryRequirements2 a, PokeChain a, PeekChain a, MonadIO io) => Device -> BufferMemoryRequirementsInfo2 -> io (MemoryRequirements2 a)
getImageMemoryRequirements2KHR :: forall (a :: [Type]) (b :: [Type]) io. (Extendss ImageMemoryRequirementsInfo2 a, Extendss MemoryRequirements2 b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => Device -> ImageMemoryRequirementsInfo2 a -> io (MemoryRequirements2 b)
getImageSparseMemoryRequirements2KHR :: MonadIO io => Device -> ImageSparseMemoryRequirementsInfo2 -> io ("sparseMemoryRequirements" ::: Vector SparseImageMemoryRequirements2)
type BufferMemoryRequirementsInfo2KHR = BufferMemoryRequirementsInfo2
type ImageMemoryRequirementsInfo2KHR = ImageMemoryRequirementsInfo2
type ImageSparseMemoryRequirementsInfo2KHR = ImageSparseMemoryRequirementsInfo2
type MemoryRequirements2KHR = MemoryRequirements2
type SparseImageMemoryRequirements2KHR = SparseImageMemoryRequirements2
type KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION = 1
pattern KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION :: forall a. Integral a => a
type KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME = "VK_KHR_get_memory_requirements2"
pattern KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Shader
-- | vkCreateShaderModule - Creates a new shader module object
--
-- Description
--
-- Once a shader module has been created, any entry points it contains
-- can be used in pipeline shader stages as described in
-- Compute Pipelines and Graphics Pipelines.
--
-- If the shader stage fails to compile ERROR_INVALID_SHADER_NV
-- will be generated and the compile log will be reported back to the
-- application by VK_EXT_debug_report if enabled.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- ShaderModuleCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pShaderModule must be a valid pointer to a
-- ShaderModule handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, ShaderModule,
-- ShaderModuleCreateInfo
createShaderModule :: forall a io. (Extendss ShaderModuleCreateInfo a, PokeChain a, MonadIO io) => Device -> ShaderModuleCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io ShaderModule
-- | A convenience wrapper to make a compatible pair of calls to
-- createShaderModule and destroyShaderModule
--
-- To ensure that destroyShaderModule is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withShaderModule :: forall a io r. (Extendss ShaderModuleCreateInfo a, PokeChain a, MonadIO io) => Device -> ShaderModuleCreateInfo a -> Maybe AllocationCallbacks -> (io ShaderModule -> (ShaderModule -> io ()) -> r) -> r
-- | vkDestroyShaderModule - Destroy a shader module
--
-- Description
--
-- A shader module can be destroyed while pipelines created using
-- its shaders are still in use.
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- shaderModule was created, a compatible set of callbacks
-- must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- shaderModule was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If shaderModule is not NULL_HANDLE,
-- shaderModule must be a valid ShaderModule
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If shaderModule is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to shaderModule must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, ShaderModule
destroyShaderModule :: forall io. MonadIO io => Device -> ShaderModule -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkShaderModuleCreateInfo - Structure specifying parameters of a newly
-- created shader module
--
-- Valid Usage
--
--
-- - codeSize must be greater than 0
--
--
--
-- - If pCode is a pointer to SPIR-V code, codeSize
-- must be a multiple of 4
-- - pCode must point to either valid SPIR-V code,
-- formatted and packed as described by the Khronos SPIR-V
-- Specification or valid GLSL code which must be written to
-- the GL_KHR_vulkan_glsl extension specification
-- - If pCode is a pointer to SPIR-V code, that code
-- must adhere to the validation rules described by the
-- Validation Rules within a Module section of the SPIR-V
-- Environment appendix
-- - If pCode is a pointer to GLSL code, it must be
-- valid GLSL code written to the GL_KHR_vulkan_glsl GLSL
-- extension specification
-- - pCode must declare the Shader capability
-- for SPIR-V code
-- - pCode must not declare any capability that is not
-- supported by the API, as described by the Capabilities section
-- of the SPIR-V Environment appendix
-- - If pCode declares any of the capabilities listed as
-- optional in the SPIR-V Environment appendix, the
-- corresponding feature(s) must be enabled
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of ShaderModuleValidationCacheCreateInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be 0
-- - pCode must be a valid pointer to an array of
-- <math> uint32_t values
--
--
-- See Also
--
-- ShaderModuleCreateFlags, StructureType,
-- createShaderModule
data ShaderModuleCreateInfo (es :: [Type])
ShaderModuleCreateInfo :: Chain es -> ShaderModuleCreateFlags -> ByteString -> ShaderModuleCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:ShaderModuleCreateInfo] :: ShaderModuleCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:ShaderModuleCreateInfo] :: ShaderModuleCreateInfo (es :: [Type]) -> ShaderModuleCreateFlags
-- | pCode is a pointer to code that is used to create the shader
-- module. The type and format of the code is determined from the content
-- of the memory addressed by pCode.
[$sel:code:ShaderModuleCreateInfo] :: ShaderModuleCreateInfo (es :: [Type]) -> ByteString
-- | VkShaderModule - Opaque handle to a shader module object
--
-- See Also
--
-- PipelineShaderStageCreateInfo, createShaderModule,
-- destroyShaderModule
newtype ShaderModule
ShaderModule :: Word64 -> ShaderModule
newtype ShaderModuleCreateFlagBits
ShaderModuleCreateFlagBits :: Flags -> ShaderModuleCreateFlagBits
type ShaderModuleCreateFlags = ShaderModuleCreateFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Shader.ShaderModuleCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Shader.ShaderModuleCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Shader.ShaderModuleCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Shader.ShaderModuleCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Shader.ShaderModuleCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Shader.ShaderModuleCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Shader.ShaderModuleCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Shader.ShaderModuleCreateInfo es)
module Vulkan.Core10.Sampler
-- | vkCreateSampler - Create a new sampler object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- SamplerCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSampler must be a valid pointer to a
-- Sampler handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Sampler,
-- SamplerCreateInfo
createSampler :: forall a io. (Extendss SamplerCreateInfo a, PokeChain a, MonadIO io) => Device -> SamplerCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Sampler
-- | A convenience wrapper to make a compatible pair of calls to
-- createSampler and destroySampler
--
-- To ensure that destroySampler is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withSampler :: forall a io r. (Extendss SamplerCreateInfo a, PokeChain a, MonadIO io) => Device -> SamplerCreateInfo a -> Maybe AllocationCallbacks -> (io Sampler -> (Sampler -> io ()) -> r) -> r
-- | vkDestroySampler - Destroy a sampler object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to sampler must
-- have completed execution
--
--
--
-- - If AllocationCallbacks were provided when sampler
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when
-- sampler was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If sampler is not NULL_HANDLE, sampler
-- must be a valid Sampler handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If sampler is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to sampler must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Sampler
destroySampler :: forall io. MonadIO io => Device -> Sampler -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkSamplerCreateInfo - Structure specifying parameters of a newly
-- created sampler
--
-- Description
--
-- Mapping of OpenGL to Vulkan filter modes
--
-- magFilter values of FILTER_NEAREST and
-- FILTER_LINEAR directly correspond to GL_NEAREST and
-- GL_LINEAR magnification filters. minFilter and
-- mipmapMode combine to correspond to the similarly named
-- OpenGL minification filter of GL_minFilter_MIPMAP_mipmapMode
-- (e.g. minFilter of FILTER_LINEAR and
-- mipmapMode of SAMPLER_MIPMAP_MODE_NEAREST correspond
-- to GL_LINEAR_MIPMAP_NEAREST).
--
-- There are no Vulkan filter modes that directly correspond to OpenGL
-- minification filters of GL_LINEAR or GL_NEAREST, but
-- they can be emulated using SAMPLER_MIPMAP_MODE_NEAREST,
-- minLod = 0, and maxLod = 0.25, and using
-- minFilter = FILTER_LINEAR or minFilter =
-- FILTER_NEAREST, respectively.
--
-- Note that using a maxLod of zero would cause
-- magnification to always be performed, and the
-- magFilter to always be used. This is valid, just not an exact
-- match for OpenGL behavior. Clamping the maximum LOD to 0.25 allows the
-- λ value to be non-zero and minification to be performed, while still
-- always rounding down to the base level. If the minFilter and
-- magFilter are equal, then using a maxLod of zero
-- also works.
--
-- The maximum number of sampler objects which can be
-- simultaneously created on a device is implementation-dependent and
-- specified by the maxSamplerAllocationCount member of the
-- PhysicalDeviceLimits structure. If
-- maxSamplerAllocationCount is exceeded, createSampler
-- will return ERROR_TOO_MANY_OBJECTS.
--
-- Since Sampler is a non-dispatchable handle type,
-- implementations may return the same handle for sampler state
-- vectors that are identical. In such cases, all such objects would only
-- count once against the maxSamplerAllocationCount limit.
--
-- Valid Usage
--
--
-- - The absolute value of mipLodBias must be less than
-- or equal to
-- PhysicalDeviceLimits::maxSamplerLodBias
--
--
--
-- - maxLod must be greater than or equal to
-- minLod
-- - If the anisotropic sampling feature is not enabled,
-- anisotropyEnable must be FALSE
-- - If anisotropyEnable is TRUE,
-- maxAnisotropy must be between 1.0 and
-- PhysicalDeviceLimits::maxSamplerAnisotropy,
-- inclusive
-- - If sampler Y′CBCR conversion is enabled and the sampler
-- Y′CBCR conversion’s features do not support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
-- minFilter and magFilter must be equal to the
-- sampler Y′CBCR conversion’s chromaFilter
-- - If unnormalizedCoordinates is TRUE,
-- minFilter and magFilter must be equal
-- - If unnormalizedCoordinates is TRUE,
-- mipmapMode must be
-- SAMPLER_MIPMAP_MODE_NEAREST
-- - If unnormalizedCoordinates is TRUE,
-- minLod and maxLod must be zero
-- - If unnormalizedCoordinates is TRUE,
-- addressModeU and addressModeV must each be
-- either SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE or
-- SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER
-- - If unnormalizedCoordinates is TRUE,
-- anisotropyEnable must be FALSE
-- - If unnormalizedCoordinates is TRUE,
-- compareEnable must be FALSE
-- - If any of addressModeU, addressModeV or
-- addressModeW are SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,
-- borderColor must be a valid BorderColor
-- value
-- - If sampler Y′CBCR conversion is enabled,
-- addressModeU, addressModeV, and
-- addressModeW must be
-- SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE, anisotropyEnable
-- must be FALSE, and unnormalizedCoordinates
-- must be FALSE
-- - The sampler reduction mode must be set to
-- SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE if sampler Y′CBCR
-- conversion is enabled
-- - If samplerMirrorClampToEdge is not enabled, and if the
-- VK_KHR_sampler_mirror_clamp_to_edge extension is not enabled,
-- addressModeU, addressModeV and addressModeW
-- must not be
-- SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE
-- - If compareEnable is TRUE, compareOp
-- must be a valid CompareOp value
-- - If either magFilter or minFilter is
-- FILTER_CUBIC_EXT, anisotropyEnable must be
-- FALSE
-- - If compareEnable is TRUE, the
-- reductionMode member of SamplerReductionModeCreateInfo
-- must be SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then minFilter and
-- magFilter must be equal
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then mipmapMode
-- must be SAMPLER_MIPMAP_MODE_NEAREST
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then minLod and
-- maxLod must be zero
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then addressModeU
-- and addressModeV must each be either
-- SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE or
-- SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then
-- anisotropyEnable must be FALSE
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then compareEnable
-- must be FALSE
-- - If flags includes
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, then
-- unnormalizedCoordinates must be FALSE
-- - If borderColor is set to one of
-- BORDER_COLOR_FLOAT_CUSTOM_EXT or
-- BORDER_COLOR_INT_CUSTOM_EXT, then a
-- SamplerCustomBorderColorCreateInfoEXT must be present in
-- the pNext chain
-- - The maximum number of samplers with custom border colors which
-- can be simultaneously created on a device is
-- implementation-dependent and specified by the
-- maxCustomBorderColorSamplers member of the
-- PhysicalDeviceCustomBorderColorPropertiesEXT structure
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, BorderColor, CompareOp, Filter,
-- SamplerAddressMode, SamplerCreateFlags,
-- SamplerMipmapMode, StructureType, createSampler
data SamplerCreateInfo (es :: [Type])
SamplerCreateInfo :: Chain es -> SamplerCreateFlags -> Filter -> Filter -> SamplerMipmapMode -> SamplerAddressMode -> SamplerAddressMode -> SamplerAddressMode -> Float -> Bool -> Float -> Bool -> CompareOp -> Float -> Float -> BorderColor -> Bool -> SamplerCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of SamplerCreateFlagBits describing
-- additional parameters of the sampler.
[$sel:flags:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> SamplerCreateFlags
-- | magFilter is a Filter value specifying the
-- magnification filter to apply to lookups.
[$sel:magFilter:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Filter
-- | minFilter is a Filter value specifying the
-- minification filter to apply to lookups.
[$sel:minFilter:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Filter
-- | mipmapMode is a SamplerMipmapMode value specifying the
-- mipmap filter to apply to lookups.
[$sel:mipmapMode:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> SamplerMipmapMode
-- | addressModeU is a SamplerAddressMode value specifying
-- the addressing mode for outside [0..1] range for U coordinate.
[$sel:addressModeU:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> SamplerAddressMode
-- | addressModeV is a SamplerAddressMode value specifying
-- the addressing mode for outside [0..1] range for V coordinate.
[$sel:addressModeV:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> SamplerAddressMode
-- | addressModeW is a SamplerAddressMode value specifying
-- the addressing mode for outside [0..1] range for W coordinate.
[$sel:addressModeW:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> SamplerAddressMode
-- | mipLodBias is the bias to be added to mipmap LOD
-- (level-of-detail) calculation and bias provided by image sampling
-- functions in SPIR-V, as described in the Level-of-Detail
-- Operation section.
[$sel:mipLodBias:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Float
-- | anisotropyEnable is TRUE to enable anisotropic
-- filtering, as described in the Texel Anisotropic Filtering
-- section, or FALSE otherwise.
[$sel:anisotropyEnable:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Bool
-- | maxAnisotropy is the anisotropy value clamp used by the
-- sampler when anisotropyEnable is TRUE. If
-- anisotropyEnable is FALSE, maxAnisotropy is
-- ignored.
[$sel:maxAnisotropy:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Float
-- | compareEnable is TRUE to enable comparison against a
-- reference value during lookups, or FALSE otherwise.
--
--
-- - Note: Some implementations will default to shader state if this
-- member does not match.
--
[$sel:compareEnable:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Bool
-- | compareOp is a CompareOp value specifying the
-- comparison function to apply to fetched data before filtering as
-- described in the Depth Compare Operation section.
[$sel:compareOp:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> CompareOp
-- | minLod and maxLod are the values used to clamp the
-- computed LOD value, as described in the Level-of-Detail
-- Operation section.
[$sel:minLod:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Float
[$sel:maxLod:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Float
-- | borderColor is a BorderColor value specifying the
-- predefined border color to use.
[$sel:borderColor:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> BorderColor
-- | unnormalizedCoordinates controls whether to use unnormalized
-- or normalized texel coordinates to address texels of the image. When
-- set to TRUE, the range of the image coordinates used to lookup
-- the texel is in the range of zero to the image dimensions for x, y and
-- z. When set to FALSE the range of image coordinates is zero to
-- one.
--
-- When unnormalizedCoordinates is TRUE, images the
-- sampler is used with in the shader have the following requirements:
--
--
--
-- When unnormalizedCoordinates is TRUE, image built-in
-- functions in the shader that use the sampler have the following
-- requirements:
--
--
-- - The functions must not use projection.
-- - The functions must not use offsets.
--
[$sel:unnormalizedCoordinates:SamplerCreateInfo] :: SamplerCreateInfo (es :: [Type]) -> Bool
-- | VkSampler - Opaque handle to a sampler object
--
-- See Also
--
-- DescriptorImageInfo, DescriptorSetLayoutBinding,
-- ImageViewHandleInfoNVX, createSampler,
-- destroySampler
newtype Sampler
Sampler :: Word64 -> Sampler
-- | VkBorderColor - Specify border color used for texture lookups
--
-- Description
--
-- These colors are described in detail in Texel Replacement.
--
-- See Also
--
-- SamplerCreateInfo
newtype BorderColor
BorderColor :: Int32 -> BorderColor
-- | BORDER_COLOR_FLOAT_TRANSPARENT_BLACK specifies a transparent,
-- floating-point format, black color.
pattern BORDER_COLOR_FLOAT_TRANSPARENT_BLACK :: BorderColor
-- | BORDER_COLOR_INT_TRANSPARENT_BLACK specifies a transparent,
-- integer format, black color.
pattern BORDER_COLOR_INT_TRANSPARENT_BLACK :: BorderColor
-- | BORDER_COLOR_FLOAT_OPAQUE_BLACK specifies an opaque,
-- floating-point format, black color.
pattern BORDER_COLOR_FLOAT_OPAQUE_BLACK :: BorderColor
-- | BORDER_COLOR_INT_OPAQUE_BLACK specifies an opaque, integer
-- format, black color.
pattern BORDER_COLOR_INT_OPAQUE_BLACK :: BorderColor
-- | BORDER_COLOR_FLOAT_OPAQUE_WHITE specifies an opaque,
-- floating-point format, white color.
pattern BORDER_COLOR_FLOAT_OPAQUE_WHITE :: BorderColor
-- | BORDER_COLOR_INT_OPAQUE_WHITE specifies an opaque, integer
-- format, white color.
pattern BORDER_COLOR_INT_OPAQUE_WHITE :: BorderColor
-- | BORDER_COLOR_INT_CUSTOM_EXT indicates that a
-- SamplerCustomBorderColorCreateInfoEXT structure is present in
-- the SamplerCreateInfo::pNext chain which contains the
-- color data in integer format.
pattern BORDER_COLOR_INT_CUSTOM_EXT :: BorderColor
-- | BORDER_COLOR_FLOAT_CUSTOM_EXT indicates that a
-- SamplerCustomBorderColorCreateInfoEXT structure is present in
-- the SamplerCreateInfo::pNext chain which contains the
-- color data in floating-point format.
pattern BORDER_COLOR_FLOAT_CUSTOM_EXT :: BorderColor
-- | VkFilter - Specify filters used for texture lookups
--
-- Description
--
-- These filters are described in detail in Texel Filtering.
--
-- See Also
--
-- SamplerCreateInfo, SamplerYcbcrConversionCreateInfo,
-- cmdBlitImage
newtype Filter
Filter :: Int32 -> Filter
-- | FILTER_NEAREST specifies nearest filtering.
pattern FILTER_NEAREST :: Filter
-- | FILTER_LINEAR specifies linear filtering.
pattern FILTER_LINEAR :: Filter
pattern FILTER_CUBIC_IMG :: Filter
-- | VkSamplerMipmapMode - Specify mipmap mode used for texture lookups
--
-- Description
--
-- These modes are described in detail in Texel Filtering.
--
-- See Also
--
-- SamplerCreateInfo
newtype SamplerMipmapMode
SamplerMipmapMode :: Int32 -> SamplerMipmapMode
-- | SAMPLER_MIPMAP_MODE_NEAREST specifies nearest filtering.
pattern SAMPLER_MIPMAP_MODE_NEAREST :: SamplerMipmapMode
-- | SAMPLER_MIPMAP_MODE_LINEAR specifies linear filtering.
pattern SAMPLER_MIPMAP_MODE_LINEAR :: SamplerMipmapMode
-- | VkSamplerAddressMode - Specify behavior of sampling with texture
-- coordinates outside an image
--
-- See Also
--
-- SamplerCreateInfo
newtype SamplerAddressMode
SamplerAddressMode :: Int32 -> SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_REPEAT specifies that the repeat wrap mode
-- will be used.
pattern SAMPLER_ADDRESS_MODE_REPEAT :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT specifies that the
-- mirrored repeat wrap mode will be used.
pattern SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE specifies that the clamp to
-- edge wrap mode will be used.
pattern SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER specifies that the clamp
-- to border wrap mode will be used.
pattern SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER :: SamplerAddressMode
-- | SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE specifies that the
-- mirror clamp to edge wrap mode will be used. This is only valid if
-- samplerMirrorClampToEdge is enabled, or if the
-- VK_KHR_sampler_mirror_clamp_to_edge extension is enabled.
pattern SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE :: SamplerAddressMode
-- | VkSamplerCreateFlagBits - Bitmask specifying additional parameters of
-- sampler
--
-- Description
--
-- Note
--
-- The approximations used when
-- SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT is
-- specified are implementation defined. Some implementations may
-- interpolate between fragment density levels in a subsampled image. In
-- that case, this bit may be used to decide whether the
-- interpolation factors are calculated per fragment or at a coarser
-- granularity.
--
-- See Also
--
-- SamplerCreateFlags
newtype SamplerCreateFlagBits
SamplerCreateFlagBits :: Flags -> SamplerCreateFlagBits
-- | SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT
-- specifies that the implementation may use approximations when
-- reconstructing a full color value for texture access from a subsampled
-- image.
pattern SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT :: SamplerCreateFlagBits
-- | SAMPLER_CREATE_SUBSAMPLED_BIT_EXT specifies that the sampler
-- will read from an image created with flags containing
-- IMAGE_CREATE_SUBSAMPLED_BIT_EXT.
pattern SAMPLER_CREATE_SUBSAMPLED_BIT_EXT :: SamplerCreateFlagBits
type SamplerCreateFlags = SamplerCreateFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Sampler.SamplerCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Sampler.SamplerCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Sampler.SamplerCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Sampler.SamplerCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Sampler.SamplerCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Sampler.SamplerCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Sampler.SamplerCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Sampler.SamplerCreateInfo es)
module Vulkan.Core10.QueueSemaphore
-- | vkCreateSemaphore - Create a new queue semaphore object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- SemaphoreCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pSemaphore must be a valid pointer to a
-- Semaphore handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Semaphore,
-- SemaphoreCreateInfo
createSemaphore :: forall a io. (Extendss SemaphoreCreateInfo a, PokeChain a, MonadIO io) => Device -> SemaphoreCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Semaphore
-- | A convenience wrapper to make a compatible pair of calls to
-- createSemaphore and destroySemaphore
--
-- To ensure that destroySemaphore is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withSemaphore :: forall a io r. (Extendss SemaphoreCreateInfo a, PokeChain a, MonadIO io) => Device -> SemaphoreCreateInfo a -> Maybe AllocationCallbacks -> (io Semaphore -> (Semaphore -> io ()) -> r) -> r
-- | vkDestroySemaphore - Destroy a semaphore object
--
-- Valid Usage
--
--
-- - All submitted batches that refer to semaphore must
-- have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- semaphore was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- semaphore was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If semaphore is not NULL_HANDLE,
-- semaphore must be a valid Semaphore handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If semaphore is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to semaphore must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Semaphore
destroySemaphore :: forall io. MonadIO io => Device -> Semaphore -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkSemaphoreCreateInfo - Structure specifying parameters of a newly
-- created semaphore
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- SemaphoreCreateFlags, StructureType,
-- createSemaphore
data SemaphoreCreateInfo (es :: [Type])
SemaphoreCreateInfo :: Chain es -> SemaphoreCreateFlags -> SemaphoreCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SemaphoreCreateInfo] :: SemaphoreCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:SemaphoreCreateInfo] :: SemaphoreCreateInfo (es :: [Type]) -> SemaphoreCreateFlags
-- | VkSemaphore - Opaque handle to a semaphore object
--
-- See Also
--
-- AcquireNextImageInfoKHR, BindSparseInfo,
-- ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR, PresentInfoKHR,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreWaitInfo,
-- SubmitInfo, acquireNextImageKHR, createSemaphore,
-- destroySemaphore, getSemaphoreCounterValue,
-- getSemaphoreCounterValueKHR
newtype Semaphore
Semaphore :: Word64 -> Semaphore
-- | VkSemaphoreCreateFlags - Reserved for future use
--
-- Description
--
-- SemaphoreCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- SemaphoreCreateInfo
newtype SemaphoreCreateFlags
SemaphoreCreateFlags :: Flags -> SemaphoreCreateFlags
instance GHC.Generics.Generic (Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.QueueSemaphore.SemaphoreCreateInfo es)
module Vulkan.Core10.Queue
-- | vkGetDeviceQueue - Get a queue handle from a device
--
-- Description
--
-- getDeviceQueue must only be used to get queues that were
-- created with the flags parameter of
-- DeviceQueueCreateInfo set to zero. To get queues that were
-- created with a non-zero flags parameter use
-- getDeviceQueue2.
--
-- Valid Usage
--
--
-- - queueFamilyIndex must be one of the queue family
-- indices specified when device was created, via the
-- DeviceQueueCreateInfo structure
--
--
--
-- - queueIndex must be less than the number of queues
-- created for the specified queue family index when device was
-- created, via the queueCount member of the
-- DeviceQueueCreateInfo structure
-- - DeviceQueueCreateInfo::flags must have been
-- set to zero when device was created
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pQueue must be a valid pointer to a Queue
-- handle
--
--
-- See Also
--
-- Device, Queue
getDeviceQueue :: forall io. MonadIO io => Device -> ("queueFamilyIndex" ::: Word32) -> ("queueIndex" ::: Word32) -> io Queue
-- | vkQueueSubmit - Submits a sequence of semaphores or command buffers to
-- a queue
--
-- Description
--
-- queueSubmit is a queue submission command, with each
-- batch defined by an element of pSubmits. Batches begin
-- execution in the order they appear in pSubmits, but
-- may complete out of order.
--
-- Fence and semaphore operations submitted with queueSubmit have
-- additional ordering constraints compared to other submission commands,
-- with dependencies involving previous and subsequent queue operations.
-- Information about these additional constraints can be found in the
-- semaphore and fence sections of the synchronization
-- chapter.
--
-- Details on the interaction of pWaitDstStageMask with
-- synchronization are described in the semaphore wait operation
-- section of the synchronization chapter.
--
-- The order that batches appear in pSubmits is used to
-- determine submission order, and thus all the implicit
-- ordering guarantees that respect it. Other than these implicit
-- ordering guarantees and any explicit synchronization
-- primitives, these batches may overlap or otherwise execute
-- out of order.
--
-- If any command buffer submitted to this queue is in the executable
-- state, it is moved to the pending state. Once execution of
-- all submissions of a command buffer complete, it moves from the
-- pending state, back to the executable state. If a
-- command buffer was recorded with the
-- COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT flag, it instead moves
-- to the invalid state.
--
-- If queueSubmit fails, it may return
-- ERROR_OUT_OF_HOST_MEMORY or ERROR_OUT_OF_DEVICE_MEMORY.
-- If it does, the implementation must ensure that the state and
-- contents of any resources or synchronization primitives referenced by
-- the submitted command buffers and any semaphores referenced by
-- pSubmits is unaffected by the call or its failure. If
-- queueSubmit fails in such a way that the implementation is
-- unable to make that guarantee, the implementation must return
-- ERROR_DEVICE_LOST. See Lost Device.
--
-- Valid Usage
--
--
-- - If fence is not NULL_HANDLE, fence
-- must be unsignaled
--
--
--
-- - If fence is not NULL_HANDLE, fence
-- must not be associated with any other queue command that has
-- not yet completed execution on that queue
-- - Any calls to cmdSetEvent, cmdResetEvent or
-- cmdWaitEvents that have been recorded into any of the command
-- buffer elements of the pCommandBuffers member of any element
-- of pSubmits, must not reference any Event that
-- is referenced by any of those commands in a command buffer that has
-- been submitted to another queue and is still in the pending
-- state
-- - Any stage flag included in any element of the
-- pWaitDstStageMask member of any element of pSubmits
-- must be a pipeline stage supported by one of the capabilities
-- of queue, as specified in the table of supported pipeline
-- stages
-- - Each element of the pSignalSemaphores member of any
-- element of pSubmits must be unsignaled when the
-- semaphore signal operation it defines is executed on the device
-- - When a semaphore wait operation referring to a binary semaphore
-- defined by any element of the pWaitSemaphores member of any
-- element of pSubmits executes on queue, there
-- must be no other queues waiting on the same semaphore
-- - All elements of the pWaitSemaphores member of all
-- elements of pSubmits created with a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY must reference a semaphore signal
-- operation that has been submitted for execution and any semaphore
-- signal operations on which it depends (if any) must have also
-- been submitted for execution
-- - Each element of the pCommandBuffers member of each
-- element of pSubmits must be in the pending or
-- executable state
-- - If any element of the pCommandBuffers member of any
-- element of pSubmits was not recorded with the
-- COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, it must not
-- be in the pending state
-- - Any secondary command buffers recorded into any element of
-- the pCommandBuffers member of any element of
-- pSubmits must be in the pending or executable
-- state
-- - If any secondary command buffers recorded into any element
-- of the pCommandBuffers member of any element of
-- pSubmits was not recorded with the
-- COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, it must not
-- be in the pending state
-- - Each element of the pCommandBuffers member of each
-- element of pSubmits must have been allocated from a
-- CommandPool that was created for the same queue family
-- queue belongs to
-- - If any element of pSubmits->pCommandBuffers includes a
-- Queue Family Transfer Acquire Operation, there must
-- exist a previously submitted Queue Family Transfer Release
-- Operation on a queue in the queue family identified by the acquire
-- operation, with parameters matching the acquire operation as defined
-- in the definition of such acquire operations, and which
-- happens-before the acquire operation
-- - If a command recorded into any element of pCommandBuffers
-- was a cmdBeginQuery whose queryPool was created with a
-- queryType of QUERY_TYPE_PERFORMANCE_QUERY_KHR, the
-- profiling lock must have been held continuously on the
-- Device that queue was retrieved from, throughout
-- recording of those command buffers
-- - Any resource created with SHARING_MODE_EXCLUSIVE that is
-- read by an operation specified by pSubmits must not be
-- owned by any queue family other than the one which queue
-- belongs to, at the time it is executed
--
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
--
-- - If submitCount is not 0, pSubmits
-- must be a valid pointer to an array of submitCount
-- valid SubmitInfo structures
-- - If fence is not NULL_HANDLE, fence
-- must be a valid Fence handle
-- - Both of fence, and queue that are valid handles
-- of non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to queue must be externally
-- synchronized
--
--
--
-- - Host access to fence must be externally
-- synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Fence, Queue, SubmitInfo
queueSubmit :: forall io. MonadIO io => Queue -> ("submits" ::: Vector (SomeStruct SubmitInfo)) -> Fence -> io ()
-- | vkQueueWaitIdle - Wait for a queue to become idle
--
-- Description
--
-- queueWaitIdle is equivalent to submitting a fence to a queue
-- and waiting with an infinite timeout for that fence to signal.
--
-- Valid Usage (Implicit)
--
--
-- - queue must be a valid Queue handle
--
--
-- Host Synchronization
--
--
-- - Host access to queue must be externally
-- synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Queue
queueWaitIdle :: forall io. MonadIO io => Queue -> io ()
-- | A variant of queueWaitIdle which makes a *safe* FFI call
queueWaitIdleSafe :: forall io. MonadIO io => Queue -> io ()
-- | vkDeviceWaitIdle - Wait for a device to become idle
--
-- Description
--
-- deviceWaitIdle is equivalent to calling queueWaitIdle
-- for all queues owned by device.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
-- Host Synchronization
--
--
-- - Host access to all Queue objects created from
-- device must be externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device
deviceWaitIdle :: forall io. MonadIO io => Device -> io ()
-- | A variant of deviceWaitIdle which makes a *safe* FFI call
deviceWaitIdleSafe :: forall io. MonadIO io => Device -> io ()
-- | VkSubmitInfo - Structure specifying a queue submit operation
--
-- Description
--
-- The order that command buffers appear in pCommandBuffers is
-- used to determine submission order, and thus all the
-- implicit ordering guarantees that respect it. Other than these
-- implicit ordering guarantees and any explicit synchronization
-- primitives, these command buffers may overlap or otherwise
-- execute out of order.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of D3D12FenceSubmitInfoKHR,
-- DeviceGroupSubmitInfo, PerformanceQuerySubmitInfoKHR,
-- ProtectedSubmitInfo, TimelineSemaphoreSubmitInfo,
-- Win32KeyedMutexAcquireReleaseInfoKHR, or
-- Win32KeyedMutexAcquireReleaseInfoNV
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - If waitSemaphoreCount is not 0,
-- pWaitSemaphores must be a valid pointer to an array of
-- waitSemaphoreCount valid Semaphore handles
-- - If waitSemaphoreCount is not 0,
-- pWaitDstStageMask must be a valid pointer to an array
-- of waitSemaphoreCount valid combinations of
-- PipelineStageFlagBits values
-- - Each element of pWaitDstStageMask must not be
-- 0
-- - If commandBufferCount is not 0,
-- pCommandBuffers must be a valid pointer to an array of
-- commandBufferCount valid CommandBuffer handles
-- - If signalSemaphoreCount is not 0,
-- pSignalSemaphores must be a valid pointer to an array
-- of signalSemaphoreCount valid Semaphore handles
-- - Each of the elements of pCommandBuffers, the elements of
-- pSignalSemaphores, and the elements of
-- pWaitSemaphores that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- See Also
--
-- CommandBuffer, PipelineStageFlags, Semaphore,
-- StructureType, queueSubmit
data SubmitInfo (es :: [Type])
SubmitInfo :: Chain es -> Vector Semaphore -> Vector PipelineStageFlags -> Vector (Ptr CommandBuffer_T) -> Vector Semaphore -> SubmitInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SubmitInfo] :: SubmitInfo (es :: [Type]) -> Chain es
-- | pWaitSemaphores is a pointer to an array of Semaphore
-- handles upon which to wait before the command buffers for this batch
-- begin execution. If semaphores to wait on are provided, they define a
-- semaphore wait operation.
[$sel:waitSemaphores:SubmitInfo] :: SubmitInfo (es :: [Type]) -> Vector Semaphore
-- | pWaitDstStageMask is a pointer to an array of pipeline stages
-- at which each corresponding semaphore wait will occur.
[$sel:waitDstStageMask:SubmitInfo] :: SubmitInfo (es :: [Type]) -> Vector PipelineStageFlags
-- | pCommandBuffers is a pointer to an array of
-- CommandBuffer handles to execute in the batch.
[$sel:commandBuffers:SubmitInfo] :: SubmitInfo (es :: [Type]) -> Vector (Ptr CommandBuffer_T)
-- | pSignalSemaphores is a pointer to an array of
-- Semaphore handles which will be signaled when the command
-- buffers for this batch have completed execution. If semaphores to be
-- signaled are provided, they define a semaphore signal
-- operation.
[$sel:signalSemaphores:SubmitInfo] :: SubmitInfo (es :: [Type]) -> Vector Semaphore
-- | VkQueue - Opaque handle to a queue object
--
-- See Also
--
-- getDeviceQueue, getDeviceQueue2,
-- getQueueCheckpointDataNV, queueBeginDebugUtilsLabelEXT,
-- queueBindSparse, queueEndDebugUtilsLabelEXT,
-- queueInsertDebugUtilsLabelEXT, queuePresentKHR,
-- queueSetPerformanceConfigurationINTEL, queueSubmit,
-- queueWaitIdle
data Queue
Queue :: Ptr Queue_T -> DeviceCmds -> Queue
[$sel:queueHandle:Queue] :: Queue -> Ptr Queue_T
[$sel:deviceCmds:Queue] :: Queue -> DeviceCmds
-- | VkPipelineStageFlagBits - Bitmask specifying pipeline stages
--
-- See Also
--
-- CheckpointDataNV, PipelineStageFlags,
-- cmdWriteBufferMarkerAMD, cmdWriteTimestamp
newtype PipelineStageFlagBits
PipelineStageFlagBits :: Flags -> PipelineStageFlagBits
-- | PIPELINE_STAGE_TOP_OF_PIPE_BIT is equivalent to
-- PIPELINE_STAGE_ALL_COMMANDS_BIT with AccessFlags set to
-- 0 when specified in the second synchronization scope, but
-- specifies no stages in the first scope.
pattern PIPELINE_STAGE_TOP_OF_PIPE_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_DRAW_INDIRECT_BIT specifies the stage of the
-- pipeline where Draw/DispatchIndirect data structures are consumed.
-- This stage also includes reading commands written by
-- cmdExecuteGeneratedCommandsNV.
pattern PIPELINE_STAGE_DRAW_INDIRECT_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_VERTEX_INPUT_BIT specifies the stage of the
-- pipeline where vertex and index buffers are consumed.
pattern PIPELINE_STAGE_VERTEX_INPUT_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_VERTEX_SHADER_BIT specifies the vertex shader
-- stage.
pattern PIPELINE_STAGE_VERTEX_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT specifies the
-- tessellation control shader stage.
pattern PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT specifies the
-- tessellation evaluation shader stage.
pattern PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_GEOMETRY_SHADER_BIT specifies the geometry
-- shader stage.
pattern PIPELINE_STAGE_GEOMETRY_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_FRAGMENT_SHADER_BIT specifies the fragment
-- shader stage.
pattern PIPELINE_STAGE_FRAGMENT_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT specifies the stage of
-- the pipeline where early fragment tests (depth and stencil tests
-- before fragment shading) are performed. This stage also includes
-- subpass load operations for framebuffer attachments with a
-- depth/stencil format.
pattern PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT specifies the stage of
-- the pipeline where late fragment tests (depth and stencil tests after
-- fragment shading) are performed. This stage also includes subpass
-- store operations for framebuffer attachments with a depth/stencil
-- format.
pattern PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT specifies the stage
-- of the pipeline after blending where the final color values are output
-- from the pipeline. This stage also includes subpass load and store
-- operations and multisample resolve operations for framebuffer
-- attachments with a color or depth/stencil format.
pattern PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_COMPUTE_SHADER_BIT specifies the execution of a
-- compute shader.
pattern PIPELINE_STAGE_COMPUTE_SHADER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TRANSFER_BIT specifies the following commands:
--
--
pattern PIPELINE_STAGE_TRANSFER_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT is equivalent to
-- PIPELINE_STAGE_ALL_COMMANDS_BIT with AccessFlags set to
-- 0 when specified in the first synchronization scope, but
-- specifies no stages in the second scope.
pattern PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_HOST_BIT specifies a pseudo-stage indicating
-- execution on the host of reads/writes of device memory. This stage is
-- not invoked by any commands recorded in a command buffer.
pattern PIPELINE_STAGE_HOST_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_ALL_GRAPHICS_BIT specifies the execution of all
-- graphics pipeline stages, and is equivalent to the logical OR of:
--
--
pattern PIPELINE_STAGE_ALL_GRAPHICS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_ALL_COMMANDS_BIT specifies all commands
-- supported on the queue it is used with.
pattern PIPELINE_STAGE_ALL_COMMANDS_BIT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV specifies the stage of
-- the pipeline where device-side preprocessing for generated commands
-- via cmdPreprocessGeneratedCommandsNV is handled.
pattern PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT specifies the
-- stage of the pipeline where the fragment density map is read to
-- generate the fragment areas.
pattern PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_MESH_SHADER_BIT_NV specifies the mesh shader
-- stage.
pattern PIPELINE_STAGE_MESH_SHADER_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TASK_SHADER_BIT_NV specifies the task shader
-- stage.
pattern PIPELINE_STAGE_TASK_SHADER_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV specifies the stage of
-- the pipeline where the shading rate image is read to determine
-- the shading rate for portions of a rasterized primitive.
pattern PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV :: PipelineStageFlagBits
-- | PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR specifies
-- the execution of acceleration structure commands.
pattern PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR :: PipelineStageFlagBits
-- | PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR specifies the
-- execution of the ray tracing shader stages.
pattern PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR :: PipelineStageFlagBits
-- | PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT specifies the
-- stage of the pipeline where the predicate of conditional rendering is
-- consumed.
pattern PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT :: PipelineStageFlagBits
-- | PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT specifies the stage
-- of the pipeline where vertex attribute output values are written to
-- the transform feedback buffers.
pattern PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT :: PipelineStageFlagBits
type PipelineStageFlags = PipelineStageFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Queue.SubmitInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Queue.SubmitInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Queue.SubmitInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Queue.SubmitInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Queue.SubmitInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Queue.SubmitInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Queue.SubmitInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Queue.SubmitInfo es)
module Vulkan.Core10.Query
-- | vkCreateQueryPool - Create a new query pool object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- QueryPoolCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pQueryPool must be a valid pointer to a
-- QueryPool handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, QueryPool,
-- QueryPoolCreateInfo
createQueryPool :: forall a io. (Extendss QueryPoolCreateInfo a, PokeChain a, MonadIO io) => Device -> QueryPoolCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io QueryPool
-- | A convenience wrapper to make a compatible pair of calls to
-- createQueryPool and destroyQueryPool
--
-- To ensure that destroyQueryPool is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withQueryPool :: forall a io r. (Extendss QueryPoolCreateInfo a, PokeChain a, MonadIO io) => Device -> QueryPoolCreateInfo a -> Maybe AllocationCallbacks -> (io QueryPool -> (QueryPool -> io ()) -> r) -> r
-- | vkDestroyQueryPool - Destroy a query pool object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to queryPool
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- queryPool was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- queryPool was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If queryPool is not NULL_HANDLE,
-- queryPool must be a valid QueryPool handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If queryPool is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to queryPool must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, QueryPool
destroyQueryPool :: forall io. MonadIO io => Device -> QueryPool -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetQueryPoolResults - Copy results of queries in a query pool to a
-- host memory region
--
-- Description
--
-- The range of queries read is defined by [firstQuery,
-- firstQuery + queryCount - 1]. For pipeline
-- statistics queries, each query index in the pool contains one integer
-- value for each bit that is enabled in
-- QueryPoolCreateInfo::pipelineStatistics when the pool
-- is created.
--
-- If no bits are set in flags, and all requested queries are in
-- the available state, results are written as an array of 32-bit
-- unsigned integer values. The behavior when not all queries are
-- available, is described below.
--
-- If QUERY_RESULT_64_BIT is not set and the result overflows a
-- 32-bit value, the value may either wrap or saturate. Similarly,
-- if QUERY_RESULT_64_BIT is set and the result overflows a 64-bit
-- value, the value may either wrap or saturate.
--
-- If QUERY_RESULT_WAIT_BIT is set, Vulkan will wait for each
-- query to be in the available state before retrieving the numerical
-- results for that query. In this case, getQueryPoolResults is
-- guaranteed to succeed and return SUCCESS if the queries become
-- available in a finite time (i.e. if they have been issued and not
-- reset). If queries will never finish (e.g. due to being reset but not
-- issued), then getQueryPoolResults may not return in
-- finite time.
--
-- If QUERY_RESULT_WAIT_BIT and QUERY_RESULT_PARTIAL_BIT
-- are both not set then no result values are written to pData
-- for queries that are in the unavailable state at the time of the call,
-- and getQueryPoolResults returns NOT_READY. However,
-- availability state is still written to pData for those
-- queries if QUERY_RESULT_WITH_AVAILABILITY_BIT is set.
--
-- Note
--
-- Applications must take care to ensure that use of the
-- QUERY_RESULT_WAIT_BIT bit has the desired effect.
--
-- For example, if a query has been used previously and a command buffer
-- records the commands cmdResetQueryPool, cmdBeginQuery,
-- and cmdEndQuery for that query, then the query will remain in
-- the available state until resetQueryPool is called or the
-- cmdResetQueryPool command executes on a queue. Applications
-- can use fences or events to ensure that a query has already
-- been reset before checking for its results or availability status.
-- Otherwise, a stale value could be returned from a previous use of the
-- query.
--
-- The above also applies when QUERY_RESULT_WAIT_BIT is used in
-- combination with QUERY_RESULT_WITH_AVAILABILITY_BIT. In this
-- case, the returned availability status may reflect the result
-- of a previous use of the query unless resetQueryPool is called
-- or the cmdResetQueryPool command has been executed since the
-- last use of the query.
--
-- Note
--
-- Applications can double-buffer query pool usage, with a pool
-- per frame, and reset queries at the end of the frame in which they are
-- read.
--
-- If QUERY_RESULT_PARTIAL_BIT is set,
-- QUERY_RESULT_WAIT_BIT is not set, and the query’s status is
-- unavailable, an intermediate result value between zero and the final
-- result value is written to pData for that query.
--
-- If QUERY_RESULT_WITH_AVAILABILITY_BIT is set, the final integer
-- value written for each query is non-zero if the query’s status was
-- available or zero if the status was unavailable. When
-- QUERY_RESULT_WITH_AVAILABILITY_BIT is used, implementations
-- must guarantee that if they return a non-zero availability
-- value then the numerical results must be valid, assuming the
-- results are not reset by a subsequent command.
--
-- Note
--
-- Satisfying this guarantee may require careful ordering by the
-- application, e.g. to read the availability status before reading the
-- results.
--
-- Valid Usage
--
--
-- - firstQuery must be less than the number of queries
-- in queryPool
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - pData must be a valid pointer to an array of
-- dataSize bytes
-- - flags must be a valid combination of
-- QueryResultFlagBits values
-- - dataSize must be greater than 0
-- - queryPool must have been created, allocated, or
-- retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceSize, QueryPool,
-- QueryResultFlags
getQueryPoolResults :: forall io. MonadIO io => Device -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> io Result
-- | VkQueryPoolCreateInfo - Structure specifying parameters of a newly
-- created query pool
--
-- Description
--
-- pipelineStatistics is ignored if queryType is not
-- QUERY_TYPE_PIPELINE_STATISTICS.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- QueryPipelineStatisticFlags, QueryPoolCreateFlags,
-- QueryType, StructureType, createQueryPool
data QueryPoolCreateInfo (es :: [Type])
QueryPoolCreateInfo :: Chain es -> QueryPoolCreateFlags -> QueryType -> Word32 -> QueryPipelineStatisticFlags -> QueryPoolCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:QueryPoolCreateInfo] :: QueryPoolCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:QueryPoolCreateInfo] :: QueryPoolCreateInfo (es :: [Type]) -> QueryPoolCreateFlags
-- | queryType is a QueryType value specifying the type of
-- queries managed by the pool.
[$sel:queryType:QueryPoolCreateInfo] :: QueryPoolCreateInfo (es :: [Type]) -> QueryType
-- | queryCount is the number of queries managed by the pool.
[$sel:queryCount:QueryPoolCreateInfo] :: QueryPoolCreateInfo (es :: [Type]) -> Word32
-- | pipelineStatistics is a bitmask of
-- QueryPipelineStatisticFlagBits specifying which counters will
-- be returned in queries on the new pool, as described below in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#queries-pipestats.
[$sel:pipelineStatistics:QueryPoolCreateInfo] :: QueryPoolCreateInfo (es :: [Type]) -> QueryPipelineStatisticFlags
-- | VkQueryPool - Opaque handle to a query pool object
--
-- See Also
--
-- cmdBeginQuery, cmdBeginQueryIndexedEXT,
-- cmdCopyQueryPoolResults, cmdEndQuery,
-- cmdEndQueryIndexedEXT, cmdResetQueryPool,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteTimestamp, createQueryPool,
-- destroyQueryPool, getQueryPoolResults,
-- resetQueryPool, resetQueryPoolEXT
newtype QueryPool
QueryPool :: Word64 -> QueryPool
-- | VkQueryPoolCreateFlags - Reserved for future use
--
-- Description
--
-- QueryPoolCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- QueryPoolCreateInfo
newtype QueryPoolCreateFlags
QueryPoolCreateFlags :: Flags -> QueryPoolCreateFlags
-- | VkQueryType - Specify the type of queries managed by a query pool
--
-- See Also
--
-- QueryPoolCreateInfo,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- writeAccelerationStructuresPropertiesKHR
newtype QueryType
QueryType :: Int32 -> QueryType
-- | QUERY_TYPE_OCCLUSION specifies an occlusion query.
pattern QUERY_TYPE_OCCLUSION :: QueryType
-- | QUERY_TYPE_PIPELINE_STATISTICS specifies a pipeline
-- statistics query.
pattern QUERY_TYPE_PIPELINE_STATISTICS :: QueryType
-- | QUERY_TYPE_TIMESTAMP specifies a timestamp query.
pattern QUERY_TYPE_TIMESTAMP :: QueryType
-- | QUERY_TYPE_PERFORMANCE_QUERY_INTEL specifies a Intel
-- performance query.
pattern QUERY_TYPE_PERFORMANCE_QUERY_INTEL :: QueryType
-- | QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR
-- specifies a ray tracing serialization acceleration structure size
-- query
pattern QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR :: QueryType
-- | QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR specifies
-- a ray tracing acceleration structure size query.
pattern QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR :: QueryType
-- | QUERY_TYPE_PERFORMANCE_QUERY_KHR specifies a performance
-- query.
pattern QUERY_TYPE_PERFORMANCE_QUERY_KHR :: QueryType
-- | QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT specifies a
-- transform feedback query.
pattern QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT :: QueryType
-- | VkQueryResultFlagBits - Bitmask specifying how and when query results
-- are returned
--
-- See Also
--
-- QueryResultFlags
newtype QueryResultFlagBits
QueryResultFlagBits :: Flags -> QueryResultFlagBits
-- | QUERY_RESULT_64_BIT specifies the results will be written as an
-- array of 64-bit unsigned integer values. If this bit is not set, the
-- results will be written as an array of 32-bit unsigned integer values.
pattern QUERY_RESULT_64_BIT :: QueryResultFlagBits
-- | QUERY_RESULT_WAIT_BIT specifies that Vulkan will wait for each
-- query’s status to become available before retrieving its results.
pattern QUERY_RESULT_WAIT_BIT :: QueryResultFlagBits
-- | QUERY_RESULT_WITH_AVAILABILITY_BIT specifies that the
-- availability status accompanies the results.
pattern QUERY_RESULT_WITH_AVAILABILITY_BIT :: QueryResultFlagBits
-- | QUERY_RESULT_PARTIAL_BIT specifies that returning partial
-- results is acceptable.
pattern QUERY_RESULT_PARTIAL_BIT :: QueryResultFlagBits
type QueryResultFlags = QueryResultFlagBits
-- | VkQueryPipelineStatisticFlagBits - Bitmask specifying queried pipeline
-- statistics
--
-- Description
--
-- These values are intended to measure relative statistics on one
-- implementation. Various device architectures will count these values
-- differently. Any or all counters may be affected by the issues
-- described in Query Operation.
--
-- Note
--
-- For example, tile-based rendering devices may need to replay
-- the scene multiple times, affecting some of the counts.
--
-- If a pipeline has rasterizerDiscardEnable enabled,
-- implementations may discard primitives after the final vertex
-- processing stage. As a result, if rasterizerDiscardEnable is
-- enabled, the clipping input and output primitives counters may
-- not be incremented.
--
-- When a pipeline statistics query finishes, the result for that query
-- is marked as available. The application can copy the result to
-- a buffer (via cmdCopyQueryPoolResults), or request it be put
-- into host memory (via getQueryPoolResults).
--
-- See Also
--
-- QueryPipelineStatisticFlags
newtype QueryPipelineStatisticFlagBits
QueryPipelineStatisticFlagBits :: Flags -> QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT specifies
-- that queries managed by the pool will count the number of vertices
-- processed by the input assembly stage. Vertices corresponding
-- to incomplete primitives may contribute to the count.
pattern QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT
-- specifies that queries managed by the pool will count the number of
-- primitives processed by the input assembly stage. If primitive
-- restart is enabled, restarting the primitive topology has no effect on
-- the count. Incomplete primitives may be counted.
pattern QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- vertex shader invocations. This counter’s value is incremented each
-- time a vertex shader is invoked.
pattern QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- geometry shader invocations. This counter’s value is incremented each
-- time a geometry shader is invoked. In the case of instanced
-- geometry shaders, the geometry shader invocations count is
-- incremented for each separate instanced invocation.
pattern QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT
-- specifies that queries managed by the pool will count the number of
-- primitives generated by geometry shader invocations. The counter’s
-- value is incremented each time the geometry shader emits a primitive.
-- Restarting primitive topology using the SPIR-V instructions
-- OpEndPrimitive or OpEndStreamPrimitive has no effect
-- on the geometry shader output primitives count.
pattern QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT specifies
-- that queries managed by the pool will count the number of primitives
-- processed by the Primitive Clipping stage of the pipeline. The
-- counter’s value is incremented each time a primitive reaches the
-- primitive clipping stage.
pattern QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT specifies that
-- queries managed by the pool will count the number of primitives output
-- by the Primitive Clipping stage of the pipeline. The counter’s
-- value is incremented each time a primitive passes the primitive
-- clipping stage. The actual number of primitives output by the
-- primitive clipping stage for a particular input primitive is
-- implementation-dependent but must satisfy the following
-- conditions:
--
--
-- - If at least one vertex of the input primitive lies inside the
-- clipping volume, the counter is incremented by one or more.
-- - Otherwise, the counter is incremented by zero or more.
--
pattern QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- fragment shader invocations. The counter’s value is incremented each
-- time the fragment shader is invoked.
pattern QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- |
-- QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT
-- specifies that queries managed by the pool will count the number of
-- patches processed by the tessellation control shader. The counter’s
-- value is incremented once for each patch for which a tessellation
-- control shader is invoked.
pattern QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT :: QueryPipelineStatisticFlagBits
-- |
-- QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- invocations of the tessellation evaluation shader. The counter’s value
-- is incremented each time the tessellation evaluation shader is
-- invoked.
pattern QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
-- | QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT
-- specifies that queries managed by the pool will count the number of
-- compute shader invocations. The counter’s value is incremented every
-- time the compute shader is invoked. Implementations may skip
-- the execution of certain compute shader invocations or execute
-- additional compute shader invocations for implementation-dependent
-- reasons as long as the results of rendering otherwise remain
-- unchanged.
pattern QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT :: QueryPipelineStatisticFlagBits
type QueryPipelineStatisticFlags = QueryPipelineStatisticFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Query.QueryPoolCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Query.QueryPoolCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Query.QueryPoolCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Query.QueryPoolCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Query.QueryPoolCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Query.QueryPoolCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Query.QueryPoolCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Query.QueryPoolCreateInfo es)
module Vulkan.Core10.Pipeline
-- | vkCreateGraphicsPipelines - Create graphics pipelines
--
-- Description
--
-- The GraphicsPipelineCreateInfo structure includes an array of
-- shader create info structures containing all the desired active shader
-- stages, as well as creation info to define all relevant fixed-function
-- stages, and a pipeline layout.
--
-- Valid Usage
--
--
-- - If the flags member of any element of
-- pCreateInfos contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and the
-- basePipelineIndex member of that same element is not
-- -1, basePipelineIndex must be less than the
-- index into pCreateInfos that corresponds to that element
--
--
--
--
-- Note
--
-- An implicit cache may be provided by the implementation or a layer.
-- For this reason, it is still valid to set
-- PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT on
-- flags for any element of pCreateInfos while passing
-- NULL_HANDLE for pipelineCache.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipelineCache is not NULL_HANDLE,
-- pipelineCache must be a valid PipelineCache
-- handle
-- - pCreateInfos must be a valid pointer to an array
-- of createInfoCount valid GraphicsPipelineCreateInfo
-- structures
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pPipelines must be a valid pointer to an array of
-- createInfoCount Pipeline handles
-- - createInfoCount must be greater than
-- 0
-- - If pipelineCache is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- GraphicsPipelineCreateInfo, Pipeline,
-- PipelineCache
createGraphicsPipelines :: forall io. MonadIO io => Device -> PipelineCache -> ("createInfos" ::: Vector (SomeStruct GraphicsPipelineCreateInfo)) -> ("allocator" ::: Maybe AllocationCallbacks) -> io (Result, "pipelines" ::: Vector Pipeline)
-- | A convenience wrapper to make a compatible pair of calls to
-- createGraphicsPipelines and destroyPipeline
--
-- To ensure that destroyPipeline is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withGraphicsPipelines :: forall io r. MonadIO io => Device -> PipelineCache -> Vector (SomeStruct GraphicsPipelineCreateInfo) -> Maybe AllocationCallbacks -> (io (Result, Vector Pipeline) -> ((Result, Vector Pipeline) -> io ()) -> r) -> r
-- | vkCreateComputePipelines - Creates a new compute pipeline object
--
-- Valid Usage
--
--
-- - If the flags member of any element of
-- pCreateInfos contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and the
-- basePipelineIndex member of that same element is not
-- -1, basePipelineIndex must be less than the
-- index into pCreateInfos that corresponds to that element
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipelineCache is not NULL_HANDLE,
-- pipelineCache must be a valid PipelineCache
-- handle
-- - pCreateInfos must be a valid pointer to an array
-- of createInfoCount valid ComputePipelineCreateInfo
-- structures
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pPipelines must be a valid pointer to an array of
-- createInfoCount Pipeline handles
-- - createInfoCount must be greater than
-- 0
-- - If pipelineCache is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, ComputePipelineCreateInfo,
-- Device, Pipeline, PipelineCache
createComputePipelines :: forall io. MonadIO io => Device -> PipelineCache -> ("createInfos" ::: Vector (SomeStruct ComputePipelineCreateInfo)) -> ("allocator" ::: Maybe AllocationCallbacks) -> io (Result, "pipelines" ::: Vector Pipeline)
-- | A convenience wrapper to make a compatible pair of calls to
-- createComputePipelines and destroyPipeline
--
-- To ensure that destroyPipeline is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withComputePipelines :: forall io r. MonadIO io => Device -> PipelineCache -> Vector (SomeStruct ComputePipelineCreateInfo) -> Maybe AllocationCallbacks -> (io (Result, Vector Pipeline) -> ((Result, Vector Pipeline) -> io ()) -> r) -> r
-- | vkDestroyPipeline - Destroy a pipeline object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to pipeline must
-- have completed execution
--
--
--
-- - If AllocationCallbacks were provided when pipeline
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when
-- pipeline was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipeline is not NULL_HANDLE, pipeline
-- must be a valid Pipeline handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If pipeline is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to pipeline must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Pipeline
destroyPipeline :: forall io. MonadIO io => Device -> Pipeline -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkViewport - Structure specifying a viewport
--
-- Description
--
-- The framebuffer depth coordinate zf may be represented
-- using either a fixed-point or floating-point representation. However,
-- a floating-point representation must be used if the
-- depth/stencil attachment has a floating-point depth component. If an
-- m-bit fixed-point representation is used, we assume that it represents
-- each value <math>, where k ∈ { 0, 1, …, 2m-1 }, as k (e.g. 1.0
-- is represented in binary as a string of all ones).
--
-- The viewport parameters shown in the above equations are found from
-- these values as
--
--
-- - ox = x + width / 2
-- - oy = y + height / 2
-- - oz = minDepth
-- - px = width
-- - py = height
-- - pz = maxDepth - minDepth.
--
--
-- If a render pass transform is enabled, the values (px,py) and (ox, oy)
-- defining the viewport are transformed as described in render pass
-- transform before participating in the viewport transform.
--
-- The application can specify a negative term for
-- height, which has the effect of negating the y coordinate in
-- clip space before performing the transform. When using a negative
-- height, the application should also adjust the
-- y value to point to the lower left corner of the viewport
-- instead of the upper left corner. Using the negative height
-- allows the application to avoid having to negate the y component of
-- the Position output from the last vertex processing stage in
-- shaders that also target other graphics APIs.
--
-- The width and height of the implementation-dependent maximum
-- viewport dimensions must be greater than or equal to the
-- width and height of the largest image which can be created and
-- attached to a framebuffer.
--
-- The floating-point viewport bounds are represented with an
-- implementation-dependent precision.
--
-- Valid Usage
--
--
-- - width must be greater than 0.0
--
--
--
-- - width must be less than or equal to
-- PhysicalDeviceLimits::maxViewportDimensions[0]
-- - The absolute value of height must be less than or
-- equal to
-- PhysicalDeviceLimits::maxViewportDimensions[1]
-- - x must be greater than or equal to
-- viewportBoundsRange[0]
-- - (x + width) must be less than or equal to
-- viewportBoundsRange[1]
-- - y must be greater than or equal to
-- viewportBoundsRange[0]
-- - y must be less than or equal to
-- viewportBoundsRange[1]
-- - (y + height) must be greater than or
-- equal to viewportBoundsRange[0]
-- - (y + height) must be less than or equal
-- to viewportBoundsRange[1]
-- - Unless VK_EXT_depth_range_unrestricted extension is
-- enabled minDepth must be between 0.0 and
-- 1.0, inclusive
-- - Unless VK_EXT_depth_range_unrestricted extension is
-- enabled maxDepth must be between 0.0 and
-- 1.0, inclusive
--
--
-- See Also
--
-- PipelineViewportStateCreateInfo, cmdSetViewport
data Viewport
Viewport :: Float -> Float -> Float -> Float -> Float -> Float -> Viewport
-- | x and y are the viewport’s upper left corner (x,y).
[$sel:x:Viewport] :: Viewport -> Float
[$sel:y:Viewport] :: Viewport -> Float
-- | width and height are the viewport’s width and
-- height, respectively.
[$sel:width:Viewport] :: Viewport -> Float
[$sel:height:Viewport] :: Viewport -> Float
-- | minDepth and maxDepth are the depth range for the
-- viewport. It is valid for minDepth to be greater than or
-- equal to maxDepth.
[$sel:minDepth:Viewport] :: Viewport -> Float
[$sel:maxDepth:Viewport] :: Viewport -> Float
-- | VkSpecializationMapEntry - Structure specifying a specialization map
-- entry
--
-- Description
--
-- If a constantID value is not a specialization constant ID
-- used in the shader, that map entry does not affect the behavior of the
-- pipeline.
--
-- Valid Usage
--
--
-- - For a constantID specialization constant declared in a
-- shader, size must match the byte size of the
-- constantID. If the specialization constant is of type
-- boolean, size must be the byte size of
-- Bool32
--
--
-- See Also
--
-- SpecializationInfo
data SpecializationMapEntry
SpecializationMapEntry :: Word32 -> Word32 -> Word64 -> SpecializationMapEntry
-- | constantID is the ID of the specialization constant in
-- SPIR-V.
[$sel:constantID:SpecializationMapEntry] :: SpecializationMapEntry -> Word32
-- | offset is the byte offset of the specialization constant
-- value within the supplied data buffer.
[$sel:offset:SpecializationMapEntry] :: SpecializationMapEntry -> Word32
-- | size is the byte size of the specialization constant value
-- within the supplied data buffer.
[$sel:size:SpecializationMapEntry] :: SpecializationMapEntry -> Word64
-- | VkSpecializationInfo - Structure specifying specialization info
--
-- Description
--
-- pMapEntries is a pointer to a SpecializationMapEntry
-- structure.
--
-- Valid Usage
--
--
-- - The offset member of each element of pMapEntries
-- must be less than dataSize
--
--
--
-- - The size member of each element of pMapEntries
-- must be less than or equal to dataSize minus
-- offset
--
--
-- Valid Usage (Implicit)
--
--
-- - If mapEntryCount is not 0, pMapEntries
-- must be a valid pointer to an array of mapEntryCount
-- valid SpecializationMapEntry structures
--
--
--
-- - If dataSize is not 0, pData must
-- be a valid pointer to an array of dataSize bytes
--
--
-- See Also
--
-- PipelineShaderStageCreateInfo, SpecializationMapEntry
data SpecializationInfo
SpecializationInfo :: Vector SpecializationMapEntry -> Word64 -> Ptr () -> SpecializationInfo
-- | pMapEntries is a pointer to an array of
-- SpecializationMapEntry structures which map constant IDs to
-- offsets in pData.
[$sel:mapEntries:SpecializationInfo] :: SpecializationInfo -> Vector SpecializationMapEntry
-- | dataSize is the byte size of the pData buffer.
[$sel:dataSize:SpecializationInfo] :: SpecializationInfo -> Word64
-- | pData contains the actual constant values to specialize with.
[$sel:data':SpecializationInfo] :: SpecializationInfo -> Ptr ()
-- | VkPipelineShaderStageCreateInfo - Structure specifying parameters of a
-- newly created pipeline shader stage
--
-- Valid Usage
--
--
--
--
-- - If the tessellation shaders feature is not enabled,
-- stage must not be
-- SHADER_STAGE_TESSELLATION_CONTROL_BIT or
-- SHADER_STAGE_TESSELLATION_EVALUATION_BIT
-- - If the mesh shader feature is not enabled, stage
-- must not be SHADER_STAGE_MESH_BIT_NV
-- - If the task shader feature is not enabled, stage
-- must not be SHADER_STAGE_TASK_BIT_NV
-- - stage must not be
-- SHADER_STAGE_ALL_GRAPHICS, or SHADER_STAGE_ALL
-- - pName must be the name of an OpEntryPoint
-- in module with an execution model that matches
-- stage
-- - If the identified entry point includes any variable in its
-- interface that is declared with the ClipDistance
-- BuiltIn decoration, that variable must not have an
-- array size greater than
-- PhysicalDeviceLimits::maxClipDistances
-- - If the identified entry point includes any variable in its
-- interface that is declared with the CullDistance
-- BuiltIn decoration, that variable must not have an
-- array size greater than
-- PhysicalDeviceLimits::maxCullDistances
-- - If the identified entry point includes any variables in its
-- interface that are declared with the ClipDistance or
-- CullDistance BuiltIn decoration, those variables
-- must not have array sizes which sum to more than
-- PhysicalDeviceLimits::maxCombinedClipAndCullDistances
-- - If the identified entry point includes any variable in its
-- interface that is declared with the SampleMask BuiltIn
-- decoration, that variable must not have an array size greater
-- than PhysicalDeviceLimits::maxSampleMaskWords
-- - If stage is SHADER_STAGE_VERTEX_BIT, the
-- identified entry point must not include any input variable in
-- its interface that is decorated with CullDistance
-- - If stage is SHADER_STAGE_TESSELLATION_CONTROL_BIT
-- or SHADER_STAGE_TESSELLATION_EVALUATION_BIT, and the identified
-- entry point has an OpExecutionMode instruction that specifies
-- a patch size with OutputVertices, the patch size must
-- be greater than 0 and less than or equal to
-- PhysicalDeviceLimits::maxTessellationPatchSize
-- - If stage is SHADER_STAGE_GEOMETRY_BIT, the
-- identified entry point must have an OpExecutionMode
-- instruction that specifies a maximum output vertex count that is
-- greater than 0 and less than or equal to
-- PhysicalDeviceLimits::maxGeometryOutputVertices
-- - If stage is SHADER_STAGE_GEOMETRY_BIT, the
-- identified entry point must have an OpExecutionMode
-- instruction that specifies an invocation count that is greater than
-- 0 and less than or equal to
-- PhysicalDeviceLimits::maxGeometryShaderInvocations
-- - If stage is a vertex processing stage, and the identified
-- entry point writes to Layer for any primitive, it must
-- write the same value to Layer for all vertices of a given
-- primitive
-- - If stage is a vertex processing stage, and the identified
-- entry point writes to ViewportIndex for any primitive, it
-- must write the same value to ViewportIndex for all
-- vertices of a given primitive
-- - If stage is SHADER_STAGE_FRAGMENT_BIT, the
-- identified entry point must not include any output variables in
-- its interface decorated with CullDistance
-- - If stage is SHADER_STAGE_FRAGMENT_BIT, and the
-- identified entry point writes to FragDepth in any execution
-- path, it must write to FragDepth in all execution
-- paths
-- - If stage is SHADER_STAGE_FRAGMENT_BIT, and the
-- identified entry point writes to FragStencilRefEXT in any
-- execution path, it must write to FragStencilRefEXT in
-- all execution paths
-- - If stage is SHADER_STAGE_MESH_BIT_NV, the
-- identified entry point must have an OpExecutionMode
-- instruction that specifies a maximum output vertex count,
-- OutputVertices, that is greater than 0 and less than
-- or equal to
-- PhysicalDeviceMeshShaderPropertiesNV::maxMeshOutputVertices
-- - If stage is SHADER_STAGE_MESH_BIT_NV, the
-- identified entry point must have an OpExecutionMode
-- instruction that specifies a maximum output primitive count,
-- OutputPrimitivesNV, that is greater than 0 and less
-- than or equal to
-- PhysicalDeviceMeshShaderPropertiesNV::maxMeshOutputPrimitives
-- - If flags has the
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- flag set, the subgroupSizeControl feature must be
-- enabled
-- - If flags has the
-- PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- flag set, the computeFullSubgroups feature must be
-- enabled
-- - If a PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
-- structure is included in the pNext chain, flags
-- must not have the
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- flag set
-- - If a PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
-- structure is included in the pNext chain, the
-- subgroupSizeControl feature must be enabled, and
-- stage must be a valid bit specified in
-- requiredSubgroupSizeStages
-- - If a PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
-- structure is included in the pNext chain and stage
-- is SHADER_STAGE_COMPUTE_BIT, the local workgroup size of the
-- shader must be less than or equal to the product of
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT::requiredSubgroupSize
-- and maxComputeWorkgroupSubgroups
-- - If a PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT
-- structure is included in the pNext chain, and flags
-- has the
-- PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- flag set, the local workgroup size in the X dimension of the pipeline
-- must be a multiple of
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT::requiredSubgroupSize
-- - If flags has both the
-- PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT and
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- flags set, the local workgroup size in the X dimension of the pipeline
-- must be a multiple of maxSubgroupSize
-- - If flags has the
-- PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- flag set and flags does not have the
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- flag set and no
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT structure
-- is included in the pNext chain, the local workgroup size in
-- the X dimension of the pipeline must be a multiple of
-- subgroupSize
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ComputePipelineCreateInfo, GraphicsPipelineCreateInfo,
-- GraphicsShaderGroupCreateInfoNV,
-- PipelineShaderStageCreateFlags,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, ShaderModule,
-- ShaderStageFlagBits, SpecializationInfo,
-- StructureType
data PipelineShaderStageCreateInfo (es :: [Type])
PipelineShaderStageCreateInfo :: Chain es -> PipelineShaderStageCreateFlags -> ShaderStageFlagBits -> ShaderModule -> ByteString -> Maybe SpecializationInfo -> PipelineShaderStageCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineShaderStageCreateInfo] :: PipelineShaderStageCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of
-- PipelineShaderStageCreateFlagBits specifying how the pipeline
-- shader stage will be generated.
[$sel:flags:PipelineShaderStageCreateInfo] :: PipelineShaderStageCreateInfo (es :: [Type]) -> PipelineShaderStageCreateFlags
-- | stage is a ShaderStageFlagBits value specifying a
-- single pipeline stage.
[$sel:stage:PipelineShaderStageCreateInfo] :: PipelineShaderStageCreateInfo (es :: [Type]) -> ShaderStageFlagBits
-- | module is a ShaderModule object containing the shader
-- for this stage.
[$sel:module':PipelineShaderStageCreateInfo] :: PipelineShaderStageCreateInfo (es :: [Type]) -> ShaderModule
-- | pName is a pointer to a null-terminated UTF-8 string
-- specifying the entry point name of the shader for this stage.
[$sel:name:PipelineShaderStageCreateInfo] :: PipelineShaderStageCreateInfo (es :: [Type]) -> ByteString
-- | pSpecializationInfo is a pointer to a
-- SpecializationInfo structure, as described in Specialization
-- Constants, or NULL.
[$sel:specializationInfo:PipelineShaderStageCreateInfo] :: PipelineShaderStageCreateInfo (es :: [Type]) -> Maybe SpecializationInfo
-- | VkComputePipelineCreateInfo - Structure specifying parameters of a
-- newly created compute pipeline
--
-- Description
--
-- The parameters basePipelineHandle and
-- basePipelineIndex are described in more detail in Pipeline
-- Derivatives.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Pipeline, PipelineCreateFlags, PipelineLayout,
-- PipelineShaderStageCreateInfo, StructureType,
-- createComputePipelines
data ComputePipelineCreateInfo (es :: [Type])
ComputePipelineCreateInfo :: Chain es -> PipelineCreateFlags -> SomeStruct PipelineShaderStageCreateInfo -> PipelineLayout -> Pipeline -> Int32 -> ComputePipelineCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:ComputePipelineCreateInfo] :: ComputePipelineCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of PipelineCreateFlagBits
-- specifying how the pipeline will be generated.
[$sel:flags:ComputePipelineCreateInfo] :: ComputePipelineCreateInfo (es :: [Type]) -> PipelineCreateFlags
-- | stage is a PipelineShaderStageCreateInfo structure
-- describing the compute shader.
[$sel:stage:ComputePipelineCreateInfo] :: ComputePipelineCreateInfo (es :: [Type]) -> SomeStruct PipelineShaderStageCreateInfo
-- | layout is the description of binding locations used by both
-- the pipeline and descriptor sets used with the pipeline.
[$sel:layout:ComputePipelineCreateInfo] :: ComputePipelineCreateInfo (es :: [Type]) -> PipelineLayout
-- | basePipelineHandle is a pipeline to derive from
[$sel:basePipelineHandle:ComputePipelineCreateInfo] :: ComputePipelineCreateInfo (es :: [Type]) -> Pipeline
-- | basePipelineIndex is an index into the pCreateInfos
-- parameter to use as a pipeline to derive from
[$sel:basePipelineIndex:ComputePipelineCreateInfo] :: ComputePipelineCreateInfo (es :: [Type]) -> Int32
-- | VkVertexInputBindingDescription - Structure specifying vertex input
-- binding description
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PipelineVertexInputStateCreateInfo, VertexInputRate
data VertexInputBindingDescription
VertexInputBindingDescription :: Word32 -> Word32 -> VertexInputRate -> VertexInputBindingDescription
-- | binding is the binding number that this structure describes.
--
-- binding must be less than
-- PhysicalDeviceLimits::maxVertexInputBindings
[$sel:binding:VertexInputBindingDescription] :: VertexInputBindingDescription -> Word32
-- | stride is the distance in bytes between two consecutive
-- elements within the buffer.
--
-- stride must be less than or equal to
-- PhysicalDeviceLimits::maxVertexInputBindingStride
[$sel:stride:VertexInputBindingDescription] :: VertexInputBindingDescription -> Word32
-- | inputRate is a VertexInputRate value specifying
-- whether vertex attribute addressing is a function of the vertex index
-- or of the instance index.
--
-- inputRate must be a valid VertexInputRate value
[$sel:inputRate:VertexInputBindingDescription] :: VertexInputBindingDescription -> VertexInputRate
-- | VkVertexInputAttributeDescription - Structure specifying vertex input
-- attribute description
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Format, PipelineVertexInputStateCreateInfo
data VertexInputAttributeDescription
VertexInputAttributeDescription :: Word32 -> Word32 -> Format -> Word32 -> VertexInputAttributeDescription
-- | location is the shader binding location number for this
-- attribute.
--
-- location must be less than
-- PhysicalDeviceLimits::maxVertexInputAttributes
[$sel:location:VertexInputAttributeDescription] :: VertexInputAttributeDescription -> Word32
-- | binding is the binding number which this attribute takes its
-- data from.
--
-- binding must be less than
-- PhysicalDeviceLimits::maxVertexInputBindings
[$sel:binding:VertexInputAttributeDescription] :: VertexInputAttributeDescription -> Word32
-- | format is the size and type of the vertex attribute data.
--
-- format must be allowed as a vertex buffer format, as
-- specified by the FORMAT_FEATURE_VERTEX_BUFFER_BIT flag in
-- FormatProperties::bufferFeatures returned by
-- getPhysicalDeviceFormatProperties
--
-- format must be a valid Format value
[$sel:format:VertexInputAttributeDescription] :: VertexInputAttributeDescription -> Format
-- | offset is a byte offset of this attribute relative to the
-- start of an element in the vertex input binding.
--
-- offset must be less than or equal to
-- PhysicalDeviceLimits::maxVertexInputAttributeOffset
[$sel:offset:VertexInputAttributeDescription] :: VertexInputAttributeDescription -> Word32
-- | VkPipelineVertexInputStateCreateInfo - Structure specifying parameters
-- of a newly created pipeline vertex input state
--
-- Valid Usage
--
--
-- - vertexBindingDescriptionCount must be less than or
-- equal to
-- PhysicalDeviceLimits::maxVertexInputBindings
--
--
--
-- - vertexAttributeDescriptionCount must be less than
-- or equal to
-- PhysicalDeviceLimits::maxVertexInputAttributes
-- - For every binding specified by each element of
-- pVertexAttributeDescriptions, a
-- VertexInputBindingDescription must exist in
-- pVertexBindingDescriptions with the same value of
-- binding
-- - All elements of pVertexBindingDescriptions must
-- describe distinct binding numbers
-- - All elements of pVertexAttributeDescriptions must
-- describe distinct attribute locations
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of
-- PipelineVertexInputDivisorStateCreateInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be 0
-- - If vertexBindingDescriptionCount is not 0,
-- pVertexBindingDescriptions must be a valid pointer to
-- an array of vertexBindingDescriptionCount valid
-- VertexInputBindingDescription structures
-- - If vertexAttributeDescriptionCount is not 0,
-- pVertexAttributeDescriptions must be a valid pointer
-- to an array of vertexAttributeDescriptionCount valid
-- VertexInputAttributeDescription structures
--
--
-- See Also
--
-- GraphicsPipelineCreateInfo,
-- GraphicsShaderGroupCreateInfoNV,
-- PipelineVertexInputStateCreateFlags, StructureType,
-- VertexInputAttributeDescription,
-- VertexInputBindingDescription
data PipelineVertexInputStateCreateInfo (es :: [Type])
PipelineVertexInputStateCreateInfo :: Chain es -> PipelineVertexInputStateCreateFlags -> Vector VertexInputBindingDescription -> Vector VertexInputAttributeDescription -> PipelineVertexInputStateCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineVertexInputStateCreateInfo] :: PipelineVertexInputStateCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:PipelineVertexInputStateCreateInfo] :: PipelineVertexInputStateCreateInfo (es :: [Type]) -> PipelineVertexInputStateCreateFlags
-- | pVertexBindingDescriptions is a pointer to an array of
-- VertexInputBindingDescription structures.
[$sel:vertexBindingDescriptions:PipelineVertexInputStateCreateInfo] :: PipelineVertexInputStateCreateInfo (es :: [Type]) -> Vector VertexInputBindingDescription
-- | pVertexAttributeDescriptions is a pointer to an array of
-- VertexInputAttributeDescription structures.
[$sel:vertexAttributeDescriptions:PipelineVertexInputStateCreateInfo] :: PipelineVertexInputStateCreateInfo (es :: [Type]) -> Vector VertexInputAttributeDescription
-- | VkPipelineInputAssemblyStateCreateInfo - Structure specifying
-- parameters of a newly created pipeline input assembly state
--
-- Description
--
-- Restarting the assembly of primitives discards the most recent index
-- values if those elements formed an incomplete primitive, and restarts
-- the primitive assembly using the subsequent indices, but only
-- assembling the immediately following element through the end of the
-- originally specified elements. The primitive restart index value
-- comparison is performed before adding the vertexOffset value
-- to the index value.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - topology must be a valid PrimitiveTopology
-- value
--
--
-- See Also
--
-- Bool32, GraphicsPipelineCreateInfo,
-- PipelineInputAssemblyStateCreateFlags,
-- PrimitiveTopology, StructureType
data PipelineInputAssemblyStateCreateInfo
PipelineInputAssemblyStateCreateInfo :: PipelineInputAssemblyStateCreateFlags -> PrimitiveTopology -> Bool -> PipelineInputAssemblyStateCreateInfo
-- | flags is reserved for future use.
[$sel:flags:PipelineInputAssemblyStateCreateInfo] :: PipelineInputAssemblyStateCreateInfo -> PipelineInputAssemblyStateCreateFlags
-- | topology is a PrimitiveTopology defining the primitive
-- topology, as described below.
[$sel:topology:PipelineInputAssemblyStateCreateInfo] :: PipelineInputAssemblyStateCreateInfo -> PrimitiveTopology
-- | primitiveRestartEnable controls whether a special vertex
-- index value is treated as restarting the assembly of primitives. This
-- enable only applies to indexed draws (cmdDrawIndexed and
-- cmdDrawIndexedIndirect), and the special index value is either
-- 0xFFFFFFFF when the indexType parameter of
-- cmdBindIndexBuffer is equal to INDEX_TYPE_UINT32, 0xFF
-- when indexType is equal to INDEX_TYPE_UINT8_EXT, or
-- 0xFFFF when indexType is equal to INDEX_TYPE_UINT16.
-- Primitive restart is not allowed for “list” topologies.
[$sel:primitiveRestartEnable:PipelineInputAssemblyStateCreateInfo] :: PipelineInputAssemblyStateCreateInfo -> Bool
-- | VkPipelineTessellationStateCreateInfo - Structure specifying
-- parameters of a newly created pipeline tessellation state
--
-- Valid Usage
--
--
-- - patchControlPoints must be greater than zero and
-- less than or equal to
-- PhysicalDeviceLimits::maxTessellationPatchSize
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- GraphicsPipelineCreateInfo,
-- GraphicsShaderGroupCreateInfoNV,
-- PipelineTessellationStateCreateFlags, StructureType
data PipelineTessellationStateCreateInfo (es :: [Type])
PipelineTessellationStateCreateInfo :: Chain es -> PipelineTessellationStateCreateFlags -> Word32 -> PipelineTessellationStateCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineTessellationStateCreateInfo] :: PipelineTessellationStateCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:PipelineTessellationStateCreateInfo] :: PipelineTessellationStateCreateInfo (es :: [Type]) -> PipelineTessellationStateCreateFlags
-- | patchControlPoints number of control points per patch.
[$sel:patchControlPoints:PipelineTessellationStateCreateInfo] :: PipelineTessellationStateCreateInfo (es :: [Type]) -> Word32
-- | VkPipelineViewportStateCreateInfo - Structure specifying parameters of
-- a newly created pipeline viewport state
--
-- Valid Usage
--
--
--
--
-- - If the multiple viewports feature is not enabled,
-- scissorCount must be 1
-- - viewportCount must be between 1 and
-- PhysicalDeviceLimits::maxViewports, inclusive
-- - scissorCount must be between 1 and
-- PhysicalDeviceLimits::maxViewports, inclusive
-- - scissorCount and viewportCount must be
-- identical
-- - The x and y members of offset member of
-- any element of pScissors must be greater than or equal
-- to 0
-- - Evaluation of (offset.x + extent.width)
-- must not cause a signed integer addition overflow for any
-- element of pScissors
-- - Evaluation of (offset.y + extent.height)
-- must not cause a signed integer addition overflow for any
-- element of pScissors
-- - If the viewportWScalingEnable member of a
-- PipelineViewportWScalingStateCreateInfoNV structure included in
-- the pNext chain is TRUE, the viewportCount
-- member of the PipelineViewportWScalingStateCreateInfoNV
-- structure must be equal to viewportCount
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- GraphicsPipelineCreateInfo,
-- PipelineViewportStateCreateFlags, Rect2D,
-- StructureType, Viewport
data PipelineViewportStateCreateInfo (es :: [Type])
PipelineViewportStateCreateInfo :: Chain es -> PipelineViewportStateCreateFlags -> Word32 -> Vector Viewport -> Word32 -> Vector Rect2D -> PipelineViewportStateCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineViewportStateCreateInfo] :: PipelineViewportStateCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:PipelineViewportStateCreateInfo] :: PipelineViewportStateCreateInfo (es :: [Type]) -> PipelineViewportStateCreateFlags
-- | viewportCount is the number of viewports used by the
-- pipeline.
[$sel:viewportCount:PipelineViewportStateCreateInfo] :: PipelineViewportStateCreateInfo (es :: [Type]) -> Word32
-- | pViewports is a pointer to an array of Viewport
-- structures, defining the viewport transforms. If the viewport state is
-- dynamic, this member is ignored.
[$sel:viewports:PipelineViewportStateCreateInfo] :: PipelineViewportStateCreateInfo (es :: [Type]) -> Vector Viewport
-- | scissorCount is the number of scissors and must
-- match the number of viewports.
[$sel:scissorCount:PipelineViewportStateCreateInfo] :: PipelineViewportStateCreateInfo (es :: [Type]) -> Word32
-- | pScissors is a pointer to an array of Rect2D
-- structures defining the rectangular bounds of the scissor for the
-- corresponding viewport. If the scissor state is dynamic, this member
-- is ignored.
[$sel:scissors:PipelineViewportStateCreateInfo] :: PipelineViewportStateCreateInfo (es :: [Type]) -> Vector Rect2D
-- | VkPipelineRasterizationStateCreateInfo - Structure specifying
-- parameters of a newly created pipeline rasterization state
--
-- Description
--
-- The application can also add a
-- PipelineRasterizationStateRasterizationOrderAMD structure to
-- the pNext chain of a
-- PipelineRasterizationStateCreateInfo structure. This structure
-- enables selecting the rasterization order to use when rendering with
-- the corresponding graphics pipeline as described in Rasterization
-- Order.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, CullModeFlags, FrontFace,
-- GraphicsPipelineCreateInfo,
-- PipelineRasterizationStateCreateFlags, PolygonMode,
-- StructureType
data PipelineRasterizationStateCreateInfo (es :: [Type])
PipelineRasterizationStateCreateInfo :: Chain es -> PipelineRasterizationStateCreateFlags -> Bool -> Bool -> PolygonMode -> CullModeFlags -> FrontFace -> Bool -> Float -> Float -> Float -> Float -> PipelineRasterizationStateCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> PipelineRasterizationStateCreateFlags
-- | depthClampEnable controls whether to clamp the fragment’s
-- depth values as described in Depth Test. If the pipeline is not
-- created with PipelineRasterizationDepthClipStateCreateInfoEXT
-- present then enabling depth clamp will also disable clipping
-- primitives to the z planes of the frustrum as described in
-- Primitive Clipping. Otherwise depth clipping is controlled by
-- the state set in
-- PipelineRasterizationDepthClipStateCreateInfoEXT.
[$sel:depthClampEnable:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Bool
-- | rasterizerDiscardEnable controls whether primitives are
-- discarded immediately before the rasterization stage.
[$sel:rasterizerDiscardEnable:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Bool
-- | polygonMode is the triangle rendering mode. See
-- PolygonMode.
[$sel:polygonMode:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> PolygonMode
-- | cullMode is the triangle facing direction used for primitive
-- culling. See CullModeFlagBits.
[$sel:cullMode:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> CullModeFlags
-- | frontFace is a FrontFace value specifying the
-- front-facing triangle orientation to be used for culling.
[$sel:frontFace:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> FrontFace
-- | depthBiasEnable controls whether to bias fragment depth
-- values.
[$sel:depthBiasEnable:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Bool
-- | depthBiasConstantFactor is a scalar factor controlling the
-- constant depth value added to each fragment.
[$sel:depthBiasConstantFactor:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Float
-- | depthBiasClamp is the maximum (or minimum) depth bias of a
-- fragment.
[$sel:depthBiasClamp:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Float
-- | depthBiasSlopeFactor is a scalar factor applied to a
-- fragment’s slope in depth bias calculations.
[$sel:depthBiasSlopeFactor:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Float
-- | lineWidth is the width of rasterized line segments.
[$sel:lineWidth:PipelineRasterizationStateCreateInfo] :: PipelineRasterizationStateCreateInfo (es :: [Type]) -> Float
-- | VkPipelineMultisampleStateCreateInfo - Structure specifying parameters
-- of a newly created pipeline multisample state
--
-- Description
--
-- Each bit in the sample mask is associated with a unique sample
-- index as defined for the coverage mask. Each bit b for mask
-- word w in the sample mask corresponds to sample index i, where i = 32
-- × w + b. pSampleMask has a length equal to ⌈
-- rasterizationSamples / 32 ⌉ words.
--
-- If pSampleMask is NULL, it is treated as if the mask
-- has all bits set to 1.
--
-- Valid Usage
--
--
--
--
-- - If the alpha to one feature is not enabled,
-- alphaToOneEnable must be FALSE
-- - minSampleShading must be in the range [0,1]
-- - If the VK_NV_framebuffer_mixed_samples extension is
-- enabled, and if the subpass has any color attachments and
-- rasterizationSamples is greater than the number of color
-- samples, then sampleShadingEnable must be
-- FALSE
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, GraphicsPipelineCreateInfo,
-- PipelineMultisampleStateCreateFlags,
-- SampleCountFlagBits, SampleMask, StructureType
data PipelineMultisampleStateCreateInfo (es :: [Type])
PipelineMultisampleStateCreateInfo :: Chain es -> PipelineMultisampleStateCreateFlags -> SampleCountFlagBits -> Bool -> Float -> Vector SampleMask -> Bool -> Bool -> PipelineMultisampleStateCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> PipelineMultisampleStateCreateFlags
-- | rasterizationSamples is a SampleCountFlagBits
-- specifying the number of samples used in rasterization.
[$sel:rasterizationSamples:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> SampleCountFlagBits
-- | sampleShadingEnable can be used to enable Sample
-- Shading.
[$sel:sampleShadingEnable:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> Bool
-- | minSampleShading specifies a minimum fraction of sample
-- shading if sampleShadingEnable is set to TRUE.
[$sel:minSampleShading:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> Float
-- | pSampleMask is an array of SampleMask values used in
-- the sample mask test.
[$sel:sampleMask:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> Vector SampleMask
-- | alphaToCoverageEnable controls whether a temporary coverage
-- value is generated based on the alpha component of the fragment’s
-- first color output as specified in the Multisample Coverage
-- section.
[$sel:alphaToCoverageEnable:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> Bool
-- | alphaToOneEnable controls whether the alpha component of the
-- fragment’s first color output is replaced with one as described in
-- Multisample Coverage.
[$sel:alphaToOneEnable:PipelineMultisampleStateCreateInfo] :: PipelineMultisampleStateCreateInfo (es :: [Type]) -> Bool
-- | VkPipelineColorBlendAttachmentState - Structure specifying a pipeline
-- color blend attachment state
--
-- Valid Usage
--
--
--
--
-- - If the dual source blending feature is not enabled,
-- dstColorBlendFactor must not be
-- BLEND_FACTOR_SRC1_COLOR,
-- BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,
-- BLEND_FACTOR_SRC1_ALPHA, or
-- BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
-- - If the dual source blending feature is not enabled,
-- srcAlphaBlendFactor must not be
-- BLEND_FACTOR_SRC1_COLOR,
-- BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,
-- BLEND_FACTOR_SRC1_ALPHA, or
-- BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
-- - If the dual source blending feature is not enabled,
-- dstAlphaBlendFactor must not be
-- BLEND_FACTOR_SRC1_COLOR,
-- BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,
-- BLEND_FACTOR_SRC1_ALPHA, or
-- BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
-- - If either of colorBlendOp or alphaBlendOp is an
-- advanced blend operation, then colorBlendOp
-- must equal alphaBlendOp
-- - If
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendIndependentBlend
-- is FALSE and colorBlendOp is an advanced blend
-- operation, then colorBlendOp must be the same for
-- all attachments
-- - If
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendIndependentBlend
-- is FALSE and alphaBlendOp is an advanced blend
-- operation, then alphaBlendOp must be the same for
-- all attachments
-- - If
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendAllOperations
-- is FALSE, then colorBlendOp must not be
-- BLEND_OP_ZERO_EXT, BLEND_OP_SRC_EXT,
-- BLEND_OP_DST_EXT, BLEND_OP_SRC_OVER_EXT,
-- BLEND_OP_DST_OVER_EXT, BLEND_OP_SRC_IN_EXT,
-- BLEND_OP_DST_IN_EXT, BLEND_OP_SRC_OUT_EXT,
-- BLEND_OP_DST_OUT_EXT, BLEND_OP_SRC_ATOP_EXT,
-- BLEND_OP_DST_ATOP_EXT, BLEND_OP_XOR_EXT,
-- BLEND_OP_INVERT_EXT, BLEND_OP_INVERT_RGB_EXT,
-- BLEND_OP_LINEARDODGE_EXT, BLEND_OP_LINEARBURN_EXT,
-- BLEND_OP_VIVIDLIGHT_EXT, BLEND_OP_LINEARLIGHT_EXT,
-- BLEND_OP_PINLIGHT_EXT, BLEND_OP_HARDMIX_EXT,
-- BLEND_OP_PLUS_EXT, BLEND_OP_PLUS_CLAMPED_EXT,
-- BLEND_OP_PLUS_CLAMPED_ALPHA_EXT,
-- BLEND_OP_PLUS_DARKER_EXT, BLEND_OP_MINUS_EXT,
-- BLEND_OP_MINUS_CLAMPED_EXT, BLEND_OP_CONTRAST_EXT,
-- BLEND_OP_INVERT_OVG_EXT, BLEND_OP_RED_EXT,
-- BLEND_OP_GREEN_EXT, or BLEND_OP_BLUE_EXT
-- - If colorBlendOp or alphaBlendOp is an
-- advanced blend operation, then
-- SubpassDescription::colorAttachmentCount of the
-- subpass this pipeline is compiled against must be less than or
-- equal to
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendMaxColorAttachments
--
--
-- Valid Usage (Implicit)
--
--
-- - srcColorBlendFactor must be a valid
-- BlendFactor value
--
--
--
-- - dstColorBlendFactor must be a valid
-- BlendFactor value
-- - colorBlendOp must be a valid BlendOp
-- value
-- - srcAlphaBlendFactor must be a valid
-- BlendFactor value
-- - dstAlphaBlendFactor must be a valid
-- BlendFactor value
-- - alphaBlendOp must be a valid BlendOp
-- value
-- - colorWriteMask must be a valid combination of
-- ColorComponentFlagBits values
--
--
-- See Also
--
-- BlendFactor, BlendOp, Bool32,
-- ColorComponentFlags, PipelineColorBlendStateCreateInfo
data PipelineColorBlendAttachmentState
PipelineColorBlendAttachmentState :: Bool -> BlendFactor -> BlendFactor -> BlendOp -> BlendFactor -> BlendFactor -> BlendOp -> ColorComponentFlags -> PipelineColorBlendAttachmentState
-- | blendEnable controls whether blending is enabled for the
-- corresponding color attachment. If blending is not enabled, the source
-- fragment’s color for that attachment is passed through unmodified.
[$sel:blendEnable:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> Bool
-- | srcColorBlendFactor selects which blend factor is used to
-- determine the source factors (Sr,Sg,Sb).
[$sel:srcColorBlendFactor:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> BlendFactor
-- | dstColorBlendFactor selects which blend factor is used to
-- determine the destination factors (Dr,Dg,Db).
[$sel:dstColorBlendFactor:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> BlendFactor
-- | colorBlendOp selects which blend operation is used to
-- calculate the RGB values to write to the color attachment.
[$sel:colorBlendOp:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> BlendOp
-- | srcAlphaBlendFactor selects which blend factor is used to
-- determine the source factor Sa.
[$sel:srcAlphaBlendFactor:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> BlendFactor
-- | dstAlphaBlendFactor selects which blend factor is used to
-- determine the destination factor Da.
[$sel:dstAlphaBlendFactor:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> BlendFactor
-- | alphaBlendOp selects which blend operation is use to
-- calculate the alpha values to write to the color attachment.
[$sel:alphaBlendOp:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> BlendOp
-- | colorWriteMask is a bitmask of ColorComponentFlagBits
-- specifying which of the R, G, B, and/or A components are enabled for
-- writing, as described for the Color Write Mask.
[$sel:colorWriteMask:PipelineColorBlendAttachmentState] :: PipelineColorBlendAttachmentState -> ColorComponentFlags
-- | VkPipelineColorBlendStateCreateInfo - Structure specifying parameters
-- of a newly created pipeline color blend state
--
-- Description
--
-- Each element of the pAttachments array is a
-- PipelineColorBlendAttachmentState structure specifying
-- per-target blending state for each individual color attachment. If the
-- independent blending feature is not enabled on the device, all
-- PipelineColorBlendAttachmentState elements in the
-- pAttachments array must be identical.
--
-- Valid Usage
--
--
-- - If the independent blending feature is not enabled, all
-- elements of pAttachments must be identical
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, GraphicsPipelineCreateInfo, LogicOp,
-- PipelineColorBlendAttachmentState,
-- PipelineColorBlendStateCreateFlags, StructureType
data PipelineColorBlendStateCreateInfo (es :: [Type])
PipelineColorBlendStateCreateInfo :: Chain es -> PipelineColorBlendStateCreateFlags -> Bool -> LogicOp -> Vector PipelineColorBlendAttachmentState -> (Float, Float, Float, Float) -> PipelineColorBlendStateCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PipelineColorBlendStateCreateInfo] :: PipelineColorBlendStateCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:PipelineColorBlendStateCreateInfo] :: PipelineColorBlendStateCreateInfo (es :: [Type]) -> PipelineColorBlendStateCreateFlags
-- | logicOpEnable controls whether to apply Logical
-- Operations.
[$sel:logicOpEnable:PipelineColorBlendStateCreateInfo] :: PipelineColorBlendStateCreateInfo (es :: [Type]) -> Bool
-- | logicOp selects which logical operation to apply.
[$sel:logicOp:PipelineColorBlendStateCreateInfo] :: PipelineColorBlendStateCreateInfo (es :: [Type]) -> LogicOp
-- | pAttachments: is a pointer to an array of per target
-- attachment states.
[$sel:attachments:PipelineColorBlendStateCreateInfo] :: PipelineColorBlendStateCreateInfo (es :: [Type]) -> Vector PipelineColorBlendAttachmentState
-- | blendConstants is a pointer to an array of four values used
-- as the R, G, B, and A components of the blend constant that are used
-- in blending, depending on the blend factor.
[$sel:blendConstants:PipelineColorBlendStateCreateInfo] :: PipelineColorBlendStateCreateInfo (es :: [Type]) -> (Float, Float, Float, Float)
-- | VkPipelineDynamicStateCreateInfo - Structure specifying parameters of
-- a newly created pipeline dynamic state
--
-- Valid Usage
--
--
-- - Each element of pDynamicStates must be unique
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - If dynamicStateCount is not 0,
-- pDynamicStates must be a valid pointer to an array of
-- dynamicStateCount valid DynamicState values
--
--
-- See Also
--
-- DynamicState, GraphicsPipelineCreateInfo,
-- PipelineDynamicStateCreateFlags, StructureType
data PipelineDynamicStateCreateInfo
PipelineDynamicStateCreateInfo :: PipelineDynamicStateCreateFlags -> Vector DynamicState -> PipelineDynamicStateCreateInfo
-- | flags is reserved for future use.
[$sel:flags:PipelineDynamicStateCreateInfo] :: PipelineDynamicStateCreateInfo -> PipelineDynamicStateCreateFlags
-- | pDynamicStates is a pointer to an array of
-- DynamicState values specifying which pieces of pipeline state
-- will use the values from dynamic state commands rather than from
-- pipeline state creation info.
[$sel:dynamicStates:PipelineDynamicStateCreateInfo] :: PipelineDynamicStateCreateInfo -> Vector DynamicState
-- | VkStencilOpState - Structure specifying stencil operation state
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- CompareOp, PipelineDepthStencilStateCreateInfo,
-- StencilOp
data StencilOpState
StencilOpState :: StencilOp -> StencilOp -> StencilOp -> CompareOp -> Word32 -> Word32 -> Word32 -> StencilOpState
-- | failOp is a StencilOp value specifying the action
-- performed on samples that fail the stencil test.
--
-- failOp must be a valid StencilOp value
[$sel:failOp:StencilOpState] :: StencilOpState -> StencilOp
-- | passOp is a StencilOp value specifying the action
-- performed on samples that pass both the depth and stencil tests.
--
-- passOp must be a valid StencilOp value
[$sel:passOp:StencilOpState] :: StencilOpState -> StencilOp
-- | depthFailOp is a StencilOp value specifying the action
-- performed on samples that pass the stencil test and fail the depth
-- test.
--
-- depthFailOp must be a valid StencilOp value
[$sel:depthFailOp:StencilOpState] :: StencilOpState -> StencilOp
-- | compareOp is a CompareOp value specifying the
-- comparison operator used in the stencil test.
--
-- compareOp must be a valid CompareOp value
[$sel:compareOp:StencilOpState] :: StencilOpState -> CompareOp
-- | compareMask selects the bits of the unsigned integer stencil
-- values participating in the stencil test.
[$sel:compareMask:StencilOpState] :: StencilOpState -> Word32
-- | writeMask selects the bits of the unsigned integer stencil
-- values updated by the stencil test in the stencil framebuffer
-- attachment.
[$sel:writeMask:StencilOpState] :: StencilOpState -> Word32
-- | reference is an integer reference value that is used in the
-- unsigned stencil comparison.
[$sel:reference:StencilOpState] :: StencilOpState -> Word32
-- | VkPipelineDepthStencilStateCreateInfo - Structure specifying
-- parameters of a newly created pipeline depth stencil state
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be 0
-- - depthCompareOp must be a valid CompareOp
-- value
-- - front must be a valid StencilOpState
-- structure
-- - back must be a valid StencilOpState
-- structure
--
--
-- See Also
--
-- Bool32, CompareOp, GraphicsPipelineCreateInfo,
-- PipelineDepthStencilStateCreateFlags, StencilOpState,
-- StructureType
data PipelineDepthStencilStateCreateInfo
PipelineDepthStencilStateCreateInfo :: PipelineDepthStencilStateCreateFlags -> Bool -> Bool -> CompareOp -> Bool -> Bool -> StencilOpState -> StencilOpState -> Float -> Float -> PipelineDepthStencilStateCreateInfo
-- | flags is reserved for future use.
[$sel:flags:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> PipelineDepthStencilStateCreateFlags
-- | depthTestEnable controls whether depth testing is
-- enabled.
[$sel:depthTestEnable:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> Bool
-- | depthWriteEnable controls whether depth writes are
-- enabled when depthTestEnable is TRUE. Depth writes are
-- always disabled when depthTestEnable is FALSE.
[$sel:depthWriteEnable:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> Bool
-- | depthCompareOp is the comparison operator used in the
-- depth test.
[$sel:depthCompareOp:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> CompareOp
-- | depthBoundsTestEnable controls whether depth bounds
-- testing is enabled.
[$sel:depthBoundsTestEnable:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> Bool
-- | stencilTestEnable controls whether stencil testing is
-- enabled.
[$sel:stencilTestEnable:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> Bool
-- | front and back control the parameters of the
-- stencil test.
[$sel:front:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> StencilOpState
[$sel:back:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> StencilOpState
-- | minDepthBounds is the minimum depth bound used in the
-- depth bounds test.
[$sel:minDepthBounds:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> Float
-- | maxDepthBounds is the maximum depth bound used in the
-- depth bounds test.
[$sel:maxDepthBounds:PipelineDepthStencilStateCreateInfo] :: PipelineDepthStencilStateCreateInfo -> Float
-- | VkGraphicsPipelineCreateInfo - Structure specifying parameters of a
-- newly created graphics pipeline
--
-- Description
--
-- The parameters basePipelineHandle and
-- basePipelineIndex are described in more detail in Pipeline
-- Derivatives.
--
-- If any shader stage fails to compile, the compile log will be reported
-- back to the application, and ERROR_INVALID_SHADER_NV will be
-- generated.
--
-- Valid Usage
--
--
--
--
-- - If flags contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and
-- basePipelineHandle is NULL_HANDLE,
-- basePipelineIndex must be a valid index into the
-- calling command’s pCreateInfos parameter
-- - If flags contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and
-- basePipelineIndex is not -1, basePipelineHandle
-- must be NULL_HANDLE
-- - If flags contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and
-- basePipelineHandle is not NULL_HANDLE,
-- basePipelineIndex must be -1
-- - The stage member of each element of pStages
-- must be unique
-- - The geometric shader stages provided in pStages
-- must be either from the mesh shading pipeline (stage
-- is SHADER_STAGE_TASK_BIT_NV or SHADER_STAGE_MESH_BIT_NV)
-- or from the primitive shading pipeline (stage is
-- SHADER_STAGE_VERTEX_BIT,
-- SHADER_STAGE_TESSELLATION_CONTROL_BIT,
-- SHADER_STAGE_TESSELLATION_EVALUATION_BIT, or
-- SHADER_STAGE_GEOMETRY_BIT)
-- - The stage member of one element of pStages
-- must be either SHADER_STAGE_VERTEX_BIT or
-- SHADER_STAGE_MESH_BIT_NV
-- - The stage member of each element of pStages
-- must not be SHADER_STAGE_COMPUTE_BIT
-- - If pStages includes a tessellation control shader stage,
-- it must include a tessellation evaluation shader stage
-- - If pStages includes a tessellation evaluation shader
-- stage, it must include a tessellation control shader stage
-- - If pStages includes a tessellation control shader stage
-- and a tessellation evaluation shader stage,
-- pTessellationState must be a valid pointer to a valid
-- PipelineTessellationStateCreateInfo structure
-- - If pStages includes tessellation shader stages, the
-- shader code of at least one stage must contain an
-- OpExecutionMode instruction that specifies the type of
-- subdivision in the pipeline
-- - If pStages includes tessellation shader stages, and the
-- shader code of both stages contain an OpExecutionMode
-- instruction that specifies the type of subdivision in the pipeline,
-- they must both specify the same subdivision mode
-- - If pStages includes tessellation shader stages, the
-- shader code of at least one stage must contain an
-- OpExecutionMode instruction that specifies the output patch
-- size in the pipeline
-- - If pStages includes tessellation shader stages, and the
-- shader code of both contain an OpExecutionMode instruction
-- that specifies the out patch size in the pipeline, they must
-- both specify the same patch size
-- - If pStages includes tessellation shader stages, the
-- topology member of pInputAssembly must be
-- PRIMITIVE_TOPOLOGY_PATCH_LIST
-- - If the topology member of pInputAssembly is
-- PRIMITIVE_TOPOLOGY_PATCH_LIST, pStages must
-- include tessellation shader stages
-- - If pStages includes a geometry shader stage, and does not
-- include any tessellation shader stages, its shader code must
-- contain an OpExecutionMode instruction that specifies an
-- input primitive type that is compatible with the primitive
-- topology specified in pInputAssembly
-- - If pStages includes a geometry shader stage, and also
-- includes tessellation shader stages, its shader code must
-- contain an OpExecutionMode instruction that specifies an
-- input primitive type that is compatible with the primitive
-- topology that is output by the tessellation stages
-- - If pStages includes a fragment shader stage and a
-- geometry shader stage, and the fragment shader code reads from an
-- input variable that is decorated with PrimitiveID, then the
-- geometry shader code must write to a matching output variable,
-- decorated with PrimitiveID, in all execution paths
-- - If pStages includes a fragment shader stage, its shader
-- code must not read from any input attachment that is defined as
-- ATTACHMENT_UNUSED in subpass
-- - The shader code for the entry points identified by
-- pStages, and the rest of the state identified by this
-- structure must adhere to the pipeline linking rules described
-- in the Shader Interfaces chapter
-- - If rasterization is not disabled and subpass uses a
-- depth/stencil attachment in renderPass that has a layout of
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL in the
-- AttachmentReference defined by subpass, the
-- depthWriteEnable member of pDepthStencilState
-- must be FALSE
-- - If rasterization is not disabled and subpass uses a
-- depth/stencil attachment in renderPass that has a layout of
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL in the
-- AttachmentReference defined by subpass, the
-- failOp, passOp and depthFailOp members of
-- each of the front and back members of
-- pDepthStencilState must be STENCIL_OP_KEEP
-- - If rasterization is not disabled and the subpass uses color
-- attachments, then for each color attachment in the subpass the
-- blendEnable member of the corresponding element of the
-- pAttachment member of pColorBlendState must
-- be FALSE if the attached image’s format features does
-- not contain FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
-- - If rasterization is not disabled and the subpass uses color
-- attachments, the attachmentCount member of
-- pColorBlendState must be equal to the
-- colorAttachmentCount used to create subpass
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_VIEWPORT, the
-- pViewports member of pViewportState must be a
-- valid pointer to an array of pViewportState->viewportCount
-- valid Viewport structures
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_SCISSOR, the
-- pScissors member of pViewportState must be a
-- valid pointer to an array of pViewportState->scissorCount
-- Rect2D structures
-- - If the wide lines feature is not enabled, and no element of the
-- pDynamicStates member of pDynamicState is
-- DYNAMIC_STATE_LINE_WIDTH, the lineWidth member of
-- pRasterizationState must be 1.0
-- - If the rasterizerDiscardEnable member of
-- pRasterizationState is FALSE, pViewportState
-- must be a valid pointer to a valid
-- PipelineViewportStateCreateInfo structure
-- - If the rasterizerDiscardEnable member of
-- pRasterizationState is FALSE,
-- pMultisampleState must be a valid pointer to a valid
-- PipelineMultisampleStateCreateInfo structure
-- - If the rasterizerDiscardEnable member of
-- pRasterizationState is FALSE, and subpass
-- uses a depth/stencil attachment, pDepthStencilState
-- must be a valid pointer to a valid
-- PipelineDepthStencilStateCreateInfo structure
-- - If the rasterizerDiscardEnable member of
-- pRasterizationState is FALSE, and subpass
-- uses color attachments, pColorBlendState must be a
-- valid pointer to a valid PipelineColorBlendStateCreateInfo
-- structure
-- - If the depth bias clamping feature is not enabled, no element of
-- the pDynamicStates member of pDynamicState is
-- DYNAMIC_STATE_DEPTH_BIAS, and the depthBiasEnable
-- member of pRasterizationState is TRUE, the
-- depthBiasClamp member of pRasterizationState
-- must be 0.0
-- - If the VK_EXT_depth_range_unrestricted extension is not
-- enabled and no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_DEPTH_BOUNDS, and the
-- depthBoundsTestEnable member of pDepthStencilState
-- is TRUE, the minDepthBounds and
-- maxDepthBounds members of pDepthStencilState
-- must be between 0.0 and 1.0, inclusive
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT,
-- and the sampleLocationsEnable member of a
-- PipelineSampleLocationsStateCreateInfoEXT structure included in
-- the pNext chain of pMultisampleState is TRUE,
-- sampleLocationsInfo.sampleLocationGridSize.width must
-- evenly divide
-- MultisamplePropertiesEXT::sampleLocationGridSize.width
-- as returned by getPhysicalDeviceMultisamplePropertiesEXT with a
-- samples parameter equaling rasterizationSamples
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT,
-- and the sampleLocationsEnable member of a
-- PipelineSampleLocationsStateCreateInfoEXT structure included in
-- the pNext chain of pMultisampleState is TRUE,
-- sampleLocationsInfo.sampleLocationGridSize.height must
-- evenly divide
-- MultisamplePropertiesEXT::sampleLocationGridSize.height
-- as returned by getPhysicalDeviceMultisamplePropertiesEXT with a
-- samples parameter equaling rasterizationSamples
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT,
-- and the sampleLocationsEnable member of a
-- PipelineSampleLocationsStateCreateInfoEXT structure included in
-- the pNext chain of pMultisampleState is TRUE,
-- sampleLocationsInfo.sampleLocationsPerPixel must equal
-- rasterizationSamples
-- - If the sampleLocationsEnable member of a
-- PipelineSampleLocationsStateCreateInfoEXT structure included in
-- the pNext chain of pMultisampleState is TRUE,
-- the fragment shader code must not statically use the extended
-- instruction InterpolateAtSample
-- - layout must be consistent with all shaders
-- specified in pStages
-- - If neither the VK_AMD_mixed_attachment_samples nor the
-- VK_NV_framebuffer_mixed_samples extensions are enabled, and
-- if subpass uses color and/or depth/stencil attachments, then
-- the rasterizationSamples member of pMultisampleState
-- must be the same as the sample count for those subpass
-- attachments
-- - If the VK_AMD_mixed_attachment_samples extension is
-- enabled, and if subpass uses color and/or depth/stencil
-- attachments, then the rasterizationSamples member of
-- pMultisampleState must equal the maximum of the sample
-- counts of those subpass attachments
-- - If the VK_NV_framebuffer_mixed_samples extension is
-- enabled, and if subpass has a depth/stencil attachment and
-- depth test, stencil test, or depth bounds test are enabled, then the
-- rasterizationSamples member of pMultisampleState
-- must be the same as the sample count of the depth/stencil
-- attachment
-- - If the VK_NV_framebuffer_mixed_samples extension is
-- enabled, and if subpass has any color attachments, then the
-- rasterizationSamples member of pMultisampleState
-- must be greater than or equal to the sample count for those
-- subpass attachments
-- - If the VK_NV_coverage_reduction_mode extension is
-- enabled, the coverage reduction mode specified by
-- PipelineCoverageReductionStateCreateInfoNV::coverageReductionMode,
-- the rasterizationSamples member of pMultisampleState
-- and the sample counts for the color and depth/stencil attachments (if
-- the subpass has them) must be a valid combination returned by
-- getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
-- - If subpass does not use any color and/or depth/stencil
-- attachments, then the rasterizationSamples member of
-- pMultisampleState must follow the rules for a
-- zero-attachment subpass
-- - subpass must be a valid subpass within
-- renderPass
-- - If the renderPass has multiview enabled and
-- subpass has more than one bit set in the view mask and
-- multiviewTessellationShader is not enabled, then
-- pStages must not include tessellation shaders
-- - If the renderPass has multiview enabled and
-- subpass has more than one bit set in the view mask and
-- multiviewGeometryShader is not enabled, then pStages
-- must not include a geometry shader
-- - If the renderPass has multiview enabled and
-- subpass has more than one bit set in the view mask, shaders
-- in the pipeline must not write to the Layer built-in
-- output
-- - If the renderPass has multiview enabled, then all shaders
-- must not include variables decorated with the Layer
-- built-in decoration in their interfaces
-- - flags must not contain the
-- PIPELINE_CREATE_DISPATCH_BASE flag
-- - If pStages includes a fragment shader stage and an input
-- attachment was referenced by an aspectMask at
-- renderPass creation time, its shader code must only
-- read from the aspects that were specified for that input
-- attachment
-- - The number of resources in layout accessible to each
-- shader stage that is used by the pipeline must be less than or
-- equal to
-- PhysicalDeviceLimits::maxPerStageResources
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_VIEWPORT_W_SCALING_NV,
-- and the viewportWScalingEnable member of a
-- PipelineViewportWScalingStateCreateInfoNV structure, included
-- in the pNext chain of pViewportState, is
-- TRUE, the pViewportWScalings member of the
-- PipelineViewportWScalingStateCreateInfoNV must be a
-- pointer to an array of
-- PipelineViewportWScalingStateCreateInfoNV::viewportCount
-- valid ViewportWScalingNV structures
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV,
-- and if pViewportState->pNext chain includes a
-- PipelineViewportExclusiveScissorStateCreateInfoNV structure,
-- and if its exclusiveScissorCount member is not 0,
-- then its pExclusiveScissors member must be a valid
-- pointer to an array of exclusiveScissorCount Rect2D
-- structures
-- - If no element of the pDynamicStates member of
-- pDynamicState is
-- DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV, and if
-- pViewportState->pNext chain includes a
-- PipelineViewportShadingRateImageStateCreateInfoNV structure,
-- then its pShadingRatePalettes member must be a valid
-- pointer to an array of viewportCount valid
-- ShadingRatePaletteNV structures
-- - If no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_DISCARD_RECTANGLE_EXT,
-- and if pNext chain includes a
-- PipelineDiscardRectangleStateCreateInfoEXT structure, and if
-- its discardRectangleCount member is not 0, then its
-- pDiscardRectangles member must be a valid pointer to
-- an array of discardRectangleCount Rect2D
-- structures
-- - If pStages includes a vertex shader stage,
-- pVertexInputState must be a valid pointer to a valid
-- PipelineVertexInputStateCreateInfo structure
-- - If pStages includes a vertex shader stage,
-- pInputAssemblyState must be a valid pointer to a valid
-- PipelineInputAssemblyStateCreateInfo structure
-- - The Xfb execution mode can be specified by only
-- one shader stage in pStages
-- - If any shader stage in pStages specifies Xfb
-- execution mode it must be the last vertex processing stage
-- - If a
-- PipelineRasterizationStateStreamCreateInfoEXT::rasterizationStream
-- value other than zero is specified, all variables in the output
-- interface of the entry point being compiled decorated with
-- Position, PointSize, ClipDistance, or
-- CullDistance must all be decorated with identical
-- Stream values that match the
-- rasterizationStream
-- - If
-- PipelineRasterizationStateStreamCreateInfoEXT::rasterizationStream
-- is zero, or not specified, all variables in the output interface of
-- the entry point being compiled decorated with Position,
-- PointSize, ClipDistance, or CullDistance
-- must all be decorated with a Stream value of zero, or
-- must not specify the Stream decoration
-- - If the last vertex processing stage is a geometry shader, and that
-- geometry shader uses the GeometryStreams capability, then
-- PhysicalDeviceTransformFeedbackFeaturesEXT::geometryStreams
-- feature must be enabled
-- - If there are any mesh shader stages in the pipeline there
-- must not be any shader stage in the pipeline with a
-- Xfb execution mode
-- - If the lineRasterizationMode member of a
-- PipelineRasterizationLineStateCreateInfoEXT structure included
-- in the pNext chain of pRasterizationState is
-- LINE_RASTERIZATION_MODE_BRESENHAM_EXT or
-- LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT and if
-- rasterization is enabled, then the alphaToCoverageEnable,
-- alphaToOneEnable, and sampleShadingEnable members of
-- pMultisampleState must all be FALSE
-- - If the stippledLineEnable member of
-- PipelineRasterizationLineStateCreateInfoEXT is TRUE and
-- no element of the pDynamicStates member of
-- pDynamicState is DYNAMIC_STATE_LINE_STIPPLE_EXT, then
-- the lineStippleFactor member of
-- PipelineRasterizationLineStateCreateInfoEXT must be in
-- the range [1,256]
-- - flags must not include
-- PIPELINE_CREATE_LIBRARY_BIT_KHR
-- - flags must not include
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR
-- - flags must not include
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR
-- - flags must not include
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR
-- - flags must not include
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR
-- - flags must not include
-- PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR
-- - flags must not include
-- PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR
-- - If flags includes
-- PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV, then the
-- ::deviceGeneratedCommands feature must be enabled
-- - If flags includes
-- PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV, then all stages
-- must not specify Xfb execution mode
-- - If the pipelineCreationCacheControl feature is not enabled,
-- flags must not include
-- PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT or
-- PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Pipeline, PipelineColorBlendStateCreateInfo,
-- PipelineCreateFlags,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDynamicStateCreateInfo,
-- PipelineInputAssemblyStateCreateInfo, PipelineLayout,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationStateCreateInfo,
-- PipelineShaderStageCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportStateCreateInfo, RenderPass,
-- StructureType, createGraphicsPipelines
data GraphicsPipelineCreateInfo (es :: [Type])
GraphicsPipelineCreateInfo :: Chain es -> PipelineCreateFlags -> Vector (SomeStruct PipelineShaderStageCreateInfo) -> Maybe (SomeStruct PipelineVertexInputStateCreateInfo) -> Maybe PipelineInputAssemblyStateCreateInfo -> Maybe (SomeStruct PipelineTessellationStateCreateInfo) -> Maybe (SomeStruct PipelineViewportStateCreateInfo) -> SomeStruct PipelineRasterizationStateCreateInfo -> Maybe (SomeStruct PipelineMultisampleStateCreateInfo) -> Maybe PipelineDepthStencilStateCreateInfo -> Maybe (SomeStruct PipelineColorBlendStateCreateInfo) -> Maybe PipelineDynamicStateCreateInfo -> PipelineLayout -> RenderPass -> Word32 -> Pipeline -> Int32 -> GraphicsPipelineCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of PipelineCreateFlagBits
-- specifying how the pipeline will be generated.
[$sel:flags:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> PipelineCreateFlags
-- | pStages is a pointer to an array of stageCount
-- PipelineShaderStageCreateInfo structures describing the set of
-- the shader stages to be included in the graphics pipeline.
[$sel:stages:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Vector (SomeStruct PipelineShaderStageCreateInfo)
-- | pVertexInputState is a pointer to a
-- PipelineVertexInputStateCreateInfo structure. It is ignored if
-- the pipeline includes a mesh shader stage.
[$sel:vertexInputState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe (SomeStruct PipelineVertexInputStateCreateInfo)
-- | pInputAssemblyState is a pointer to a
-- PipelineInputAssemblyStateCreateInfo structure which determines
-- input assembly behavior, as described in Drawing Commands. It
-- is ignored if the pipeline includes a mesh shader stage.
[$sel:inputAssemblyState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe PipelineInputAssemblyStateCreateInfo
-- | pTessellationState is a pointer to a
-- PipelineTessellationStateCreateInfo structure, and is ignored
-- if the pipeline does not include a tessellation control shader stage
-- and tessellation evaluation shader stage.
[$sel:tessellationState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe (SomeStruct PipelineTessellationStateCreateInfo)
-- | pViewportState is a pointer to a
-- PipelineViewportStateCreateInfo structure, and is ignored if
-- the pipeline has rasterization disabled.
[$sel:viewportState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe (SomeStruct PipelineViewportStateCreateInfo)
-- | pRasterizationState is a pointer to a
-- PipelineRasterizationStateCreateInfo structure.
[$sel:rasterizationState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> SomeStruct PipelineRasterizationStateCreateInfo
-- | pMultisampleState is a pointer to a
-- PipelineMultisampleStateCreateInfo structure, and is ignored if
-- the pipeline has rasterization disabled.
[$sel:multisampleState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe (SomeStruct PipelineMultisampleStateCreateInfo)
-- | pDepthStencilState is a pointer to a
-- PipelineDepthStencilStateCreateInfo structure, and is ignored
-- if the pipeline has rasterization disabled or if the subpass of the
-- render pass the pipeline is created against does not use a
-- depth/stencil attachment.
[$sel:depthStencilState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe PipelineDepthStencilStateCreateInfo
-- | pColorBlendState is a pointer to a
-- PipelineColorBlendStateCreateInfo structure, and is ignored if
-- the pipeline has rasterization disabled or if the subpass of the
-- render pass the pipeline is created against does not use any color
-- attachments.
[$sel:colorBlendState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe (SomeStruct PipelineColorBlendStateCreateInfo)
-- | pDynamicState is a pointer to a
-- PipelineDynamicStateCreateInfo structure, and is used to
-- indicate which properties of the pipeline state object are dynamic and
-- can be changed independently of the pipeline state. This
-- can be NULL, which means no state in the pipeline is
-- considered dynamic.
[$sel:dynamicState:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Maybe PipelineDynamicStateCreateInfo
-- | layout is the description of binding locations used by both
-- the pipeline and descriptor sets used with the pipeline.
[$sel:layout:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> PipelineLayout
-- | renderPass is a handle to a render pass object describing the
-- environment in which the pipeline will be used; the pipeline
-- must only be used with an instance of any render pass
-- compatible with the one provided. See Render Pass Compatibility
-- for more information.
[$sel:renderPass:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> RenderPass
-- | subpass is the index of the subpass in the render pass where
-- this pipeline will be used.
[$sel:subpass:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Word32
-- | basePipelineHandle is a pipeline to derive from.
[$sel:basePipelineHandle:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Pipeline
-- | basePipelineIndex is an index into the pCreateInfos
-- parameter to use as a pipeline to derive from.
[$sel:basePipelineIndex:GraphicsPipelineCreateInfo] :: GraphicsPipelineCreateInfo (es :: [Type]) -> Int32
-- | VkPipeline - Opaque handle to a pipeline object
--
-- See Also
--
-- ComputePipelineCreateInfo, GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- PipelineExecutableInfoKHR, PipelineInfoKHR,
-- PipelineLibraryCreateInfoKHR,
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, compileDeferredNV,
-- createComputePipelines, createGraphicsPipelines,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, destroyPipeline,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV, getShaderInfoAMD
newtype Pipeline
Pipeline :: Word64 -> Pipeline
-- | VkPipelineLayoutCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineLayoutCreateFlags is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- PipelineLayoutCreateInfo
newtype PipelineLayoutCreateFlags
PipelineLayoutCreateFlags :: Flags -> PipelineLayoutCreateFlags
-- | VkPipelineDepthStencilStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineDepthStencilStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineDepthStencilStateCreateInfo
newtype PipelineDepthStencilStateCreateFlags
PipelineDepthStencilStateCreateFlags :: Flags -> PipelineDepthStencilStateCreateFlags
-- | VkPipelineDynamicStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineDynamicStateCreateFlags is a bitmask type for setting a
-- mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineDynamicStateCreateInfo
newtype PipelineDynamicStateCreateFlags
PipelineDynamicStateCreateFlags :: Flags -> PipelineDynamicStateCreateFlags
-- | VkPipelineColorBlendStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineColorBlendStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineColorBlendStateCreateInfo
newtype PipelineColorBlendStateCreateFlags
PipelineColorBlendStateCreateFlags :: Flags -> PipelineColorBlendStateCreateFlags
-- | VkPipelineMultisampleStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineMultisampleStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineMultisampleStateCreateInfo
newtype PipelineMultisampleStateCreateFlags
PipelineMultisampleStateCreateFlags :: Flags -> PipelineMultisampleStateCreateFlags
-- | VkPipelineRasterizationStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineRasterizationStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineRasterizationStateCreateInfo
newtype PipelineRasterizationStateCreateFlags
PipelineRasterizationStateCreateFlags :: Flags -> PipelineRasterizationStateCreateFlags
-- | VkPipelineViewportStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineViewportStateCreateFlags is a bitmask type for setting
-- a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineViewportStateCreateInfo
newtype PipelineViewportStateCreateFlags
PipelineViewportStateCreateFlags :: Flags -> PipelineViewportStateCreateFlags
-- | VkPipelineTessellationStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineTessellationStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineTessellationStateCreateInfo
newtype PipelineTessellationStateCreateFlags
PipelineTessellationStateCreateFlags :: Flags -> PipelineTessellationStateCreateFlags
-- | VkPipelineInputAssemblyStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineInputAssemblyStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineInputAssemblyStateCreateInfo
newtype PipelineInputAssemblyStateCreateFlags
PipelineInputAssemblyStateCreateFlags :: Flags -> PipelineInputAssemblyStateCreateFlags
-- | VkPipelineVertexInputStateCreateFlags - Reserved for future use
--
-- Description
--
-- PipelineVertexInputStateCreateFlags is a bitmask type for
-- setting a mask, but is currently reserved for future use.
--
-- See Also
--
-- PipelineVertexInputStateCreateInfo
newtype PipelineVertexInputStateCreateFlags
PipelineVertexInputStateCreateFlags :: Flags -> PipelineVertexInputStateCreateFlags
-- | VkPrimitiveTopology - Supported primitive topologies
--
-- Description
--
-- Each primitive topology, and its construction from a list of vertices,
-- is described in detail below with a supporting diagram, according to
-- the following key:
--
-- TODO: table
--
-- The diagrams are supported with mathematical definitions where the
-- vertices (v) and primitives (p) are numbered starting from 0; v0 is
-- the first vertex in the provided data and p0 is the first primitive in
-- the set of primitives defined by the vertices and topology.
--
-- See Also
--
-- PipelineInputAssemblyStateCreateInfo
newtype PrimitiveTopology
PrimitiveTopology :: Int32 -> PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_POINT_LIST specifies a series of separate
-- point primitives.
pattern PRIMITIVE_TOPOLOGY_POINT_LIST :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_LIST specifies a series of separate
-- line primitives.
pattern PRIMITIVE_TOPOLOGY_LINE_LIST :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_STRIP specifies a series of
-- connected line primitives with consecutive lines sharing a
-- vertex.
pattern PRIMITIVE_TOPOLOGY_LINE_STRIP :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_LIST specifies a series of
-- separate triangle primitives.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP specifies a series of
-- connected triangle primitives with consecutive triangles
-- sharing an edge.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_FAN specifies a series of
-- connected triangle primitives with all triangles sharing a
-- common vertex.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_FAN :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY specifies a series
-- of separate line primitives with adjacency.
pattern PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY specifies a series
-- of connected line primitives with adjacency, with consecutive
-- primitives sharing three vertices.
pattern PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY specifies a
-- series of separate triangle primitives with adjacency.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY specifies
-- connected triangle primitives with adjacency, with consecutive
-- triangles sharing an edge.
pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY :: PrimitiveTopology
-- | PRIMITIVE_TOPOLOGY_PATCH_LIST specifies separate patch
-- primitives.
pattern PRIMITIVE_TOPOLOGY_PATCH_LIST :: PrimitiveTopology
-- | VkCompareOp - Stencil comparison function
--
-- See Also
--
-- PipelineDepthStencilStateCreateInfo, SamplerCreateInfo,
-- StencilOpState
newtype CompareOp
CompareOp :: Int32 -> CompareOp
-- | COMPARE_OP_NEVER specifies that the test evaluates to false.
pattern COMPARE_OP_NEVER :: CompareOp
-- | COMPARE_OP_LESS specifies that the test evaluates A < B.
pattern COMPARE_OP_LESS :: CompareOp
-- | COMPARE_OP_EQUAL specifies that the test evaluates A = B.
pattern COMPARE_OP_EQUAL :: CompareOp
-- | COMPARE_OP_LESS_OR_EQUAL specifies that the test evaluates A ≤
-- B.
pattern COMPARE_OP_LESS_OR_EQUAL :: CompareOp
-- | COMPARE_OP_GREATER specifies that the test evaluates A > B.
pattern COMPARE_OP_GREATER :: CompareOp
-- | COMPARE_OP_NOT_EQUAL specifies that the test evaluates A ≠ B.
pattern COMPARE_OP_NOT_EQUAL :: CompareOp
-- | COMPARE_OP_GREATER_OR_EQUAL specifies that the test evaluates A
-- ≥ B.
pattern COMPARE_OP_GREATER_OR_EQUAL :: CompareOp
-- | COMPARE_OP_ALWAYS specifies that the test evaluates to true.
pattern COMPARE_OP_ALWAYS :: CompareOp
-- | VkPolygonMode - Control polygon rasterization mode
--
-- Description
--
-- These modes affect only the final rasterization of polygons: in
-- particular, a polygon’s vertices are shaded and the polygon is clipped
-- and possibly culled before these modes are applied.
--
-- See Also
--
-- PipelineRasterizationStateCreateInfo
newtype PolygonMode
PolygonMode :: Int32 -> PolygonMode
-- | POLYGON_MODE_FILL specifies that polygons are rendered using
-- the polygon rasterization rules in this section.
pattern POLYGON_MODE_FILL :: PolygonMode
-- | POLYGON_MODE_LINE specifies that polygon edges are drawn as
-- line segments.
pattern POLYGON_MODE_LINE :: PolygonMode
-- | POLYGON_MODE_POINT specifies that polygon vertices are drawn as
-- points.
pattern POLYGON_MODE_POINT :: PolygonMode
-- | POLYGON_MODE_FILL_RECTANGLE_NV specifies that polygons are
-- rendered using polygon rasterization rules, modified to consider a
-- sample within the primitive if the sample location is inside the
-- axis-aligned bounding box of the triangle after projection. Note that
-- the barycentric weights used in attribute interpolation can
-- extend outside the range [0,1] when these primitives are shaded.
-- Special treatment is given to a sample position on the boundary edge
-- of the bounding box. In such a case, if two rectangles lie on either
-- side of a common edge (with identical endpoints) on which a sample
-- position lies, then exactly one of the triangles must produce a
-- fragment that covers that sample during rasterization.
--
-- Polygons rendered in POLYGON_MODE_FILL_RECTANGLE_NV mode
-- may be clipped by the frustum or by user clip planes. If
-- clipping is applied, the triangle is culled rather than clipped.
--
-- Area calculation and facingness are determined for
-- POLYGON_MODE_FILL_RECTANGLE_NV mode using the triangle’s
-- vertices.
pattern POLYGON_MODE_FILL_RECTANGLE_NV :: PolygonMode
-- | VkCullModeFlagBits - Bitmask controlling triangle culling
--
-- Description
--
-- Following culling, fragments are produced for any triangles which have
-- not been discarded.
--
-- See Also
--
-- CullModeFlags
newtype CullModeFlagBits
CullModeFlagBits :: Flags -> CullModeFlagBits
-- | CULL_MODE_NONE specifies that no triangles are discarded
pattern CULL_MODE_NONE :: CullModeFlagBits
-- | CULL_MODE_FRONT_BIT specifies that front-facing triangles are
-- discarded
pattern CULL_MODE_FRONT_BIT :: CullModeFlagBits
-- | CULL_MODE_BACK_BIT specifies that back-facing triangles are
-- discarded
pattern CULL_MODE_BACK_BIT :: CullModeFlagBits
-- | CULL_MODE_FRONT_AND_BACK specifies that all triangles are
-- discarded.
pattern CULL_MODE_FRONT_AND_BACK :: CullModeFlagBits
type CullModeFlags = CullModeFlagBits
-- | VkFrontFace - Interpret polygon front-facing orientation
--
-- Description
--
-- Any triangle which is not front-facing is back-facing, including
-- zero-area triangles.
--
-- See Also
--
-- PipelineRasterizationStateCreateInfo
newtype FrontFace
FrontFace :: Int32 -> FrontFace
-- | FRONT_FACE_COUNTER_CLOCKWISE specifies that a triangle with
-- positive area is considered front-facing.
pattern FRONT_FACE_COUNTER_CLOCKWISE :: FrontFace
-- | FRONT_FACE_CLOCKWISE specifies that a triangle with negative
-- area is considered front-facing.
pattern FRONT_FACE_CLOCKWISE :: FrontFace
-- | VkBlendFactor - Framebuffer blending factors
--
-- Description
--
-- The semantics of each enum value is described in the table below:
--
-- TODO: table
--
-- Blend Factors
--
-- In this table, the following conventions are used:
--
--
-- - Rs0,Gs0,Bs0 and As0 represent the first source color R, G, B, and
-- A components, respectively, for the fragment output location
-- corresponding to the color attachment being blended.
-- - Rs1,Gs1,Bs1 and As1 represent the second source color R, G, B, and
-- A components, respectively, used in dual source blending modes, for
-- the fragment output location corresponding to the color attachment
-- being blended.
-- - Rd,Gd,Bd and Ad represent the R, G, B, and A components of the
-- destination color. That is, the color currently in the corresponding
-- color attachment for this fragment/sample.
-- - Rc,Gc,Bc and Ac represent the blend constant R, G, B, and A
-- components, respectively.
--
--
-- See Also
--
-- PipelineColorBlendAttachmentState
newtype BlendFactor
BlendFactor :: Int32 -> BlendFactor
pattern BLEND_FACTOR_ZERO :: BlendFactor
pattern BLEND_FACTOR_ONE :: BlendFactor
pattern BLEND_FACTOR_SRC_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC_COLOR :: BlendFactor
pattern BLEND_FACTOR_DST_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_DST_COLOR :: BlendFactor
pattern BLEND_FACTOR_SRC_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC_ALPHA :: BlendFactor
pattern BLEND_FACTOR_DST_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_DST_ALPHA :: BlendFactor
pattern BLEND_FACTOR_CONSTANT_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR :: BlendFactor
pattern BLEND_FACTOR_CONSTANT_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA :: BlendFactor
pattern BLEND_FACTOR_SRC_ALPHA_SATURATE :: BlendFactor
pattern BLEND_FACTOR_SRC1_COLOR :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC1_COLOR :: BlendFactor
pattern BLEND_FACTOR_SRC1_ALPHA :: BlendFactor
pattern BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA :: BlendFactor
-- | VkBlendOp - Framebuffer blending operations
--
-- Description
--
-- The semantics of each basic blend operations is described in the table
-- below:
--
-- TODO: table
--
-- Basic Blend Operations
--
-- In this table, the following conventions are used:
--
--
-- - Rs0, Gs0, Bs0 and As0 represent the first source color R, G, B,
-- and A components, respectively.
-- - Rd, Gd, Bd and Ad represent the R, G, B, and A components of the
-- destination color. That is, the color currently in the corresponding
-- color attachment for this fragment/sample.
-- - Sr, Sg, Sb and Sa represent the source blend factor R, G, B, and A
-- components, respectively.
-- - Dr, Dg, Db and Da represent the destination blend factor R, G, B,
-- and A components, respectively.
--
--
-- The blending operation produces a new set of values R, G, B and A,
-- which are written to the framebuffer attachment. If blending is not
-- enabled for this attachment, then R, G, B and A are assigned Rs0, Gs0,
-- Bs0 and As0, respectively.
--
-- If the color attachment is fixed-point, the components of the source
-- and destination values and blend factors are each clamped to [0,1] or
-- [-1,1] respectively for an unsigned normalized or signed normalized
-- color attachment prior to evaluating the blend operations. If the
-- color attachment is floating-point, no clamping occurs.
--
-- See Also
--
-- PipelineColorBlendAttachmentState
newtype BlendOp
BlendOp :: Int32 -> BlendOp
pattern BLEND_OP_ADD :: BlendOp
pattern BLEND_OP_SUBTRACT :: BlendOp
pattern BLEND_OP_REVERSE_SUBTRACT :: BlendOp
pattern BLEND_OP_MIN :: BlendOp
pattern BLEND_OP_MAX :: BlendOp
pattern BLEND_OP_BLUE_EXT :: BlendOp
pattern BLEND_OP_GREEN_EXT :: BlendOp
pattern BLEND_OP_RED_EXT :: BlendOp
pattern BLEND_OP_INVERT_OVG_EXT :: BlendOp
pattern BLEND_OP_CONTRAST_EXT :: BlendOp
pattern BLEND_OP_MINUS_CLAMPED_EXT :: BlendOp
pattern BLEND_OP_MINUS_EXT :: BlendOp
pattern BLEND_OP_PLUS_DARKER_EXT :: BlendOp
pattern BLEND_OP_PLUS_CLAMPED_ALPHA_EXT :: BlendOp
pattern BLEND_OP_PLUS_CLAMPED_EXT :: BlendOp
pattern BLEND_OP_PLUS_EXT :: BlendOp
pattern BLEND_OP_HSL_LUMINOSITY_EXT :: BlendOp
pattern BLEND_OP_HSL_COLOR_EXT :: BlendOp
pattern BLEND_OP_HSL_SATURATION_EXT :: BlendOp
pattern BLEND_OP_HSL_HUE_EXT :: BlendOp
pattern BLEND_OP_HARDMIX_EXT :: BlendOp
pattern BLEND_OP_PINLIGHT_EXT :: BlendOp
pattern BLEND_OP_LINEARLIGHT_EXT :: BlendOp
pattern BLEND_OP_VIVIDLIGHT_EXT :: BlendOp
pattern BLEND_OP_LINEARBURN_EXT :: BlendOp
pattern BLEND_OP_LINEARDODGE_EXT :: BlendOp
pattern BLEND_OP_INVERT_RGB_EXT :: BlendOp
pattern BLEND_OP_INVERT_EXT :: BlendOp
pattern BLEND_OP_EXCLUSION_EXT :: BlendOp
pattern BLEND_OP_DIFFERENCE_EXT :: BlendOp
pattern BLEND_OP_SOFTLIGHT_EXT :: BlendOp
pattern BLEND_OP_HARDLIGHT_EXT :: BlendOp
pattern BLEND_OP_COLORBURN_EXT :: BlendOp
pattern BLEND_OP_COLORDODGE_EXT :: BlendOp
pattern BLEND_OP_LIGHTEN_EXT :: BlendOp
pattern BLEND_OP_DARKEN_EXT :: BlendOp
pattern BLEND_OP_OVERLAY_EXT :: BlendOp
pattern BLEND_OP_SCREEN_EXT :: BlendOp
pattern BLEND_OP_MULTIPLY_EXT :: BlendOp
pattern BLEND_OP_XOR_EXT :: BlendOp
pattern BLEND_OP_DST_ATOP_EXT :: BlendOp
pattern BLEND_OP_SRC_ATOP_EXT :: BlendOp
pattern BLEND_OP_DST_OUT_EXT :: BlendOp
pattern BLEND_OP_SRC_OUT_EXT :: BlendOp
pattern BLEND_OP_DST_IN_EXT :: BlendOp
pattern BLEND_OP_SRC_IN_EXT :: BlendOp
pattern BLEND_OP_DST_OVER_EXT :: BlendOp
pattern BLEND_OP_SRC_OVER_EXT :: BlendOp
pattern BLEND_OP_DST_EXT :: BlendOp
pattern BLEND_OP_SRC_EXT :: BlendOp
pattern BLEND_OP_ZERO_EXT :: BlendOp
-- | VkStencilOp - Stencil comparison function
--
-- Description
--
-- For purposes of increment and decrement, the stencil bits are
-- considered as an unsigned integer.
--
-- See Also
--
-- StencilOpState
newtype StencilOp
StencilOp :: Int32 -> StencilOp
-- | STENCIL_OP_KEEP keeps the current value.
pattern STENCIL_OP_KEEP :: StencilOp
-- | STENCIL_OP_ZERO sets the value to 0.
pattern STENCIL_OP_ZERO :: StencilOp
-- | STENCIL_OP_REPLACE sets the value to reference.
pattern STENCIL_OP_REPLACE :: StencilOp
-- | STENCIL_OP_INCREMENT_AND_CLAMP increments the current value and
-- clamps to the maximum representable unsigned value.
pattern STENCIL_OP_INCREMENT_AND_CLAMP :: StencilOp
-- | STENCIL_OP_DECREMENT_AND_CLAMP decrements the current value and
-- clamps to 0.
pattern STENCIL_OP_DECREMENT_AND_CLAMP :: StencilOp
-- | STENCIL_OP_INVERT bitwise-inverts the current value.
pattern STENCIL_OP_INVERT :: StencilOp
-- | STENCIL_OP_INCREMENT_AND_WRAP increments the current value and
-- wraps to 0 when the maximum value would have been exceeded.
pattern STENCIL_OP_INCREMENT_AND_WRAP :: StencilOp
-- | STENCIL_OP_DECREMENT_AND_WRAP decrements the current value and
-- wraps to the maximum possible value when the value would go below 0.
pattern STENCIL_OP_DECREMENT_AND_WRAP :: StencilOp
-- | VkLogicOp - Framebuffer logical operations
--
-- Description
--
-- The logical operations supported by Vulkan are summarized in the
-- following table in which
--
--
-- - ¬ is bitwise invert,
-- - ∧ is bitwise and,
-- - ∨ is bitwise or,
-- - ⊕ is bitwise exclusive or,
-- - s is the fragment’s Rs0, Gs0, Bs0 or As0 component value for the
-- fragment output corresponding to the color attachment being updated,
-- and
-- - d is the color attachment’s R, G, B or A component value:
--
--
-- TODO: table
--
-- Logical Operations
--
-- The result of the logical operation is then written to the color
-- attachment as controlled by the component write mask, described in
-- Blend Operations.
--
-- See Also
--
-- PipelineColorBlendStateCreateInfo
newtype LogicOp
LogicOp :: Int32 -> LogicOp
pattern LOGIC_OP_CLEAR :: LogicOp
pattern LOGIC_OP_AND :: LogicOp
pattern LOGIC_OP_AND_REVERSE :: LogicOp
pattern LOGIC_OP_COPY :: LogicOp
pattern LOGIC_OP_AND_INVERTED :: LogicOp
pattern LOGIC_OP_NO_OP :: LogicOp
pattern LOGIC_OP_XOR :: LogicOp
pattern LOGIC_OP_OR :: LogicOp
pattern LOGIC_OP_NOR :: LogicOp
pattern LOGIC_OP_EQUIVALENT :: LogicOp
pattern LOGIC_OP_INVERT :: LogicOp
pattern LOGIC_OP_OR_REVERSE :: LogicOp
pattern LOGIC_OP_COPY_INVERTED :: LogicOp
pattern LOGIC_OP_OR_INVERTED :: LogicOp
pattern LOGIC_OP_NAND :: LogicOp
pattern LOGIC_OP_SET :: LogicOp
-- | VkVertexInputRate - Specify rate at which vertex attributes are pulled
-- from buffers
--
-- See Also
--
-- VertexInputBindingDescription
newtype VertexInputRate
VertexInputRate :: Int32 -> VertexInputRate
-- | VERTEX_INPUT_RATE_VERTEX specifies that vertex attribute
-- addressing is a function of the vertex index.
pattern VERTEX_INPUT_RATE_VERTEX :: VertexInputRate
-- | VERTEX_INPUT_RATE_INSTANCE specifies that vertex attribute
-- addressing is a function of the instance index.
pattern VERTEX_INPUT_RATE_INSTANCE :: VertexInputRate
-- | VkDynamicState - Indicate which dynamic state is taken from dynamic
-- state commands
--
-- See Also
--
-- PipelineDynamicStateCreateInfo
newtype DynamicState
DynamicState :: Int32 -> DynamicState
-- | DYNAMIC_STATE_VIEWPORT specifies that the pViewports
-- state in PipelineViewportStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetViewport before any
-- draw commands. The number of viewports used by a pipeline is still
-- specified by the viewportCount member of
-- PipelineViewportStateCreateInfo.
pattern DYNAMIC_STATE_VIEWPORT :: DynamicState
-- | DYNAMIC_STATE_SCISSOR specifies that the pScissors
-- state in PipelineViewportStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetScissor before any
-- draw commands. The number of scissor rectangles used by a pipeline is
-- still specified by the scissorCount member of
-- PipelineViewportStateCreateInfo.
pattern DYNAMIC_STATE_SCISSOR :: DynamicState
-- | DYNAMIC_STATE_LINE_WIDTH specifies that the lineWidth
-- state in PipelineRasterizationStateCreateInfo will be ignored
-- and must be set dynamically with cmdSetLineWidth before
-- any draw commands that generate line primitives for the rasterizer.
pattern DYNAMIC_STATE_LINE_WIDTH :: DynamicState
-- | DYNAMIC_STATE_DEPTH_BIAS specifies that the
-- depthBiasConstantFactor, depthBiasClamp and
-- depthBiasSlopeFactor states in
-- PipelineRasterizationStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetDepthBias before any
-- draws are performed with depthBiasEnable in
-- PipelineRasterizationStateCreateInfo set to TRUE.
pattern DYNAMIC_STATE_DEPTH_BIAS :: DynamicState
-- | DYNAMIC_STATE_BLEND_CONSTANTS specifies that the
-- blendConstants state in
-- PipelineColorBlendStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetBlendConstants before
-- any draws are performed with a pipeline state with
-- PipelineColorBlendAttachmentState member blendEnable
-- set to TRUE and any of the blend functions using a constant
-- blend color.
pattern DYNAMIC_STATE_BLEND_CONSTANTS :: DynamicState
-- | DYNAMIC_STATE_DEPTH_BOUNDS specifies that the
-- minDepthBounds and maxDepthBounds states of
-- PipelineDepthStencilStateCreateInfo will be ignored and
-- must be set dynamically with cmdSetDepthBounds before
-- any draws are performed with a pipeline state with
-- PipelineDepthStencilStateCreateInfo member
-- depthBoundsTestEnable set to TRUE.
pattern DYNAMIC_STATE_DEPTH_BOUNDS :: DynamicState
-- | DYNAMIC_STATE_STENCIL_COMPARE_MASK specifies that the
-- compareMask state in
-- PipelineDepthStencilStateCreateInfo for both front and
-- back will be ignored and must be set dynamically with
-- cmdSetStencilCompareMask before any draws are performed with a
-- pipeline state with PipelineDepthStencilStateCreateInfo member
-- stencilTestEnable set to TRUE
pattern DYNAMIC_STATE_STENCIL_COMPARE_MASK :: DynamicState
-- | DYNAMIC_STATE_STENCIL_WRITE_MASK specifies that the
-- writeMask state in PipelineDepthStencilStateCreateInfo
-- for both front and back will be ignored and
-- must be set dynamically with cmdSetStencilWriteMask
-- before any draws are performed with a pipeline state with
-- PipelineDepthStencilStateCreateInfo member
-- stencilTestEnable set to TRUE
pattern DYNAMIC_STATE_STENCIL_WRITE_MASK :: DynamicState
-- | DYNAMIC_STATE_STENCIL_REFERENCE specifies that the
-- reference state in PipelineDepthStencilStateCreateInfo
-- for both front and back will be ignored and
-- must be set dynamically with cmdSetStencilReference
-- before any draws are performed with a pipeline state with
-- PipelineDepthStencilStateCreateInfo member
-- stencilTestEnable set to TRUE
pattern DYNAMIC_STATE_STENCIL_REFERENCE :: DynamicState
-- | DYNAMIC_STATE_LINE_STIPPLE_EXT specifies that the
-- lineStippleFactor and lineStipplePattern state in
-- PipelineRasterizationLineStateCreateInfoEXT will be ignored and
-- must be set dynamically with cmdSetLineStippleEXT before
-- any draws are performed with a pipeline state with
-- PipelineRasterizationLineStateCreateInfoEXT member
-- stippledLineEnable set to TRUE.
pattern DYNAMIC_STATE_LINE_STIPPLE_EXT :: DynamicState
-- | DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV specifies that the
-- pExclusiveScissors state in
-- PipelineViewportExclusiveScissorStateCreateInfoNV will be
-- ignored and must be set dynamically with
-- cmdSetExclusiveScissorNV before any draw commands. The number
-- of exclusive scissor rectangles used by a pipeline is still specified
-- by the exclusiveScissorCount member of
-- PipelineViewportExclusiveScissorStateCreateInfoNV.
pattern DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV :: DynamicState
-- | DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV specifies that
-- the coarse sample order state in
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV will be
-- ignored and must be set dynamically with
-- cmdSetCoarseSampleOrderNV before any draw commands.
pattern DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV :: DynamicState
-- | DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV specifies that
-- the pShadingRatePalettes state in
-- PipelineViewportShadingRateImageStateCreateInfoNV will be
-- ignored and must be set dynamically with
-- cmdSetViewportShadingRatePaletteNV before any draw commands.
pattern DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV :: DynamicState
-- | DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT specifies that the
-- sampleLocationsInfo state in
-- PipelineSampleLocationsStateCreateInfoEXT will be ignored and
-- must be set dynamically with cmdSetSampleLocationsEXT
-- before any draw or clear commands. Enabling custom sample locations is
-- still indicated by the sampleLocationsEnable member of
-- PipelineSampleLocationsStateCreateInfoEXT.
pattern DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: DynamicState
-- | DYNAMIC_STATE_DISCARD_RECTANGLE_EXT specifies that the
-- pDiscardRectangles state in
-- PipelineDiscardRectangleStateCreateInfoEXT will be ignored and
-- must be set dynamically with cmdSetDiscardRectangleEXT
-- before any draw or clear commands. The DiscardRectangleModeEXT
-- and the number of active discard rectangles is still specified by the
-- discardRectangleMode and discardRectangleCount
-- members of PipelineDiscardRectangleStateCreateInfoEXT.
pattern DYNAMIC_STATE_DISCARD_RECTANGLE_EXT :: DynamicState
-- | DYNAMIC_STATE_VIEWPORT_W_SCALING_NV specifies that the
-- pViewportScalings state in
-- PipelineViewportWScalingStateCreateInfoNV will be ignored and
-- must be set dynamically with cmdSetViewportWScalingNV
-- before any draws are performed with a pipeline state with
-- PipelineViewportWScalingStateCreateInfoNV member
-- viewportScalingEnable set to TRUE
pattern DYNAMIC_STATE_VIEWPORT_W_SCALING_NV :: DynamicState
-- | VkShaderStageFlagBits - Bitmask specifying a pipeline stage
--
-- Description
--
-- Note
--
-- SHADER_STAGE_ALL_GRAPHICS only includes the original five
-- graphics stages included in Vulkan 1.0, and not any stages added by
-- extensions. Thus, it may not have the desired effect in all cases.
--
-- See Also
--
-- PipelineShaderStageCreateInfo, ShaderStageFlags,
-- getShaderInfoAMD
newtype ShaderStageFlagBits
ShaderStageFlagBits :: Flags -> ShaderStageFlagBits
-- | SHADER_STAGE_VERTEX_BIT specifies the vertex stage.
pattern SHADER_STAGE_VERTEX_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_TESSELLATION_CONTROL_BIT specifies the
-- tessellation control stage.
pattern SHADER_STAGE_TESSELLATION_CONTROL_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_TESSELLATION_EVALUATION_BIT specifies the
-- tessellation evaluation stage.
pattern SHADER_STAGE_TESSELLATION_EVALUATION_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_GEOMETRY_BIT specifies the geometry stage.
pattern SHADER_STAGE_GEOMETRY_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_FRAGMENT_BIT specifies the fragment stage.
pattern SHADER_STAGE_FRAGMENT_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_COMPUTE_BIT specifies the compute stage.
pattern SHADER_STAGE_COMPUTE_BIT :: ShaderStageFlagBits
-- | SHADER_STAGE_ALL_GRAPHICS is a combination of bits used as
-- shorthand to specify all graphics stages defined above (excluding the
-- compute stage).
pattern SHADER_STAGE_ALL_GRAPHICS :: ShaderStageFlagBits
-- | SHADER_STAGE_ALL is a combination of bits used as shorthand to
-- specify all shader stages supported by the device, including all
-- additional stages which are introduced by extensions.
pattern SHADER_STAGE_ALL :: ShaderStageFlagBits
-- | SHADER_STAGE_MESH_BIT_NV specifies the mesh stage.
pattern SHADER_STAGE_MESH_BIT_NV :: ShaderStageFlagBits
-- | SHADER_STAGE_TASK_BIT_NV specifies the task stage.
pattern SHADER_STAGE_TASK_BIT_NV :: ShaderStageFlagBits
-- | SHADER_STAGE_CALLABLE_BIT_KHR specifies the callable stage.
pattern SHADER_STAGE_CALLABLE_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_INTERSECTION_BIT_KHR specifies the intersection
-- stage.
pattern SHADER_STAGE_INTERSECTION_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_MISS_BIT_KHR specifies the miss stage.
pattern SHADER_STAGE_MISS_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_CLOSEST_HIT_BIT_KHR specifies the closest hit
-- stage.
pattern SHADER_STAGE_CLOSEST_HIT_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_ANY_HIT_BIT_KHR specifies the any-hit stage.
pattern SHADER_STAGE_ANY_HIT_BIT_KHR :: ShaderStageFlagBits
-- | SHADER_STAGE_RAYGEN_BIT_KHR specifies the ray generation stage.
pattern SHADER_STAGE_RAYGEN_BIT_KHR :: ShaderStageFlagBits
type ShaderStageFlags = ShaderStageFlagBits
-- | VkPipelineCreateFlagBits - Bitmask controlling how a pipeline is
-- created
--
-- Description
--
--
--
--
--
-- It is valid to set both PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT
-- and PIPELINE_CREATE_DERIVATIVE_BIT. This allows a pipeline to
-- be both a parent and possibly a child in a pipeline hierarchy. See
-- Pipeline Derivatives for more information.
--
-- See Also
--
-- PipelineCreateFlags
newtype PipelineCreateFlagBits
PipelineCreateFlagBits :: Flags -> PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DERIVATIVE_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_LIBRARY_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DEFER_COMPILE_BIT_NV :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_DISPATCH_BASE_BIT :: PipelineCreateFlagBits
pattern PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: PipelineCreateFlagBits
type PipelineCreateFlags = PipelineCreateFlagBits
-- | VkPipelineShaderStageCreateFlagBits - Bitmask controlling how a
-- pipeline shader stage is created
--
-- Description
--
-- Note
--
-- If
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- and PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- are specified and minSubgroupSize does not equal
-- maxSubgroupSize and no required subgroup size is
-- specified, then the only way to guarantee that the 'X' dimension of
-- the local workgroup size is a multiple of SubgroupSize is to
-- make it a multiple of maxSubgroupSize. Under these
-- conditions, you are guaranteed full subgroups but not any particular
-- subgroup size.
--
-- See Also
--
-- PipelineShaderStageCreateFlags
newtype PipelineShaderStageCreateFlagBits
PipelineShaderStageCreateFlagBits :: Flags -> PipelineShaderStageCreateFlagBits
-- | PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT
-- specifies that the subgroup sizes must be launched with all
-- invocations active in the compute stage.
pattern PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT :: PipelineShaderStageCreateFlagBits
-- |
-- PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
-- specifies that the SubgroupSize may vary in the shader
-- stage.
pattern PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT :: PipelineShaderStageCreateFlagBits
type PipelineShaderStageCreateFlags = PipelineShaderStageCreateFlagBits
-- | VkColorComponentFlagBits - Bitmask controlling which components are
-- written to the framebuffer
--
-- Description
--
-- The color write mask operation is applied regardless of whether
-- blending is enabled.
--
-- See Also
--
-- ColorComponentFlags
newtype ColorComponentFlagBits
ColorComponentFlagBits :: Flags -> ColorComponentFlagBits
-- | COLOR_COMPONENT_R_BIT specifies that the R value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_R_BIT :: ColorComponentFlagBits
-- | COLOR_COMPONENT_G_BIT specifies that the G value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_G_BIT :: ColorComponentFlagBits
-- | COLOR_COMPONENT_B_BIT specifies that the B value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_B_BIT :: ColorComponentFlagBits
-- | COLOR_COMPONENT_A_BIT specifies that the A value is written to
-- the color attachment for the appropriate sample. Otherwise, the value
-- in memory is unmodified.
pattern COLOR_COMPONENT_A_BIT :: ColorComponentFlagBits
type ColorComponentFlags = ColorComponentFlagBits
-- | VkSampleMask - Mask of sample coverage information
--
-- See Also
--
-- PipelineMultisampleStateCreateInfo
type SampleMask = Word32
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.StencilOpState
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.SpecializationMapEntry
instance GHC.Classes.Eq Vulkan.Core10.Pipeline.Viewport
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.Viewport
instance GHC.Show.Show Vulkan.Core10.Pipeline.Viewport
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.SpecializationMapEntry
instance GHC.Show.Show Vulkan.Core10.Pipeline.SpecializationMapEntry
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.SpecializationInfo
instance GHC.Show.Show Vulkan.Core10.Pipeline.SpecializationInfo
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance GHC.Show.Show Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance GHC.Show.Show Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance GHC.Show.Show Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance GHC.Show.Show Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.PipelineDynamicStateCreateInfo
instance GHC.Show.Show Vulkan.Core10.Pipeline.PipelineDynamicStateCreateInfo
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.StencilOpState
instance GHC.Show.Show Vulkan.Core10.Pipeline.StencilOpState
instance GHC.Generics.Generic Vulkan.Core10.Pipeline.PipelineDepthStencilStateCreateInfo
instance GHC.Show.Show Vulkan.Core10.Pipeline.PipelineDepthStencilStateCreateInfo
instance GHC.Generics.Generic (Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.GraphicsPipelineCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.PipelineDepthStencilStateCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.PipelineDepthStencilStateCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.PipelineDepthStencilStateCreateInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.StencilOpState
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.StencilOpState
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.StencilOpState
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.StencilOpState
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.PipelineDynamicStateCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.PipelineDynamicStateCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.PipelineDynamicStateCreateInfo
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineColorBlendStateCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.PipelineColorBlendAttachmentState
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineMultisampleStateCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineRasterizationStateCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineViewportStateCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineTessellationStateCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.PipelineInputAssemblyStateCreateInfo
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineVertexInputStateCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.VertexInputAttributeDescription
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.VertexInputBindingDescription
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.ComputePipelineCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.ComputePipelineCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pipeline.PipelineShaderStageCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.SpecializationInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.SpecializationInfo
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.SpecializationInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.SpecializationMapEntry
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.SpecializationMapEntry
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.SpecializationMapEntry
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.SpecializationMapEntry
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pipeline.Viewport
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pipeline.Viewport
instance Foreign.Storable.Storable Vulkan.Core10.Pipeline.Viewport
instance Vulkan.Zero.Zero Vulkan.Core10.Pipeline.Viewport
module Vulkan.Extensions.VK_NV_device_generated_commands
-- | vkCmdExecuteGeneratedCommandsNV - Performs the generation and
-- execution of commands on the device
--
-- Valid Usage
--
--
--
--
-- - [[VUID-{refpage}-None-02691]] If a ImageView is accessed
-- using atomic operations as a result of this command, then the image
-- view’s format features must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - [[VUID-{refpage}-None-02692]] If a ImageView is sampled
-- with FILTER_CUBIC_EXT as a result of this command, then the
-- image view’s format features must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - [[VUID-{refpage}-filterCubic-02694]] Any ImageView being
-- sampled with FILTER_CUBIC_EXT as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - [[VUID-{refpage}-filterCubicMinmax-02695]] Any ImageView
-- being sampled with FILTER_CUBIC_EXT with a reduction mode of
-- either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - [[VUID-{refpage}-flags-02696]] Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - [[VUID-{refpage}-None-02697]] For each set n that is
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command, a descriptor set must have been
-- bound to n at the same pipeline bind point, with a
-- PipelineLayout that is compatible for set n, with the
-- PipelineLayout used to create the current Pipeline, as
-- described in ???
-- - [[VUID-{refpage}-None-02698]] For each push constant that is
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command, a push constant value must have
-- been set for the same pipeline bind point, with a
-- PipelineLayout that is compatible for push constants, with the
-- PipelineLayout used to create the current Pipeline, as
-- described in ???
-- - [[VUID-{refpage}-None-02699]] Descriptors in each bound descriptor
-- set, specified via cmdBindDescriptorSets, must be valid
-- if they are statically used by the Pipeline bound to the
-- pipeline bind point used by this command
-- - [[VUID-{refpage}-None-02700]] A valid pipeline must be
-- bound to the pipeline bind point used by this command
-- - [[VUID-{refpage}-commandBuffer-02701]] If the Pipeline
-- object bound to the pipeline bind point used by this command requires
-- any dynamic state, that state must have been set for
-- commandBuffer, and done so after any previously bound
-- pipeline with the corresponding state not specified as dynamic
-- - [[VUID-{refpage}-None-02859]] There must not have been any
-- calls to dynamic state setting commands for any state not specified as
-- dynamic in the Pipeline object bound to the pipeline bind point
-- used by this command, since that pipeline was bound
-- - [[VUID-{refpage}-None-02702]] If the Pipeline object bound
-- to the pipeline bind point used by this command accesses a
-- Sampler object that uses unnormalized coordinates, that sampler
-- must not be used to sample from any Image with a
-- ImageView of the type IMAGE_VIEW_TYPE_3D,
-- IMAGE_VIEW_TYPE_CUBE, IMAGE_VIEW_TYPE_1D_ARRAY,
-- IMAGE_VIEW_TYPE_2D_ARRAY or IMAGE_VIEW_TYPE_CUBE_ARRAY,
-- in any shader stage
-- - [[VUID-{refpage}-None-02703]] If the Pipeline object bound
-- to the pipeline bind point used by this command accesses a
-- Sampler object that uses unnormalized coordinates, that sampler
-- must not be used with any of the SPIR-V OpImageSample*
-- or OpImageSparseSample* instructions with
-- ImplicitLod, Dref or Proj in their name, in
-- any shader stage
-- - [[VUID-{refpage}-None-02704]] If the Pipeline object bound
-- to the pipeline bind point used by this command accesses a
-- Sampler object that uses unnormalized coordinates, that sampler
-- must not be used with any of the SPIR-V OpImageSample*
-- or OpImageSparseSample* instructions that includes a LOD bias
-- or any offset values, in any shader stage
-- - [[VUID-{refpage}-None-02705]] If the robust buffer access
-- feature is not enabled, and if the Pipeline object bound to the
-- pipeline bind point used by this command accesses a uniform buffer, it
-- must not access values outside of the range of the buffer as
-- specified in the descriptor set bound to the same pipeline bind
-- point
-- - [[VUID-{refpage}-None-02706]] If the robust buffer access
-- feature is not enabled, and if the Pipeline object bound to the
-- pipeline bind point used by this command accesses a storage buffer, it
-- must not access values outside of the range of the buffer as
-- specified in the descriptor set bound to the same pipeline bind
-- point
-- - [[VUID-{refpage}-commandBuffer-02707]] If commandBuffer
-- is an unprotected command buffer, any resource accessed by the
-- Pipeline object bound to the pipeline bind point used by this
-- command must not be a protected resource
-- - [[VUID-{refpage}-renderPass-02684]] The current render pass
-- must be compatible with the renderPass member
-- of the GraphicsPipelineCreateInfo structure specified when
-- creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - [[VUID-{refpage}-subpass-02685]] The subpass index of the current
-- render pass must be equal to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - [[VUID-{refpage}-None-02686]] Every input attachment used by the
-- current subpass must be bound to the pipeline via a descriptor
-- set
-- - [[VUID-{refpage}-None-02687]] Image subresources used as
-- attachments in the current render pass must not be accessed in
-- any way other than as an attachment by this command
-- - [[VUID-{refpage}-maxMultiviewInstanceIndex-02688]] If the draw is
-- recorded in a render pass instance with multiview enabled, the maximum
-- instance index must be less than or equal to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - [[VUID-{refpage}-sampleLocationsEnable-02689]] If the bound
-- graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - [[VUID-{refpage}-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 NULL_HANDLE buffers
-- bound
-- - [[VUID-{refpage}-None-04008]] If the nullDescriptor feature
-- is not enabled, all vertex input bindings accessed via vertex input
-- variables declared in the vertex shader entry point’s interface
-- must not be NULL_HANDLE
-- - [[VUID-{refpage}-None-02721]] For a given vertex buffer binding,
-- any attribute data fetched must be entirely contained within
-- the corresponding vertex buffer binding, as described in
-- ???
-- - commandBuffer must not be a protected command
-- buffer
-- - If isPreprocessed is TRUE then
-- cmdPreprocessGeneratedCommandsNV must have already been
-- executed on the device, using the same pGeneratedCommandsInfo
-- content as well as the content of the input buffers it references (all
-- except GeneratedCommandsInfoNV::preprocessBuffer).
-- Furthermore pGeneratedCommandsInfo`s
-- indirectCommandsLayout must have been created with the
-- INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV bit
-- set
-- - GeneratedCommandsInfoNV::pipeline must
-- match the current bound pipeline at
-- GeneratedCommandsInfoNV::pipelineBindPoint
-- - Transform feedback must not be active
-- - The ::deviceGeneratedCommands feature must be
-- enabled
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pGeneratedCommandsInfo must be a valid pointer to
-- a valid GeneratedCommandsInfoNV structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called inside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Bool32, CommandBuffer, GeneratedCommandsInfoNV
cmdExecuteGeneratedCommandsNV :: forall io. MonadIO io => CommandBuffer -> ("isPreprocessed" ::: Bool) -> GeneratedCommandsInfoNV -> io ()
-- | vkCmdPreprocessGeneratedCommandsNV - Performs preprocessing for
-- generated commands
--
-- Valid Usage
--
--
-- - commandBuffer must not be a protected command
-- buffer
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pGeneratedCommandsInfo must be a valid pointer to
-- a valid GeneratedCommandsInfoNV structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called outside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, GeneratedCommandsInfoNV
cmdPreprocessGeneratedCommandsNV :: forall io. MonadIO io => CommandBuffer -> GeneratedCommandsInfoNV -> io ()
-- | vkCmdBindPipelineShaderGroupNV - Bind a pipeline object
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - pipeline must be a valid Pipeline
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Both of commandBuffer, and pipeline must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Pipeline, PipelineBindPoint
cmdBindPipelineShaderGroupNV :: forall io. MonadIO io => CommandBuffer -> PipelineBindPoint -> Pipeline -> ("groupIndex" ::: Word32) -> io ()
-- | vkGetGeneratedCommandsMemoryRequirementsNV - Retrieve the buffer
-- allocation requirements for generated commands
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- See Also
--
-- Device, GeneratedCommandsMemoryRequirementsInfoNV,
-- MemoryRequirements2
getGeneratedCommandsMemoryRequirementsNV :: forall a io. (Extendss MemoryRequirements2 a, PokeChain a, PeekChain a, MonadIO io) => Device -> GeneratedCommandsMemoryRequirementsInfoNV -> io (MemoryRequirements2 a)
-- | vkCreateIndirectCommandsLayoutNV - Create an indirect command layout
-- object
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutNV
createIndirectCommandsLayoutNV :: forall io. MonadIO io => Device -> IndirectCommandsLayoutCreateInfoNV -> ("allocator" ::: Maybe AllocationCallbacks) -> io IndirectCommandsLayoutNV
-- | A convenience wrapper to make a compatible pair of calls to
-- createIndirectCommandsLayoutNV and
-- destroyIndirectCommandsLayoutNV
--
-- To ensure that destroyIndirectCommandsLayoutNV is always
-- called: pass bracket (or the allocate function from your
-- favourite resource management library) as the first argument. To just
-- extract the pair pass (,) as the first argument.
withIndirectCommandsLayoutNV :: forall io r. MonadIO io => Device -> IndirectCommandsLayoutCreateInfoNV -> Maybe AllocationCallbacks -> (io IndirectCommandsLayoutNV -> (IndirectCommandsLayoutNV -> io ()) -> r) -> r
-- | vkDestroyIndirectCommandsLayoutNV - Destroy an indirect commands
-- layout
--
-- Valid Usage
--
--
-- - All submitted commands that refer to
-- indirectCommandsLayout must have completed
-- execution
--
--
--
-- - If AllocationCallbacks were provided when
-- indirectCommandsLayout was created, a compatible set of
-- callbacks must be provided here
-- - If no AllocationCallbacks were provided when
-- indirectCommandsLayout was created, pAllocator
-- must be NULL
-- - The ::deviceGeneratedCommands feature must be
-- enabled
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If indirectCommandsLayout is not NULL_HANDLE,
-- indirectCommandsLayout must be a valid
-- IndirectCommandsLayoutNV handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If indirectCommandsLayout is a valid handle, it
-- must have been created, allocated, or retrieved from
-- device
--
--
-- Host Synchronization
--
--
-- - Host access to indirectCommandsLayout must be
-- externally synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- IndirectCommandsLayoutNV
destroyIndirectCommandsLayoutNV :: forall io. MonadIO io => Device -> IndirectCommandsLayoutNV -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV - Structure
-- describing the device-generated commands features that can be
-- supported by an implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
-- structure is included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV can also
-- be used in the pNext chain of DeviceCreateInfo to
-- enable the features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
PhysicalDeviceDeviceGeneratedCommandsFeaturesNV :: Bool -> PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
-- | deviceGeneratedCommands indicates whether the implementation
-- supports functionality to generate commands on the device. See
-- Device-Generated Commands.
[$sel:deviceGeneratedCommands:PhysicalDeviceDeviceGeneratedCommandsFeaturesNV] :: PhysicalDeviceDeviceGeneratedCommandsFeaturesNV -> Bool
-- | VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV - Structure
-- describing push descriptor limits that can be supported by an
-- implementation
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
PhysicalDeviceDeviceGeneratedCommandsPropertiesNV :: Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
-- | maxGraphicsShaderGroupCount is the maximum number of shader
-- groups in GraphicsPipelineShaderGroupsCreateInfoNV.
[$sel:maxGraphicsShaderGroupCount:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
-- | maxIndirectSequenceCount is the maximum number of sequences
-- in GeneratedCommandsInfoNV and in
-- GeneratedCommandsMemoryRequirementsInfoNV.
[$sel:maxIndirectSequenceCount:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
[$sel:maxIndirectCommandsTokenCount:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
-- | maxIndirectCommandsStreamCount is the maximum number of
-- streams in IndirectCommandsLayoutCreateInfoNV.
[$sel:maxIndirectCommandsStreamCount:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
-- | maxIndirectCommandsTokenOffset is the maximum offset in
-- IndirectCommandsLayoutTokenNV.
[$sel:maxIndirectCommandsTokenOffset:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
-- | maxIndirectCommandsStreamStride is the maximum stream stride
-- in IndirectCommandsLayoutCreateInfoNV.
[$sel:maxIndirectCommandsStreamStride:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
[$sel:minSequencesCountBufferOffsetAlignment:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
[$sel:minSequencesIndexBufferOffsetAlignment:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
-- | minIndirectCommandsBufferOffsetAlignment is the minimum
-- alignment for memory addresses used in IndirectCommandsStreamNV
-- and as preprocess buffer in GeneratedCommandsInfoNV.
[$sel:minIndirectCommandsBufferOffsetAlignment:PhysicalDeviceDeviceGeneratedCommandsPropertiesNV] :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV -> Word32
-- | VkGraphicsShaderGroupCreateInfoNV - Structure specifying override
-- parameters for each shader group
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - pStages must be a valid pointer to an array of
-- stageCount valid PipelineShaderStageCreateInfo
-- structures
-- - stageCount must be greater than 0
--
--
-- See Also
--
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- PipelineShaderStageCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputStateCreateInfo, StructureType
data GraphicsShaderGroupCreateInfoNV
GraphicsShaderGroupCreateInfoNV :: Vector (SomeStruct PipelineShaderStageCreateInfo) -> Maybe (SomeStruct PipelineVertexInputStateCreateInfo) -> Maybe (SomeStruct PipelineTessellationStateCreateInfo) -> GraphicsShaderGroupCreateInfoNV
-- | pStages is an array of size stageCount structures of
-- type PipelineShaderStageCreateInfo describing the set of the
-- shader stages to be included in this shader group.
[$sel:stages:GraphicsShaderGroupCreateInfoNV] :: GraphicsShaderGroupCreateInfoNV -> Vector (SomeStruct PipelineShaderStageCreateInfo)
-- | pVertexInputState is a pointer to an instance of the
-- PipelineVertexInputStateCreateInfo structure.
[$sel:vertexInputState:GraphicsShaderGroupCreateInfoNV] :: GraphicsShaderGroupCreateInfoNV -> Maybe (SomeStruct PipelineVertexInputStateCreateInfo)
-- | pTessellationState is a pointer to an instance of the
-- PipelineTessellationStateCreateInfo structure, and is ignored
-- if the shader group does not include a tessellation control shader
-- stage and tessellation evaluation shader stage.
[$sel:tessellationState:GraphicsShaderGroupCreateInfoNV] :: GraphicsShaderGroupCreateInfoNV -> Maybe (SomeStruct PipelineTessellationStateCreateInfo)
-- | VkGraphicsPipelineShaderGroupsCreateInfoNV - Structure specifying
-- parameters of a newly created multi shader group pipeline
--
-- Description
--
-- When referencing shader groups by index, groups defined in the
-- referenced pipelines are treated as if they were defined as additional
-- entries in pGroups. They are appended in the order they
-- appear in the pPipelines array and in the pGroups
-- array when those pipelines were defined.
--
-- The application must maintain the lifetime of all such
-- referenced pipelines based on the pipelines that make use of them.
--
-- Valid Usage
--
--
--
--
-- - The sum of groupCount including those groups added from
-- referenced pPipelines must also be as maximum
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV::maxGraphicsShaderGroupCount
-- - The state of the first element of pGroups must
-- match its equivalent within the parent’s
-- GraphicsPipelineCreateInfo
-- - Each element of pGroups must in combination with
-- the rest of the pipeline state yield a valid state configuration
-- - All elements of pGroups must use the same shader
-- stage combinations unless any mesh shader stage is used, then either
-- combination of task and mesh or just mesh shader is valid
-- - Mesh and regular primitive shading stages cannot be mixed across
-- pGroups
-- - Each element of the pPipelines member of
-- libraries must have been created with identical state
-- to the pipeline currently created except the state that can be
-- overriden by GraphicsShaderGroupCreateInfoNV
-- - The ::deviceGeneratedCommands feature must be
-- enabled
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pGroups must be a valid pointer to an array of
-- groupCount valid GraphicsShaderGroupCreateInfoNV
-- structures
-- - If pipelineCount is not 0, pPipelines
-- must be a valid pointer to an array of pipelineCount
-- valid Pipeline handles
-- - groupCount must be greater than 0
--
--
-- See Also
--
-- GraphicsShaderGroupCreateInfoNV, Pipeline,
-- StructureType
data GraphicsPipelineShaderGroupsCreateInfoNV
GraphicsPipelineShaderGroupsCreateInfoNV :: Vector GraphicsShaderGroupCreateInfoNV -> Vector Pipeline -> GraphicsPipelineShaderGroupsCreateInfoNV
-- | pGroups is an array of GraphicsShaderGroupCreateInfoNV
-- values specifying which state of the original
-- GraphicsPipelineCreateInfo each shader group overrides.
[$sel:groups:GraphicsPipelineShaderGroupsCreateInfoNV] :: GraphicsPipelineShaderGroupsCreateInfoNV -> Vector GraphicsShaderGroupCreateInfoNV
-- | pPipelines is an array of graphics Pipeline, which are
-- referenced within the created pipeline, including all their shader
-- groups.
[$sel:pipelines:GraphicsPipelineShaderGroupsCreateInfoNV] :: GraphicsPipelineShaderGroupsCreateInfoNV -> Vector Pipeline
-- | VkBindShaderGroupIndirectCommandNV - Structure specifying input data
-- for a single shader group command token
--
-- Valid Usage
--
--
--
--
-- - The index must be within range of the accessible
-- shader groups of the current bound graphics pipeline. See
-- cmdBindPipelineShaderGroupNV for further details
--
--
-- See Also
--
-- No cross-references are available
data BindShaderGroupIndirectCommandNV
BindShaderGroupIndirectCommandNV :: Word32 -> BindShaderGroupIndirectCommandNV
[$sel:groupIndex:BindShaderGroupIndirectCommandNV] :: BindShaderGroupIndirectCommandNV -> Word32
-- | VkBindIndexBufferIndirectCommandNV - Structure specifying input data
-- for a single index buffer command token
--
-- Valid Usage
--
--
--
--
-- - The bufferAddress must be aligned to the
-- indexType used
-- - Each element of the buffer from which the address was acquired and
-- that is non-sparse must be bound completely and contiguously to
-- a single DeviceMemory object
--
--
-- Valid Usage (Implicit)
--
--
-- - indexType must be a valid IndexType
-- value
--
--
-- See Also
--
-- DeviceAddress, IndexType
data BindIndexBufferIndirectCommandNV
BindIndexBufferIndirectCommandNV :: DeviceAddress -> Word32 -> IndexType -> BindIndexBufferIndirectCommandNV
-- | bufferAddress specifies a physical address of the
-- Buffer used as index buffer.
[$sel:bufferAddress:BindIndexBufferIndirectCommandNV] :: BindIndexBufferIndirectCommandNV -> DeviceAddress
-- | size is the byte size range which is available for this
-- operation from the provided address.
[$sel:size:BindIndexBufferIndirectCommandNV] :: BindIndexBufferIndirectCommandNV -> Word32
-- | indexType is a IndexType value specifying how indices
-- are treated. Instead of the Vulkan enum values, a custom
-- uint32_t value can be mapped to an IndexType by
-- specifying the
-- IndirectCommandsLayoutTokenNV::pIndexTypes and
-- IndirectCommandsLayoutTokenNV::pIndexTypeValues
-- arrays.
[$sel:indexType:BindIndexBufferIndirectCommandNV] :: BindIndexBufferIndirectCommandNV -> IndexType
-- | VkBindVertexBufferIndirectCommandNV - Structure specifying input data
-- for a single vertex buffer command token
--
-- Valid Usage
--
--
--
--
-- - Each element of the buffer from which the address was acquired and
-- that is non-sparse must be bound completely and contiguously to
-- a single DeviceMemory object
--
--
-- See Also
--
-- DeviceAddress
data BindVertexBufferIndirectCommandNV
BindVertexBufferIndirectCommandNV :: DeviceAddress -> Word32 -> Word32 -> BindVertexBufferIndirectCommandNV
-- | bufferAddress specifies a physical address of the
-- Buffer used as vertex input binding.
[$sel:bufferAddress:BindVertexBufferIndirectCommandNV] :: BindVertexBufferIndirectCommandNV -> DeviceAddress
-- | size is the byte size range which is available for this
-- operation from the provided address.
[$sel:size:BindVertexBufferIndirectCommandNV] :: BindVertexBufferIndirectCommandNV -> Word32
-- | stride is the byte size stride for this vertex input binding
-- as in VertexInputBindingDescription::stride. It is
-- only used if
-- IndirectCommandsLayoutTokenNV::vertexDynamicStride was
-- set, otherwise the stride is inherited from the current bound graphics
-- pipeline.
[$sel:stride:BindVertexBufferIndirectCommandNV] :: BindVertexBufferIndirectCommandNV -> Word32
-- | VkSetStateFlagsIndirectCommandNV - Structure specifying input data for
-- a single state flag command token
--
-- See Also
--
-- No cross-references are available
data SetStateFlagsIndirectCommandNV
SetStateFlagsIndirectCommandNV :: Word32 -> SetStateFlagsIndirectCommandNV
-- | data encodes packed state that this command alters.
--
--
[$sel:data':SetStateFlagsIndirectCommandNV] :: SetStateFlagsIndirectCommandNV -> Word32
-- | VkIndirectCommandsStreamNV - Structure specifying input streams for
-- generated command tokens
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - buffer must be a valid Buffer handle
--
--
-- See Also
--
-- Buffer, DeviceSize, GeneratedCommandsInfoNV
data IndirectCommandsStreamNV
IndirectCommandsStreamNV :: Buffer -> DeviceSize -> IndirectCommandsStreamNV
-- | buffer specifies the Buffer storing the functional
-- arguments for each sequence. These arguments can be written by
-- the device.
[$sel:buffer:IndirectCommandsStreamNV] :: IndirectCommandsStreamNV -> Buffer
-- | offset specified an offset into buffer where the
-- arguments start.
[$sel:offset:IndirectCommandsStreamNV] :: IndirectCommandsStreamNV -> DeviceSize
-- | VkIndirectCommandsLayoutTokenNV - Struct specifying the details of an
-- indirect command layout token
--
-- Valid Usage
--
--
--
--
-- - offset must be less than or equal to
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV::maxIndirectCommandsTokenOffset
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV,
-- vertexBindingUnit must stay within device supported
-- limits for the appropriate commands
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
-- pushconstantPipelineLayout must be valid
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
-- pushconstantOffset must be a multiple of
-- 4
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
-- pushconstantSize must be a multiple of 4
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
-- pushconstantOffset must be less than
-- PhysicalDeviceLimits::maxPushConstantsSize
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV,
-- pushconstantSize must be less than or equal to
-- PhysicalDeviceLimits::maxPushConstantsSize minus
-- pushconstantOffset
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV, for each byte in
-- the range specified by pushconstantOffset and
-- pushconstantSize and for each shader stage in
-- pushconstantShaderStageFlags, there must be a push
-- constant range in pushconstantPipelineLayout that includes
-- that byte and that stage
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV, for each byte in
-- the range specified by pushconstantOffset and
-- pushconstantSize and for each push constant range that
-- overlaps that byte, pushconstantShaderStageFlags must
-- include all stages in that push constant range’s
-- PushConstantRange::pushconstantShaderStageFlags
-- - If tokenType is
-- INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV,
-- indirectStateFlags must not be ´0´
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - tokenType must be a valid
-- IndirectCommandsTokenTypeNV value
-- - If pushconstantPipelineLayout is not NULL_HANDLE,
-- pushconstantPipelineLayout must be a valid
-- PipelineLayout handle
-- - pushconstantShaderStageFlags must be a valid
-- combination of ShaderStageFlagBits values
-- - indirectStateFlags must be a valid combination of
-- IndirectStateFlagBitsNV values
-- - If indexTypeCount is not 0, pIndexTypes
-- must be a valid pointer to an array of indexTypeCount
-- valid IndexType values
-- - If indexTypeCount is not 0,
-- pIndexTypeValues must be a valid pointer to an array
-- of indexTypeCount uint32_t values
--
--
-- See Also
--
-- Bool32, IndexType,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsTokenTypeNV, IndirectStateFlagsNV,
-- PipelineLayout, ShaderStageFlags, StructureType
data IndirectCommandsLayoutTokenNV
IndirectCommandsLayoutTokenNV :: IndirectCommandsTokenTypeNV -> Word32 -> Word32 -> Word32 -> Bool -> PipelineLayout -> ShaderStageFlags -> Word32 -> Word32 -> IndirectStateFlagsNV -> Vector IndexType -> Vector Word32 -> IndirectCommandsLayoutTokenNV
-- | tokenType specifies the token command type.
[$sel:tokenType:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> IndirectCommandsTokenTypeNV
-- | stream is the index of the input stream that contains the
-- token argument data.
[$sel:stream:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Word32
-- | offset is a relative starting offset within the input stream
-- memory for the token argument data.
[$sel:offset:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Word32
-- | vertexBindingUnit is used for the vertex buffer binding
-- command.
[$sel:vertexBindingUnit:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Word32
-- | vertexDynamicStride sets if the vertex buffer stride is
-- provided by the binding command rather than the current bound graphics
-- pipeline state.
[$sel:vertexDynamicStride:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Bool
-- | pushconstantPipelineLayout is the PipelineLayout used
-- for the push constant command.
[$sel:pushconstantPipelineLayout:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> PipelineLayout
-- | pushconstantShaderStageFlags are the shader stage flags used
-- for the push constant command.
[$sel:pushconstantShaderStageFlags:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> ShaderStageFlags
-- | pushconstantOffset is the offset used for the push constant
-- command.
[$sel:pushconstantOffset:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Word32
-- | pushconstantSize is the size used for the push constant
-- command.
[$sel:pushconstantSize:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Word32
-- | indirectStateFlags are the active states for the state flag
-- command.
[$sel:indirectStateFlags:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> IndirectStateFlagsNV
-- | pIndexTypes is the used IndexType for the
-- corresponding uint32_t value entry in
-- pIndexTypeValues.
[$sel:indexTypes:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Vector IndexType
[$sel:indexTypeValues:IndirectCommandsLayoutTokenNV] :: IndirectCommandsLayoutTokenNV -> Vector Word32
-- | VkIndirectCommandsLayoutCreateInfoNV - Structure specifying the
-- parameters of a newly created indirect commands layout object
--
-- Description
--
-- The following code illustrates some of the flags:
--
--
-- void cmdProcessAllSequences(cmd, pipeline, indirectCommandsLayout, pIndirectCommandsTokens, sequencesCount, indexbuffer, indexbufferOffset)
-- {
-- for (s = 0; s < sequencesCount; s++)
-- {
-- sUsed = s;
--
-- if (indirectCommandsLayout.flags & VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV) {
-- sUsed = indexbuffer.load_uint32( sUsed * sizeof(uint32_t) + indexbufferOffset);
-- }
--
-- if (indirectCommandsLayout.flags & VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV) {
-- sUsed = incoherent_implementation_dependent_permutation[ sUsed ];
-- }
--
-- cmdProcessSequence( cmd, pipeline, indirectCommandsLayout, pIndirectCommandsTokens, sUsed );
-- }
-- }
--
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - flags must be a valid combination of
-- IndirectCommandsLayoutUsageFlagBitsNV values
-- - flags must not be 0
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - pTokens must be a valid pointer to an array of
-- tokenCount valid IndirectCommandsLayoutTokenNV
-- structures
-- - pStreamStrides must be a valid pointer to an array
-- of streamCount uint32_t values
-- - tokenCount must be greater than 0
-- - streamCount must be greater than 0
--
--
-- See Also
--
-- IndirectCommandsLayoutTokenNV,
-- IndirectCommandsLayoutUsageFlagsNV, PipelineBindPoint,
-- StructureType, createIndirectCommandsLayoutNV
data IndirectCommandsLayoutCreateInfoNV
IndirectCommandsLayoutCreateInfoNV :: IndirectCommandsLayoutUsageFlagsNV -> PipelineBindPoint -> Vector IndirectCommandsLayoutTokenNV -> Vector Word32 -> IndirectCommandsLayoutCreateInfoNV
-- | flags is a bitmask of
-- IndirectCommandsLayoutUsageFlagBitsNV specifying usage hints of
-- this layout.
[$sel:flags:IndirectCommandsLayoutCreateInfoNV] :: IndirectCommandsLayoutCreateInfoNV -> IndirectCommandsLayoutUsageFlagsNV
-- | pipelineBindPoint is the PipelineBindPoint that this
-- layout targets.
[$sel:pipelineBindPoint:IndirectCommandsLayoutCreateInfoNV] :: IndirectCommandsLayoutCreateInfoNV -> PipelineBindPoint
-- | pTokens is an array describing each command token in detail.
-- See IndirectCommandsTokenTypeNV and
-- IndirectCommandsLayoutTokenNV below for details.
[$sel:tokens:IndirectCommandsLayoutCreateInfoNV] :: IndirectCommandsLayoutCreateInfoNV -> Vector IndirectCommandsLayoutTokenNV
-- | pStreamStrides is an array defining the byte stride for each
-- input stream.
[$sel:streamStrides:IndirectCommandsLayoutCreateInfoNV] :: IndirectCommandsLayoutCreateInfoNV -> Vector Word32
-- | VkGeneratedCommandsInfoNV - Structure specifying parameters for the
-- generation of commands
--
-- Valid Usage
--
--
-- - The provided pipeline must match the pipeline
-- bound at execution time
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - pipeline must be a valid Pipeline
-- handle
-- - indirectCommandsLayout must be a valid
-- IndirectCommandsLayoutNV handle
-- - pStreams must be a valid pointer to an array of
-- streamCount valid IndirectCommandsStreamNV
-- structures
-- - preprocessBuffer must be a valid Buffer
-- handle
-- - If sequencesCountBuffer is not NULL_HANDLE,
-- sequencesCountBuffer must be a valid Buffer
-- handle
-- - If sequencesIndexBuffer is not NULL_HANDLE,
-- sequencesIndexBuffer must be a valid Buffer
-- handle
-- - streamCount must be greater than 0
-- - Each of indirectCommandsLayout, pipeline,
-- preprocessBuffer, sequencesCountBuffer, and
-- sequencesIndexBuffer that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- See Also
--
-- Buffer, DeviceSize, IndirectCommandsLayoutNV,
-- IndirectCommandsStreamNV, Pipeline,
-- PipelineBindPoint, StructureType,
-- cmdExecuteGeneratedCommandsNV,
-- cmdPreprocessGeneratedCommandsNV
data GeneratedCommandsInfoNV
GeneratedCommandsInfoNV :: PipelineBindPoint -> Pipeline -> IndirectCommandsLayoutNV -> Vector IndirectCommandsStreamNV -> Word32 -> Buffer -> DeviceSize -> DeviceSize -> Buffer -> DeviceSize -> Buffer -> DeviceSize -> GeneratedCommandsInfoNV
-- | pipelineBindPoint is the PipelineBindPoint used for
-- the pipeline.
[$sel:pipelineBindPoint:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> PipelineBindPoint
-- | pipeline is the Pipeline used in the generation and
-- execution process.
[$sel:pipeline:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> Pipeline
-- | indirectCommandsLayout is the IndirectCommandsLayoutNV
-- that provides the command sequence to generate.
[$sel:indirectCommandsLayout:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> IndirectCommandsLayoutNV
-- | pStreams provides an array of IndirectCommandsStreamNV
-- that provide the input data for the tokens used in
-- indirectCommandsLayout.
[$sel:streams:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> Vector IndirectCommandsStreamNV
-- | sequencesCount is the maximum number of sequences to reserve.
-- If sequencesCountBuffer is NULL_HANDLE, this is also
-- the actual number of sequences generated.
[$sel:sequencesCount:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> Word32
-- | preprocessBuffer is the Buffer that is used for
-- preprocessing the input data for execution. If this structure is used
-- with cmdExecuteGeneratedCommandsNV with its
-- isPreprocessed set to TRUE, then the preprocessing
-- step is skipped and data is only read from this buffer.
[$sel:preprocessBuffer:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> Buffer
-- | preprocessOffset is the byte offset into
-- preprocessBuffer where the preprocessed data is stored.
[$sel:preprocessOffset:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> DeviceSize
-- | preprocessSize is the maximum byte size within the
-- preprocessBuffer after the preprocessOffset that is
-- available for preprocessing.
[$sel:preprocessSize:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> DeviceSize
-- | sequencesCountBuffer is a Buffer in which the actual
-- number of sequences is provided as single uint32_t value.
[$sel:sequencesCountBuffer:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> Buffer
-- | sequencesCountOffset is the byte offset into
-- sequencesCountBuffer where the count value is stored.
[$sel:sequencesCountOffset:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> DeviceSize
-- | sequencesIndexBuffer is a Buffer that encodes the used
-- sequence indices as uint32_t array.
[$sel:sequencesIndexBuffer:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> Buffer
-- | sequencesIndexOffset is the byte offset into
-- sequencesIndexBuffer where the index values start.
[$sel:sequencesIndexOffset:GeneratedCommandsInfoNV] :: GeneratedCommandsInfoNV -> DeviceSize
-- | VkGeneratedCommandsMemoryRequirementsInfoNV - Structure specifying
-- parameters for the reservation of preprocess buffer space
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - pipeline must be a valid Pipeline
-- handle
-- - indirectCommandsLayout must be a valid
-- IndirectCommandsLayoutNV handle
-- - Both of indirectCommandsLayout, and pipeline
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- See Also
--
-- IndirectCommandsLayoutNV, Pipeline,
-- PipelineBindPoint, StructureType,
-- getGeneratedCommandsMemoryRequirementsNV
data GeneratedCommandsMemoryRequirementsInfoNV
GeneratedCommandsMemoryRequirementsInfoNV :: PipelineBindPoint -> Pipeline -> IndirectCommandsLayoutNV -> Word32 -> GeneratedCommandsMemoryRequirementsInfoNV
-- | pipelineBindPoint is the PipelineBindPoint of the
-- pipeline that this buffer memory is intended to be used with
-- during the execution.
[$sel:pipelineBindPoint:GeneratedCommandsMemoryRequirementsInfoNV] :: GeneratedCommandsMemoryRequirementsInfoNV -> PipelineBindPoint
-- | pipeline is the Pipeline that this buffer memory is
-- intended to be used with during the execution.
[$sel:pipeline:GeneratedCommandsMemoryRequirementsInfoNV] :: GeneratedCommandsMemoryRequirementsInfoNV -> Pipeline
-- | indirectCommandsLayout is the IndirectCommandsLayoutNV
-- that this buffer memory is intended to be used with.
[$sel:indirectCommandsLayout:GeneratedCommandsMemoryRequirementsInfoNV] :: GeneratedCommandsMemoryRequirementsInfoNV -> IndirectCommandsLayoutNV
-- | maxSequencesCount is the maximum number of sequences that
-- this buffer memory in combination with the other state provided
-- can be used with.
[$sel:maxSequencesCount:GeneratedCommandsMemoryRequirementsInfoNV] :: GeneratedCommandsMemoryRequirementsInfoNV -> Word32
-- | VkIndirectCommandsLayoutUsageFlagBitsNV - Bitmask specifying allowed
-- usage of an indirect commands layout
--
-- See Also
--
-- IndirectCommandsLayoutUsageFlagsNV
newtype IndirectCommandsLayoutUsageFlagBitsNV
IndirectCommandsLayoutUsageFlagBitsNV :: Flags -> IndirectCommandsLayoutUsageFlagBitsNV
-- | INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV
-- specifies that the layout is always used with the manual preprocessing
-- step through calling cmdPreprocessGeneratedCommandsNV and
-- executed by cmdExecuteGeneratedCommandsNV with
-- isPreprocessed set to TRUE.
pattern INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV :: IndirectCommandsLayoutUsageFlagBitsNV
-- | INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV
-- specifies that the input data for the sequences is not implicitly
-- indexed from 0..sequencesUsed but a user provided Buffer
-- encoding the index is provided.
pattern INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV :: IndirectCommandsLayoutUsageFlagBitsNV
-- | INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV
-- specifies that the processing of sequences can happen at an
-- implementation-dependent order, which is not: guaranteed to be
-- coherent using the same input data.
pattern INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV :: IndirectCommandsLayoutUsageFlagBitsNV
type IndirectCommandsLayoutUsageFlagsNV = IndirectCommandsLayoutUsageFlagBitsNV
-- | VkIndirectStateFlagBitsNV - Bitmask specifiying state that can be
-- altered on the device
--
-- See Also
--
-- IndirectStateFlagsNV
newtype IndirectStateFlagBitsNV
IndirectStateFlagBitsNV :: Flags -> IndirectStateFlagBitsNV
-- | INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV allows to toggle the
-- FrontFace rasterization state for subsequent draw operations.
pattern INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV :: IndirectStateFlagBitsNV
type IndirectStateFlagsNV = IndirectStateFlagBitsNV
-- | VkIndirectCommandsTokenTypeNV - Enum specifying token commands
--
-- Description
--
-- '
--
-- TODO: table
--
-- Supported indirect command tokens
--
-- See Also
--
-- IndirectCommandsLayoutTokenNV
newtype IndirectCommandsTokenTypeNV
IndirectCommandsTokenTypeNV :: Int32 -> IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV :: IndirectCommandsTokenTypeNV
pattern INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV :: IndirectCommandsTokenTypeNV
type NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION = 3
pattern NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION :: forall a. Integral a => a
type NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME = "VK_NV_device_generated_commands"
pattern NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkIndirectCommandsLayoutNV - Opaque handle to an indirect commands
-- layout object
--
-- See Also
--
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- createIndirectCommandsLayoutNV,
-- destroyIndirectCommandsLayoutNV
newtype IndirectCommandsLayoutNV
IndirectCommandsLayoutNV :: Word64 -> IndirectCommandsLayoutNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsTokenTypeNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsTokenTypeNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsTokenTypeNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsTokenTypeNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsShaderGroupCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsShaderGroupCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsPipelineShaderGroupsCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsPipelineShaderGroupsCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutTokenNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutTokenNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutTokenNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutTokenNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutTokenNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsTokenTypeNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsTokenTypeNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_device_generated_commands.IndirectStateFlagBitsNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsLayoutUsageFlagBitsNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsMemoryRequirementsInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.GeneratedCommandsInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.IndirectCommandsStreamNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.SetStateFlagsIndirectCommandNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.BindVertexBufferIndirectCommandNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.BindIndexBufferIndirectCommandNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.BindShaderGroupIndirectCommandNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsPipelineShaderGroupsCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsPipelineShaderGroupsCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsPipelineShaderGroupsCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsShaderGroupCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsShaderGroupCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.GraphicsShaderGroupCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_device_generated_commands.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
module Vulkan.Extensions.VK_KHR_ray_tracing
-- | vkDestroyAccelerationStructureKHR - Destroy an acceleration structure
-- object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to
-- accelerationStructure must have completed
-- execution
--
--
--
-- - If AllocationCallbacks were provided when
-- accelerationStructure was created, a compatible set of
-- callbacks must be provided here
-- - If no AllocationCallbacks were provided when
-- accelerationStructure was created, pAllocator
-- must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If accelerationStructure is not NULL_HANDLE,
-- accelerationStructure must be a valid
-- AccelerationStructureKHR handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If accelerationStructure is a valid handle, it
-- must have been created, allocated, or retrieved from
-- device
--
--
-- Host Synchronization
--
--
-- - Host access to accelerationStructure must be
-- externally synchronized
--
--
-- See Also
--
-- AccelerationStructureKHR, AllocationCallbacks,
-- Device
destroyAccelerationStructureKHR :: forall io. MonadIO io => Device -> AccelerationStructureKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetAccelerationStructureMemoryRequirementsKHR - Get acceleration
-- structure memory requirements
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureMemoryRequirementsInfoKHR, Device,
-- MemoryRequirements2
getAccelerationStructureMemoryRequirementsKHR :: forall a io. (Extendss MemoryRequirements2 a, PokeChain a, PeekChain a, MonadIO io) => Device -> AccelerationStructureMemoryRequirementsInfoKHR -> io (MemoryRequirements2 a)
-- | vkBindAccelerationStructureMemoryKHR - Bind acceleration structure
-- memory
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- BindAccelerationStructureMemoryInfoKHR, Device
bindAccelerationStructureMemoryKHR :: forall io. MonadIO io => Device -> ("bindInfos" ::: Vector BindAccelerationStructureMemoryInfoKHR) -> io ()
-- | vkCmdCopyAccelerationStructureKHR - Copy an acceleration structure
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pInfo must be a valid pointer to a valid
-- CopyAccelerationStructureInfoKHR structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, CopyAccelerationStructureInfoKHR
cmdCopyAccelerationStructureKHR :: forall a io. (Extendss CopyAccelerationStructureInfoKHR a, PokeChain a, MonadIO io) => CommandBuffer -> CopyAccelerationStructureInfoKHR a -> io ()
-- | vkCopyAccelerationStructureKHR - Copy an acceleration structure on the
-- host
--
-- Parameters
--
-- This command fulfills the same task as
-- cmdCopyAccelerationStructureKHR but executed by the host.
--
-- Description
--
--
-- - device is the device which owns the acceleration
-- structures.
--
--
--
--
-- If the DeferredOperationInfoKHR structure is included in the
-- pNext chain of the CopyAccelerationStructureInfoKHR
-- structure, the operation of this command is deferred, as
-- defined in the Deferred Host Operations chapter.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CopyAccelerationStructureInfoKHR, Device
copyAccelerationStructureKHR :: forall a io. (Extendss CopyAccelerationStructureInfoKHR a, PokeChain a, MonadIO io) => Device -> CopyAccelerationStructureInfoKHR a -> io Result
-- | vkCmdCopyAccelerationStructureToMemoryKHR - Copy an acceleration
-- structure to device memory
--
-- Parameters
--
-- This command produces the same results as
-- copyAccelerationStructureToMemoryKHR, but writes its result to
-- a device address, and is executed on the device rather than the host.
-- The output may not necessarily be bit-for-bit identical, but it
-- can be equally used by either
-- cmdCopyMemoryToAccelerationStructureKHR or
-- copyMemoryToAccelerationStructureKHR.
--
-- Description
--
--
-- - commandBuffer is the command buffer into which the
-- command will be recorded.
--
--
--
--
-- The defined header structure for the serialized data consists of:
--
--
--
-- The corresponding handles matching the values returned by
-- getAccelerationStructureDeviceAddressKHR or
-- getAccelerationStructureHandleNV are tightly packed in the
-- buffer following the count. The application is expected to store a
-- mapping between those handles and the original application-generated
-- bottom-level acceleration structures to provide when deserializing.
--
-- Valid Usage
--
--
-- - All DeviceOrHostAddressConstKHR referenced by this command
-- must contain valid device addresses for a buffer bound to
-- device memory. If the buffer is non-sparse then it must be
-- bound completely and contiguously to a single VkDeviceMemory
-- object
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, CopyAccelerationStructureToMemoryInfoKHR
cmdCopyAccelerationStructureToMemoryKHR :: forall a io. (Extendss CopyAccelerationStructureToMemoryInfoKHR a, PokeChain a, MonadIO io) => CommandBuffer -> CopyAccelerationStructureToMemoryInfoKHR a -> io ()
-- | vkCopyAccelerationStructureToMemoryKHR - Serialize an acceleration
-- structure on the host
--
-- Parameters
--
-- This command fulfills the same task as
-- cmdCopyAccelerationStructureToMemoryKHR but executed by the
-- host.
--
-- Description
--
-- This command produces the same results as
-- cmdCopyAccelerationStructureToMemoryKHR, but writes its result
-- directly to a host pointer, and is executed on the host rather than
-- the device. The output may not necessarily be bit-for-bit
-- identical, but it can be equally used by either
-- cmdCopyMemoryToAccelerationStructureKHR or
-- copyMemoryToAccelerationStructureKHR.
--
--
--
-- If the DeferredOperationInfoKHR structure is included in the
-- pNext chain of the
-- CopyAccelerationStructureToMemoryInfoKHR structure, the
-- operation of this command is deferred, as defined in the
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#deferred-host-operations
-- chapter.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CopyAccelerationStructureToMemoryInfoKHR, Device
copyAccelerationStructureToMemoryKHR :: forall a io. (Extendss CopyAccelerationStructureToMemoryInfoKHR a, PokeChain a, MonadIO io) => Device -> CopyAccelerationStructureToMemoryInfoKHR a -> io Result
-- | vkCmdCopyMemoryToAccelerationStructureKHR - Copy device memory to an
-- acceleration structure
--
-- Parameters
--
-- This command can accept acceleration structures produced by either
-- cmdCopyAccelerationStructureToMemoryKHR or
-- copyAccelerationStructureToMemoryKHR.
--
-- Description
--
--
-- - commandBuffer is the command buffer into which the
-- command will be recorded.
--
--
--
--
-- The structure provided as input to deserialize is as described in
-- cmdCopyAccelerationStructureToMemoryKHR, with any acceleration
-- structure handles filled in with the newly-queried handles to bottom
-- level acceleration structures created before deserialization. These do
-- not need to be built at deserialize time, but must be created.
--
-- Valid Usage
--
--
-- - All DeviceOrHostAddressKHR referenced by this command
-- must contain valid device addresses for a buffer bound to
-- device memory. If the buffer is non-sparse then it must be
-- bound completely and contiguously to a single VkDeviceMemory
-- object
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, CopyMemoryToAccelerationStructureInfoKHR
cmdCopyMemoryToAccelerationStructureKHR :: forall a io. (Extendss CopyMemoryToAccelerationStructureInfoKHR a, PokeChain a, MonadIO io) => CommandBuffer -> CopyMemoryToAccelerationStructureInfoKHR a -> io ()
-- | vkCopyMemoryToAccelerationStructureKHR - Deserialize an acceleration
-- structure on the host
--
-- Parameters
--
-- This command fulfills the same task as
-- cmdCopyMemoryToAccelerationStructureKHR but is executed by the
-- host.
--
-- Description
--
-- This command can accept acceleration structures produced by either
-- cmdCopyAccelerationStructureToMemoryKHR or
-- copyAccelerationStructureToMemoryKHR.
--
--
--
-- If the DeferredOperationInfoKHR structure is included in the
-- pNext chain of the
-- CopyMemoryToAccelerationStructureInfoKHR structure, the
-- operation of this command is deferred, as defined in the
-- Deferred Host Operations chapter.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CopyMemoryToAccelerationStructureInfoKHR, Device
copyMemoryToAccelerationStructureKHR :: forall a io. (Extendss CopyMemoryToAccelerationStructureInfoKHR a, PokeChain a, MonadIO io) => Device -> CopyMemoryToAccelerationStructureInfoKHR a -> io Result
-- | vkCmdWriteAccelerationStructuresPropertiesKHR - Write acceleration
-- structure result parameters to query results.
--
-- Valid Usage
--
--
-- - queryPool must have been created with a
-- queryType matching queryType
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pAccelerationStructures must be a valid pointer to
-- an array of accelerationStructureCount valid
-- AccelerationStructureKHR handles
-- - queryType must be a valid QueryType
-- value
-- - queryPool must be a valid QueryPool
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - accelerationStructureCount must be greater than
-- 0
-- - Each of commandBuffer, queryPool, and the
-- elements of pAccelerationStructures must have been
-- created, allocated, or retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- AccelerationStructureKHR, CommandBuffer,
-- QueryPool, QueryType
cmdWriteAccelerationStructuresPropertiesKHR :: forall io. MonadIO io => CommandBuffer -> ("accelerationStructures" ::: Vector AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> io ()
-- | vkWriteAccelerationStructuresPropertiesKHR - Query acceleration
-- structure meta-data on the host
--
-- Parameters
--
-- This command fulfills the same task as
-- cmdWriteAccelerationStructuresPropertiesKHR but executed by the
-- host.
--
-- Description
--
--
-- - device is the device which owns the acceleration
-- structures in pAccelerationStructures.
--
--
--
-- - accelerationStructureCount is the count of acceleration
-- structures for which to query the property.
-- - pAccelerationStructures points to an array of existing
-- previously built acceleration structures.
-- - queryType is a QueryType value specifying the
-- property to be queried.
-- - dataSize is the size in bytes of the buffer pointed to by
-- pData.
-- - pData is a pointer to a user-allocated buffer where the
-- results will be written.
-- - stride is the stride in bytes between results for
-- individual queries within pData.
--
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pAccelerationStructures must be a valid pointer to
-- an array of accelerationStructureCount valid
-- AccelerationStructureKHR handles
-- - queryType must be a valid QueryType
-- value
-- - pData must be a valid pointer to an array of
-- dataSize bytes
-- - accelerationStructureCount must be greater than
-- 0
-- - dataSize must be greater than 0
-- - Each element of pAccelerationStructures must have
-- been created, allocated, or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AccelerationStructureKHR, Device, QueryType
writeAccelerationStructuresPropertiesKHR :: forall io. MonadIO io => Device -> ("accelerationStructures" ::: Vector AccelerationStructureKHR) -> QueryType -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> ("stride" ::: Word64) -> io ()
-- | vkCmdTraceRaysKHR - Initialize a ray tracing dispatch
--
-- Description
--
-- When the command is executed, a ray generation group of width
-- × height × depth rays is assembled.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - Any shader group handle referenced by this call must have
-- been queried from the currently bound ray tracing shader pipeline
-- - This command must not cause a shader call instruction to be
-- executed from a shader invocation with a recursion depth
-- greater than the value of maxRecursionDepth used to create
-- the bound ray tracing pipeline
-- - If pRayGenShaderBindingTable->buffer is non-sparse
-- then it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pRayGenShaderBindingTable
-- must be less than the size of the
-- pRayGenShaderBindingTable->buffer
-- - pRayGenShaderBindingTable->offset must be a
-- multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pRayGenShaderBindingTable->offset +
-- pRayGenShaderBindingTable->size must be less than
-- or equal to the size of
-- pRayGenShaderBindingTable->buffer
-- - The size member of pRayGenShaderBindingTable
-- must be equal to its stride member
-- - If pMissShaderBindingTable->buffer is non-sparse then
-- it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pMissShaderBindingTable
-- must be less than the size of
-- pMissShaderBindingTable->buffer
-- - The offset member of pMissShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pMissShaderBindingTable->offset +
-- pMissShaderBindingTable->size must be less than or
-- equal to the size of pMissShaderBindingTable->buffer
-- - The stride member of pMissShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleSize
-- - The stride member of pMissShaderBindingTable
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxShaderGroupStride
-- - If pHitShaderBindingTable->buffer is non-sparse then
-- it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pHitShaderBindingTable
-- must be less than the size of
-- pHitShaderBindingTable->buffer
-- - The offset member of pHitShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pHitShaderBindingTable->offset +
-- pHitShaderBindingTable->size must be less than or
-- equal to the size of pHitShaderBindingTable->buffer
-- - The stride member of pHitShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleSize
-- - The stride member of pHitShaderBindingTable
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxShaderGroupStride
-- - If pCallableShaderBindingTable->buffer is non-sparse
-- then it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pCallableShaderBindingTable
-- must be less than the size of
-- pCallableShaderBindingTable->buffer
-- - The offset member of pCallableShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pCallableShaderBindingTable->offset +
-- pCallableShaderBindingTable->size must be less than
-- or equal to the size of
-- pCallableShaderBindingTable->buffer
-- - The stride member of pCallableShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleSize
-- - The stride member of pCallableShaderBindingTable
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxShaderGroupStride
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
-- the buffer member of pHitShaderBindingTable
-- must not be NULL_HANDLE
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
-- the buffer member of pHitShaderBindingTable
-- must not be NULL_HANDLE
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,
-- the buffer member of pHitShaderBindingTable
-- must not be NULL_HANDLE
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR, the
-- shader group handle identified by pMissShaderBindingTable
-- must contain a valid miss shader
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
-- entries in pHitShaderBindingTable accessed as a result of
-- this command in order to execute an any hit shader must not be
-- set to zero
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
-- entries in pHitShaderBindingTable accessed as a result of
-- this command in order to execute a closest hit shader must not
-- be set to zero
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,
-- entries in pHitShaderBindingTable accessed as a result of
-- this command in order to execute an intersection shader must
-- not be set to zero
-- - If commandBuffer is a protected command buffer, any
-- resource written to by the Pipeline object bound to the
-- pipeline bind point used by this command must not be an
-- unprotected resource
-- - If commandBuffer is a protected command buffer, pipeline
-- stages other than the framebuffer-space and compute stages in the
-- Pipeline object bound to the pipeline bind point must
-- not write to any resource
-- - width must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
-- - height must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
-- - depth must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pRaygenShaderBindingTable must be a valid pointer
-- to a valid StridedBufferRegionKHR structure
-- - pMissShaderBindingTable must be a valid pointer to
-- a valid StridedBufferRegionKHR structure
-- - pHitShaderBindingTable must be a valid pointer to
-- a valid StridedBufferRegionKHR structure
-- - pCallableShaderBindingTable must be a valid
-- pointer to a valid StridedBufferRegionKHR structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, StridedBufferRegionKHR
cmdTraceRaysKHR :: forall io. MonadIO io => CommandBuffer -> ("raygenShaderBindingTable" ::: StridedBufferRegionKHR) -> ("missShaderBindingTable" ::: StridedBufferRegionKHR) -> ("hitShaderBindingTable" ::: StridedBufferRegionKHR) -> ("callableShaderBindingTable" ::: StridedBufferRegionKHR) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> io ()
-- | vkGetRayTracingShaderGroupHandlesKHR - Query ray tracing pipeline
-- shader group handles
--
-- Valid Usage
--
--
-- - firstGroup must be less than the number of shader
-- groups in pipeline
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pipeline must be a valid Pipeline
-- handle
-- - pData must be a valid pointer to an array of
-- dataSize bytes
-- - dataSize must be greater than 0
-- - pipeline must have been created, allocated, or
-- retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Pipeline
getRayTracingShaderGroupHandlesKHR :: forall io. MonadIO io => Device -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> io ()
-- | vkGetRayTracingCaptureReplayShaderGroupHandlesKHR - Query ray tracing
-- capture replay pipeline shader group handles
--
-- Valid Usage
--
--
-- - firstGroup must be less than the number of shader
-- groups in pipeline
--
--
--
-- - The sum of firstGroup and groupCount must
-- be less than or equal to the number of shader groups in
-- pipeline
-- - dataSize must be at least
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleCaptureReplaySize
-- × groupCount
--
-- - PhysicalDeviceRayTracingFeaturesKHR::rayTracingShaderGroupHandleCaptureReplay
-- must be enabled to call this function
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pipeline must be a valid Pipeline
-- handle
-- - pData must be a valid pointer to an array of
-- dataSize bytes
-- - dataSize must be greater than 0
-- - pipeline must have been created, allocated, or
-- retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Pipeline
getRayTracingCaptureReplayShaderGroupHandlesKHR :: forall io. MonadIO io => Device -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> io ()
-- | vkCreateRayTracingPipelinesKHR - Creates a new ray tracing pipeline
-- object
--
-- Description
--
-- The ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS error is returned if
-- the implementation is unable to re-use the shader group handles
-- provided in
-- RayTracingShaderGroupCreateInfoKHR::pShaderGroupCaptureReplayHandle
-- when
-- PhysicalDeviceRayTracingFeaturesKHR::rayTracingShaderGroupHandleCaptureReplay
-- is enabled.
--
-- Valid Usage
--
--
-- - If the flags member of any element of
-- pCreateInfos contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and the
-- basePipelineIndex member of that same element is not
-- -1, basePipelineIndex must be less than the
-- index into pCreateInfos that corresponds to that element
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipelineCache is not NULL_HANDLE,
-- pipelineCache must be a valid PipelineCache
-- handle
-- - pCreateInfos must be a valid pointer to an array
-- of createInfoCount valid
-- RayTracingPipelineCreateInfoKHR structures
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pPipelines must be a valid pointer to an array of
-- createInfoCount Pipeline handles
-- - createInfoCount must be greater than
-- 0
-- - If pipelineCache is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Pipeline,
-- PipelineCache, RayTracingPipelineCreateInfoKHR
createRayTracingPipelinesKHR :: forall io. MonadIO io => Device -> PipelineCache -> ("createInfos" ::: Vector (SomeStruct RayTracingPipelineCreateInfoKHR)) -> ("allocator" ::: Maybe AllocationCallbacks) -> io (Result, "pipelines" ::: Vector Pipeline)
-- | vkCmdTraceRaysIndirectKHR - Initialize an indirect ray tracing
-- dispatch
--
-- Description
--
-- cmdTraceRaysIndirectKHR behaves similarly to
-- cmdTraceRaysKHR except that the ray trace query dimensions are
-- read by the device from buffer during execution. The
-- parameters of trace ray are encoded in the
-- TraceRaysIndirectCommandKHR structure located at
-- offset bytes in buffer.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - Any shader group handle referenced by this call must have
-- been queried from the currently bound ray tracing shader pipeline
-- - This command must not cause a shader call instruction to be
-- executed from a shader invocation with a recursion depth
-- greater than the value of maxRecursionDepth used to create
-- the bound ray tracing pipeline
-- - If pRayGenShaderBindingTable->buffer is non-sparse
-- then it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pRayGenShaderBindingTable
-- must be less than the size of the
-- pRayGenShaderBindingTable->buffer
-- - pRayGenShaderBindingTable->offset must be a
-- multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pRayGenShaderBindingTable->offset +
-- pRayGenShaderBindingTable->size must be less than
-- or equal to the size of
-- pRayGenShaderBindingTable->buffer
-- - The size member of pRayGenShaderBindingTable
-- must be equal to its stride member
-- - If pMissShaderBindingTable->buffer is non-sparse then
-- it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pMissShaderBindingTable
-- must be less than the size of
-- pMissShaderBindingTable->buffer
-- - The offset member of pMissShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pMissShaderBindingTable->offset +
-- pMissShaderBindingTable->size must be less than or
-- equal to the size of pMissShaderBindingTable->buffer
-- - The stride member of pMissShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleSize
-- - The stride member of pMissShaderBindingTable
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxShaderGroupStride
-- - If pHitShaderBindingTable->buffer is non-sparse then
-- it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pHitShaderBindingTable
-- must be less than the size of
-- pHitShaderBindingTable->buffer
-- - The offset member of pHitShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pHitShaderBindingTable->offset +
-- pHitShaderBindingTable->size must be less than or
-- equal to the size of pHitShaderBindingTable->buffer
-- - The stride member of pHitShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleSize
-- - The stride member of pHitShaderBindingTable
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxShaderGroupStride
-- - If pCallableShaderBindingTable->buffer is non-sparse
-- then it must be bound completely and contiguously to a single
-- DeviceMemory object
-- - The offset member of pCallableShaderBindingTable
-- must be less than the size of
-- pCallableShaderBindingTable->buffer
-- - The offset member of pCallableShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupBaseAlignment
-- - pCallableShaderBindingTable->offset +
-- pCallableShaderBindingTable->size must be less than
-- or equal to the size of
-- pCallableShaderBindingTable->buffer
-- - The stride member of pCallableShaderBindingTable
-- must be a multiple of
-- PhysicalDeviceRayTracingPropertiesKHR::shaderGroupHandleSize
-- - The stride member of pCallableShaderBindingTable
-- must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxShaderGroupStride
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
-- the buffer member of pHitShaderBindingTable
-- must not be NULL_HANDLE
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
-- the buffer member of pHitShaderBindingTable
-- must not be NULL_HANDLE
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,
-- the buffer member of pHitShaderBindingTable
-- must not be NULL_HANDLE
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR, the
-- shader group handle identified by pMissShaderBindingTable
-- must contain a valid miss shader
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
-- entries in pHitShaderBindingTable accessed as a result of
-- this command in order to execute an any hit shader must not be
-- set to zero
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
-- entries in pHitShaderBindingTable accessed as a result of
-- this command in order to execute a closest hit shader must not
-- be set to zero
-- - If the currently bound ray tracing pipeline was created with
-- flags that included
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,
-- entries in pHitShaderBindingTable accessed as a result of
-- this command in order to execute an intersection shader must
-- not be set to zero
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - (offset +
-- sizeof(TraceRaysIndirectCommandKHR)) must be
-- less than or equal to the size of buffer
-- - the ::rayTracingIndirectTraceRays feature must be
-- enabled
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pRaygenShaderBindingTable must be a valid pointer
-- to a valid StridedBufferRegionKHR structure
-- - pMissShaderBindingTable must be a valid pointer to
-- a valid StridedBufferRegionKHR structure
-- - pHitShaderBindingTable must be a valid pointer to
-- a valid StridedBufferRegionKHR structure
-- - pCallableShaderBindingTable must be a valid
-- pointer to a valid StridedBufferRegionKHR structure
-- - buffer must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of buffer, and commandBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize,
-- StridedBufferRegionKHR
cmdTraceRaysIndirectKHR :: forall io. MonadIO io => CommandBuffer -> ("raygenShaderBindingTable" ::: StridedBufferRegionKHR) -> ("missShaderBindingTable" ::: StridedBufferRegionKHR) -> ("hitShaderBindingTable" ::: StridedBufferRegionKHR) -> ("callableShaderBindingTable" ::: StridedBufferRegionKHR) -> Buffer -> ("offset" ::: DeviceSize) -> io ()
-- | vkGetDeviceAccelerationStructureCompatibilityKHR - Check if a
-- serialized acceleration structure is compatible with the current
-- device
--
-- Description
--
-- This possible return values for
-- getDeviceAccelerationStructureCompatibilityKHR are:
--
--
-- - SUCCESS is returned if an acceleration structure serialized
-- with version as the version information is compatible with
-- device.
-- - ERROR_INCOMPATIBLE_VERSION_KHR is returned if an
-- acceleration structure serialized with version as the version
-- information is not compatible with device.
--
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AccelerationStructureVersionKHR, Device
getDeviceAccelerationStructureCompatibilityKHR :: forall io. MonadIO io => Device -> AccelerationStructureVersionKHR -> io ()
-- | vkCreateAccelerationStructureKHR - Create a new acceleration structure
-- object
--
-- Description
--
-- Similar to other objects in Vulkan, the acceleration structure
-- creation merely creates an object with a specific “shape”. The type
-- and quantity of geometry that can be built into an acceleration
-- structure is determined by the parameters of
-- AccelerationStructureCreateInfoKHR.
--
-- Populating the data in the object after allocating and binding memory
-- is done with commands such as cmdBuildAccelerationStructureKHR,
-- buildAccelerationStructureKHR,
-- cmdCopyAccelerationStructureKHR, and
-- copyAccelerationStructureKHR.
--
-- The input buffers passed to acceleration structure build commands will
-- be referenced by the implementation for the duration of the command.
-- After the command completes, the acceleration structure may
-- hold a reference to any acceleration structure specified by an active
-- instance contained therein. Apart from this referencing, acceleration
-- structures must be fully self-contained. The application
-- may re-use or free any memory which was used by the command as
-- an input or as scratch without affecting the results of ray traversal.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureKHR, AllocationCallbacks,
-- Device
createAccelerationStructureKHR :: forall io. MonadIO io => Device -> AccelerationStructureCreateInfoKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io AccelerationStructureKHR
-- | A convenience wrapper to make a compatible pair of calls to
-- createAccelerationStructureKHR and
-- destroyAccelerationStructureKHR
--
-- To ensure that destroyAccelerationStructureKHR is always
-- called: pass bracket (or the allocate function from your
-- favourite resource management library) as the first argument. To just
-- extract the pair pass (,) as the first argument.
withAccelerationStructureKHR :: forall io r. MonadIO io => Device -> AccelerationStructureCreateInfoKHR -> Maybe AllocationCallbacks -> (io AccelerationStructureKHR -> (AccelerationStructureKHR -> io ()) -> r) -> r
-- | vkCmdBuildAccelerationStructureKHR - Build an acceleration structure
--
-- Description
--
-- The cmdBuildAccelerationStructureKHR command provides the
-- ability to initiate multiple acceleration structures builds, however
-- there is no ordering or synchronization implied between any of the
-- individual acceleration structure builds.
--
-- Note
--
-- This means that an application cannot build a top-level
-- acceleration structure in the same
-- cmdBuildAccelerationStructureKHR call as the associated
-- bottom-level or instance acceleration structures are being built.
-- There also cannot be any memory aliasing between any
-- acceleration structure memories or scratch memories being used by any
-- of the builds.
--
-- Valid Usage
--
--
--
--
-- - Each pInfos[i].srcAccelerationStructure
-- must not refer to the same acceleration structure as any
-- pInfos[i].dstAccelerationStructure that is provided
-- to the same build command unless it is identical for an update
-- - For each pInfos[i], dstAccelerationStructure
-- must have been created with compatible
-- AccelerationStructureCreateInfoKHR where
-- AccelerationStructureCreateInfoKHR::type and
-- AccelerationStructureCreateInfoKHR::flags are
-- identical to
-- AccelerationStructureBuildGeometryInfoKHR::type and
-- AccelerationStructureBuildGeometryInfoKHR::flags
-- respectively,
-- AccelerationStructureBuildGeometryInfoKHR::geometryCount
-- for dstAccelerationStructure are greater than or equal to the
-- build size, and each geometry in
-- AccelerationStructureBuildGeometryInfoKHR::ppGeometries
-- for dstAccelerationStructure has greater than or equal to the
-- number of vertices, indices, and AABBs,
-- AccelerationStructureGeometryTrianglesDataKHR::transformData
-- is both 0 or both non-zero, and all other parameters are the same
-- - For each pInfos[i], if update is TRUE,
-- then objects that were previously active for that acceleration
-- structure must not be made inactive as per ???
-- - For each pInfos[i], if update is TRUE,
-- then objects that were previously inactive for that acceleration
-- structure must not be made active as per ???
-- - Any acceleration structure instance in any top level build in this
-- command must not reference any bottom level acceleration
-- structure built by this command
-- - There must not be any memory aliasing between the
-- scratch memories that are provided in all the
-- pInfos[i].scratchData memories for the acceleration
-- structure builds
-- - There must not be any memory aliasing between memory
-- bound to any top level, bottom level, or instance acceleration
-- structure accessed by this command
-- - If update is FALSE, all addresses between
-- pInfos[i].scratchData and
-- pInfos[i].scratchData + N
-- - 1 must be in the buffer device address range of the same
-- buffer, where N is given by the size member of the
-- MemoryRequirements structure returned from a call to
-- getAccelerationStructureMemoryRequirementsKHR with
-- AccelerationStructureMemoryRequirementsInfoKHR::accelerationStructure
-- set to pInfos[i].dstAccelerationStructure and
-- AccelerationStructureMemoryRequirementsInfoKHR::type
-- set to
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR
-- - If update is TRUE, all addresses between
-- pInfos[i].scratchData and
-- pInfos[i].scratchData + N
-- - 1 must be in the buffer device address range of the same
-- buffer, where N is given by the size member of the
-- MemoryRequirements structure returned from a call to
-- getAccelerationStructureMemoryRequirementsKHR with
-- AccelerationStructureMemoryRequirementsInfoKHR::accelerationStructure
-- set to pInfos[i].dstAccelerationStructure and
-- AccelerationStructureMemoryRequirementsInfoKHR::type
-- set to
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR
-- - The buffer from which the buffer device address
-- pInfos[i].scratchData is queried must have
-- been created with BUFFER_USAGE_RAY_TRACING_BIT_KHR usage
-- flag
-- - All DeviceOrHostAddressKHR or
-- DeviceOrHostAddressConstKHR referenced by this command
-- must contain valid device addresses for a buffer bound to
-- device memory. If the buffer is non-sparse then it must be
-- bound completely and contiguously to a single VkDeviceMemory
-- object
-- - All AccelerationStructureKHR objects referenced by this
-- command must be bound to device memory
-- - The DeferredOperationInfoKHR structure must not be
-- included in the pNext chain of any of the provided
-- AccelerationStructureBuildGeometryInfoKHR structures
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureBuildOffsetInfoKHR, CommandBuffer
cmdBuildAccelerationStructureKHR :: forall io. MonadIO io => CommandBuffer -> ("infos" ::: Vector (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("offsetInfos" ::: Vector AccelerationStructureBuildOffsetInfoKHR) -> io ()
-- | vkCmdBuildAccelerationStructureIndirectKHR - Build an acceleration
-- structure with some parameters provided on the device
--
-- Valid Usage
--
--
-- - All DeviceOrHostAddressKHR or
-- DeviceOrHostAddressConstKHR referenced by this command
-- must contain valid device addresses for a buffer bound to
-- device memory. If the buffer is non-sparse then it must be
-- bound completely and contiguously to a single VkDeviceMemory
-- object
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pInfo must be a valid pointer to a valid
-- AccelerationStructureBuildGeometryInfoKHR structure
-- - indirectBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of commandBuffer, and indirectBuffer
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR, Buffer,
-- CommandBuffer, DeviceSize
cmdBuildAccelerationStructureIndirectKHR :: forall a io. (Extendss AccelerationStructureBuildGeometryInfoKHR a, PokeChain a, MonadIO io) => CommandBuffer -> AccelerationStructureBuildGeometryInfoKHR a -> ("indirectBuffer" ::: Buffer) -> ("indirectOffset" ::: DeviceSize) -> ("indirectStride" ::: Word32) -> io ()
-- | vkBuildAccelerationStructureKHR - Build an acceleration structure on
-- the host
--
-- Parameters
--
-- This command fulfills the same task as
-- cmdBuildAccelerationStructureKHR but executed by the host.
--
-- Description
--
--
-- - device is the Device for which the acceleration
-- structures are being built.
--
--
--
-- - infoCount is the number of acceleration structures to
-- build. It specifies the number of the pInfos structures and
-- ppOffsetInfos pointers that must be provided.
-- - pInfos is a pointer to an array of infoCount
-- AccelerationStructureBuildGeometryInfoKHR structures defining
-- the geometry used to build each acceleration structure.
-- - ppOffsetInfos is an array of infoCount pointers
-- to arrays of AccelerationStructureBuildOffsetInfoKHR
-- structures. Each ppOffsetInfos[i] is an array of
-- pInfos[i].geometryCount
-- AccelerationStructureBuildOffsetInfoKHR structures defining
-- dynamic offsets to the addresses where geometry data is stored, as
-- defined by pInfos[i].
--
--
-- The buildAccelerationStructureKHR command provides the ability
-- to initiate multiple acceleration structures builds, however there is
-- no ordering or synchronization implied between any of the individual
-- acceleration structure builds.
--
-- Note
--
-- This means that an application cannot build a top-level
-- acceleration structure in the same
-- buildAccelerationStructureKHR call as the associated
-- bottom-level or instance acceleration structures are being built.
-- There also cannot be any memory aliasing between any
-- acceleration structure memories or scratch memories being used by any
-- of the builds.
--
-- If the DeferredOperationInfoKHR structure is included in the
-- pNext chain of any
-- AccelerationStructureBuildGeometryInfoKHR structure, the
-- operation of this command is deferred, as defined in the
-- Deferred Host Operations chapter.
--
-- Valid Usage
--
--
--
--
-- - Each pInfos[i].srcAccelerationStructure
-- must not refer to the same acceleration structure as any
-- pInfos[i].dstAccelerationStructure that is provided
-- to the same build command unless it is identical for an update
-- - For each pInfos[i], dstAccelerationStructure
-- must have been created with compatible
-- AccelerationStructureCreateInfoKHR where
-- AccelerationStructureCreateInfoKHR::type and
-- AccelerationStructureCreateInfoKHR::flags are
-- identical to
-- AccelerationStructureBuildGeometryInfoKHR::type and
-- AccelerationStructureBuildGeometryInfoKHR::flags
-- respectively,
-- AccelerationStructureBuildGeometryInfoKHR::geometryCount
-- for dstAccelerationStructure are greater than or equal to the
-- build size, and each geometry in
-- AccelerationStructureBuildGeometryInfoKHR::ppGeometries
-- for dstAccelerationStructure has greater than or equal to the
-- number of vertices, indices, and AABBs,
-- AccelerationStructureGeometryTrianglesDataKHR::transformData
-- is both 0 or both non-zero, and all other parameters are the same
-- - For each pInfos[i], if update is TRUE,
-- then objects that were previously active for that acceleration
-- structure must not be made inactive as per ???
-- - For each pInfos[i], if update is TRUE,
-- then objects that were previously inactive for that acceleration
-- structure must not be made active as per ???
-- - Any acceleration structure instance in any top level build in this
-- command must not reference any bottom level acceleration
-- structure built by this command
-- - There must not be any memory aliasing between the
-- scratch memories that are provided in all the
-- pInfos[i].scratchData memories for the acceleration
-- structure builds
-- - There must not be any memory aliasing between memory
-- bound to any top level, bottom level, or instance acceleration
-- structure accessed by this command
-- - All DeviceOrHostAddressKHR or
-- DeviceOrHostAddressConstKHR referenced by this command
-- must contain valid host addresses
-- - All AccelerationStructureKHR objects referenced by this
-- command must be bound to host-visible memory
-- - The ::rayTracingHostAccelerationStructureCommands feature
-- must be enabled
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureBuildOffsetInfoKHR, Device
buildAccelerationStructureKHR :: forall io. MonadIO io => Device -> ("infos" ::: Vector (SomeStruct AccelerationStructureBuildGeometryInfoKHR)) -> ("offsetInfos" ::: Vector AccelerationStructureBuildOffsetInfoKHR) -> io Result
-- | vkGetAccelerationStructureDeviceAddressKHR - Query an address of a
-- acceleration structure
--
-- Description
--
-- The 64-bit return value is an address of the acceleration structure,
-- which can be used for device and shader operations that involve
-- acceleration structures, such as ray traversal and acceleration
-- structure building.
--
-- If the acceleration structure was created with a non-zero value of
-- AccelerationStructureCreateInfoKHR::deviceAddress the
-- return value will be the same address.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- See Also
--
-- AccelerationStructureDeviceAddressInfoKHR, Device
getAccelerationStructureDeviceAddressKHR :: forall io. MonadIO io => Device -> AccelerationStructureDeviceAddressInfoKHR -> io DeviceAddress
-- | VkRayTracingShaderGroupCreateInfoKHR - Structure specifying shaders in
-- a shader group
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- RayTracingPipelineCreateInfoKHR,
-- RayTracingShaderGroupTypeKHR, StructureType
data RayTracingShaderGroupCreateInfoKHR
RayTracingShaderGroupCreateInfoKHR :: RayTracingShaderGroupTypeKHR -> Word32 -> Word32 -> Word32 -> Word32 -> Ptr () -> RayTracingShaderGroupCreateInfoKHR
-- | type is the type of hit group specified in this structure.
[$sel:type':RayTracingShaderGroupCreateInfoKHR] :: RayTracingShaderGroupCreateInfoKHR -> RayTracingShaderGroupTypeKHR
-- | generalShader is the index of the ray generation, miss, or
-- callable shader from
-- RayTracingPipelineCreateInfoKHR::pStages in the group
-- if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR, and
-- SHADER_UNUSED_KHR otherwise.
[$sel:generalShader:RayTracingShaderGroupCreateInfoKHR] :: RayTracingShaderGroupCreateInfoKHR -> Word32
-- | closestHitShader is the optional index of the closest hit
-- shader from RayTracingPipelineCreateInfoKHR::pStages
-- in the group if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR or
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR, and
-- SHADER_UNUSED_KHR otherwise.
[$sel:closestHitShader:RayTracingShaderGroupCreateInfoKHR] :: RayTracingShaderGroupCreateInfoKHR -> Word32
-- | anyHitShader is the optional index of the any-hit shader from
-- RayTracingPipelineCreateInfoKHR::pStages in the group
-- if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR or
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR, and
-- SHADER_UNUSED_KHR otherwise.
[$sel:anyHitShader:RayTracingShaderGroupCreateInfoKHR] :: RayTracingShaderGroupCreateInfoKHR -> Word32
-- | intersectionShader is the index of the intersection shader
-- from RayTracingPipelineCreateInfoKHR::pStages in the
-- group if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR, and
-- SHADER_UNUSED_KHR otherwise.
[$sel:intersectionShader:RayTracingShaderGroupCreateInfoKHR] :: RayTracingShaderGroupCreateInfoKHR -> Word32
-- | pShaderGroupCaptureReplayHandle is an optional pointer to
-- replay information for this shader group. Ignored if
-- PhysicalDeviceRayTracingFeaturesKHR::rayTracingShaderGroupHandleCaptureReplay
-- is FALSE.
[$sel:shaderGroupCaptureReplayHandle:RayTracingShaderGroupCreateInfoKHR] :: RayTracingShaderGroupCreateInfoKHR -> Ptr ()
-- | VkRayTracingPipelineCreateInfoKHR - Structure specifying parameters of
-- a newly created ray tracing pipeline
--
-- Description
--
-- The parameters basePipelineHandle and
-- basePipelineIndex are described in more detail in Pipeline
-- Derivatives.
--
-- When PIPELINE_CREATE_LIBRARY_BIT_KHR is specified, this
-- pipeline defines a pipeline library which cannot be
-- bound as a ray tracing pipeline directly. Instead, pipeline libraries
-- define common shaders and shader groups which can be included
-- in future pipeline creation.
--
-- If pipeline libraries are included in libraries, shaders
-- defined in those libraries are treated as if they were defined as
-- additional entries in pStages, appended in the order they
-- appear in the pLibraries array and in the pStages
-- array when those libraries were defined.
--
-- When referencing shader groups in order to obtain a shader group
-- handle, groups defined in those libraries are treated as if they were
-- defined as additional entries in pGroups, appended in the
-- order they appear in the pLibraries array and in the
-- pGroups array when those libraries were defined. The shaders
-- these groups reference are set when the pipeline library is created,
-- referencing those specified in the pipeline library, not in the
-- pipeline that includes it.
--
-- If the DeferredOperationInfoKHR structure is included in the
-- pNext chain of RayTracingPipelineCreateInfoKHR, the
-- operation of this pipeline creation is deferred, as defined in
-- the Deferred Host Operations chapter.
--
-- Valid Usage
--
--
--
--
-- - If flags contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and
-- basePipelineHandle is NULL_HANDLE,
-- basePipelineIndex must be a valid index into the
-- calling command’s pCreateInfos parameter
-- - If flags contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and
-- basePipelineIndex is not -1,
-- basePipelineHandle must be NULL_HANDLE
-- - If flags contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and
-- basePipelineHandle is not NULL_HANDLE,
-- basePipelineIndex must be -1
-- - The stage member of at least one element of
-- pStages must be
-- SHADER_STAGE_RAYGEN_BIT_KHR
-- - The shader code for the entry points identified by
-- pStages, and the rest of the state identified by this
-- structure must adhere to the pipeline linking rules described
-- in the Shader Interfaces chapter
-- - layout must be consistent with all shaders
-- specified in pStages
-- - The number of resources in layout accessible to each
-- shader stage that is used by the pipeline must be less than or
-- equal to
-- PhysicalDeviceLimits::maxPerStageResources
-- - flags must not include
-- PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV
-- - If the pipelineCreationCacheControl feature is not enabled,
-- flags must not include
-- PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT or
-- PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT
-- - maxRecursionDepth must be less than or equal to
-- PhysicalDeviceRayTracingPropertiesKHR::maxRecursionDepth
-- - If flags includes PIPELINE_CREATE_LIBRARY_BIT_KHR,
-- pLibraryInterface must not be NULL
-- - If the libraryCount member of libraries is
-- greater than 0, pLibraryInterface must not be
-- NULL
-- - Each element of the pLibraries member of
-- libraries must have been created with the value of
-- maxRecursionDepth equal to that in this pipeline
-- - Each element of the pLibraries member of
-- libraries must have been created with a
-- layout that is compatible with the layout in this
-- pipeline
-- - Each element of the pLibraries member of
-- libraries must have been created with values of the
-- maxPayloadSize, maxAttributeSize, and
-- maxCallableSize members of pLibraryInterface equal
-- to those in this pipeline
-- - If flags includes
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,
-- for any element of pGroups with a type of
-- RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR or
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR, the
-- anyHitShader of that element must not be
-- SHADER_UNUSED_KHR
-- - If flags includes
-- PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,
-- for any element of pGroups with a type of
-- RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR or
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR, the
-- closestHitShader of that element must not be
-- SHADER_UNUSED_KHR
-- - If the rayTracingPrimitiveCulling feature is not enabled,
-- flags must not include
-- PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR
-- - If the rayTracingPrimitiveCulling feature is not enabled,
-- flags must not include
-- PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR
-- - If libraries.libraryCount is zero, then
-- stageCount must not be zero
-- - If libraries.libraryCount is zero, then
-- groupCount must not be zero
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Pipeline, PipelineCreateFlags, PipelineLayout,
-- PipelineLibraryCreateInfoKHR,
-- PipelineShaderStageCreateInfo,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR, StructureType,
-- createRayTracingPipelinesKHR
data RayTracingPipelineCreateInfoKHR (es :: [Type])
RayTracingPipelineCreateInfoKHR :: Chain es -> PipelineCreateFlags -> Vector (SomeStruct PipelineShaderStageCreateInfo) -> Vector RayTracingShaderGroupCreateInfoKHR -> Word32 -> PipelineLibraryCreateInfoKHR -> Maybe RayTracingPipelineInterfaceCreateInfoKHR -> PipelineLayout -> Pipeline -> Int32 -> RayTracingPipelineCreateInfoKHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Chain es
-- | flags is a bitmask of PipelineCreateFlagBits
-- specifying how the pipeline will be generated.
[$sel:flags:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> PipelineCreateFlags
-- | pStages is a pointer to an array of stageCount
-- PipelineShaderStageCreateInfo structures describing the set of
-- the shader stages to be included in the ray tracing pipeline.
[$sel:stages:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Vector (SomeStruct PipelineShaderStageCreateInfo)
-- | pGroups is a pointer to an array of groupCount
-- RayTracingShaderGroupCreateInfoKHR structures describing the
-- set of the shader stages to be included in each shader group in the
-- ray tracing pipeline.
[$sel:groups:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Vector RayTracingShaderGroupCreateInfoKHR
-- | maxRecursionDepth is the maximum recursion depth of
-- shaders executed by this pipeline.
[$sel:maxRecursionDepth:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Word32
-- | libraries is a PipelineLibraryCreateInfoKHR structure
-- defining pipeline libraries to include.
[$sel:libraries:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> PipelineLibraryCreateInfoKHR
-- | pLibraryInterface is a pointer to a
-- RayTracingPipelineInterfaceCreateInfoKHR structure defining
-- additional information when using pipeline libraries.
[$sel:libraryInterface:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Maybe RayTracingPipelineInterfaceCreateInfoKHR
-- | layout is the description of binding locations used by both
-- the pipeline and descriptor sets used with the pipeline.
[$sel:layout:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> PipelineLayout
-- | basePipelineHandle is a pipeline to derive from.
[$sel:basePipelineHandle:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Pipeline
-- | basePipelineIndex is an index into the pCreateInfos
-- parameter to use as a pipeline to derive from.
[$sel:basePipelineIndex:RayTracingPipelineCreateInfoKHR] :: RayTracingPipelineCreateInfoKHR (es :: [Type]) -> Int32
-- | VkBindAccelerationStructureMemoryInfoKHR - Structure specifying
-- acceleration structure memory binding
--
-- Valid Usage
--
--
-- - accelerationStructure must not already be backed
-- by a memory object
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - accelerationStructure must be a valid
-- AccelerationStructureKHR handle
-- - memory must be a valid DeviceMemory
-- handle
-- - If deviceIndexCount is not 0,
-- pDeviceIndices must be a valid pointer to an array of
-- deviceIndexCount uint32_t values
-- - Both of accelerationStructure, and memory
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- See Also
--
-- AccelerationStructureKHR, DeviceMemory,
-- DeviceSize, StructureType,
-- bindAccelerationStructureMemoryKHR,
-- bindAccelerationStructureMemoryNV
data BindAccelerationStructureMemoryInfoKHR
BindAccelerationStructureMemoryInfoKHR :: AccelerationStructureKHR -> DeviceMemory -> DeviceSize -> Vector Word32 -> BindAccelerationStructureMemoryInfoKHR
-- | accelerationStructure is the acceleration structure to be
-- attached to memory.
[$sel:accelerationStructure:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> AccelerationStructureKHR
-- | memory is a DeviceMemory object describing the device
-- memory to attach.
[$sel:memory:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> DeviceMemory
-- | memoryOffset is the start offset of the region of memory that
-- is to be bound to the acceleration structure. The number of bytes
-- returned in the MemoryRequirements::size member in
-- memory, starting from memoryOffset bytes, will be
-- bound to the specified acceleration structure.
[$sel:memoryOffset:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> DeviceSize
-- | pDeviceIndices is a pointer to an array of device indices.
[$sel:deviceIndices:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> Vector Word32
-- | VkWriteDescriptorSetAccelerationStructureKHR - Structure specifying
-- acceleration structure descriptor info
--
-- Valid Usage
--
--
-- - accelerationStructureCount must be equal to
-- descriptorCount in the extended structure
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pAccelerationStructures must be a valid pointer to
-- an array of accelerationStructureCount valid
-- AccelerationStructureKHR handles
-- - accelerationStructureCount must be greater than
-- 0
--
--
-- See Also
--
-- AccelerationStructureKHR, StructureType
data WriteDescriptorSetAccelerationStructureKHR
WriteDescriptorSetAccelerationStructureKHR :: Vector AccelerationStructureKHR -> WriteDescriptorSetAccelerationStructureKHR
-- | pAccelerationStructures are the acceleration structures to
-- update.
[$sel:accelerationStructures:WriteDescriptorSetAccelerationStructureKHR] :: WriteDescriptorSetAccelerationStructureKHR -> Vector AccelerationStructureKHR
-- | VkAccelerationStructureMemoryRequirementsInfoKHR - Structure
-- specifying acceleration to query for memory requirements
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureBuildTypeKHR,
-- AccelerationStructureKHR,
-- AccelerationStructureMemoryRequirementsTypeKHR,
-- StructureType,
-- getAccelerationStructureMemoryRequirementsKHR
data AccelerationStructureMemoryRequirementsInfoKHR
AccelerationStructureMemoryRequirementsInfoKHR :: AccelerationStructureMemoryRequirementsTypeKHR -> AccelerationStructureBuildTypeKHR -> AccelerationStructureKHR -> AccelerationStructureMemoryRequirementsInfoKHR
-- | type selects the type of memory requirement being queried.
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR
-- returns the memory requirements for the object itself.
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR
-- returns the memory requirements for the scratch memory when doing a
-- build.
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR
-- returns the memory requirements for the scratch memory when doing an
-- update.
--
-- type must be a valid
-- AccelerationStructureMemoryRequirementsTypeKHR value
[$sel:type':AccelerationStructureMemoryRequirementsInfoKHR] :: AccelerationStructureMemoryRequirementsInfoKHR -> AccelerationStructureMemoryRequirementsTypeKHR
-- | buildType selects the build types whose memory requirements
-- are being queried.
--
-- buildType must be a valid
-- AccelerationStructureBuildTypeKHR value
[$sel:buildType:AccelerationStructureMemoryRequirementsInfoKHR] :: AccelerationStructureMemoryRequirementsInfoKHR -> AccelerationStructureBuildTypeKHR
-- | accelerationStructure is the acceleration structure to be
-- queried for memory requirements.
--
-- accelerationStructure must be a valid
-- AccelerationStructureKHR handle
[$sel:accelerationStructure:AccelerationStructureMemoryRequirementsInfoKHR] :: AccelerationStructureMemoryRequirementsInfoKHR -> AccelerationStructureKHR
-- | VkPhysicalDeviceRayTracingFeaturesKHR - Structure describing the ray
-- tracing features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceRayTracingFeaturesKHR
-- structure describe the following features:
--
-- Description
--
--
-- - rayTracing indicates whether the implementation supports
-- ray tracing functionality. See Ray Tracing.
--
--
--
-- - rayTracingShaderGroupHandleCaptureReplay indicates
-- whether the implementation supports saving and reusing shader group
-- handles, e.g. for trace capture and replay.
-- - rayTracingShaderGroupHandleCaptureReplayMixed indicates
-- whether the implementation supports reuse of shader group handles
-- being arbitrarily mixed with creation of non-reused shader group
-- handles. If this is FALSE, all reused shader group handles
-- must be specified before any non-reused handles may be
-- created.
-- - rayTracingAccelerationStructureCaptureReplay indicates
-- whether the implementation supports saving and reusing acceleration
-- structure device addresses, e.g. for trace capture and replay.
-- - rayTracingIndirectTraceRays indicates whether the
-- implementation supports indirect trace ray commands, e.g.
-- cmdTraceRaysIndirectKHR.
-- - rayTracingIndirectAccelerationStructureBuild indicates
-- whether the implementation supports indirect acceleration structure
-- build commands, e.g.
-- cmdBuildAccelerationStructureIndirectKHR.
-- - rayTracingHostAccelerationStructureCommands indicates
-- whether the implementation supports host side acceleration structure
-- commands, e.g. buildAccelerationStructureKHR,
-- copyAccelerationStructureKHR,
-- copyAccelerationStructureToMemoryKHR,
-- copyMemoryToAccelerationStructureKHR,
-- writeAccelerationStructuresPropertiesKHR.
-- - rayQuery indicates whether the implementation supports
-- ray query (OpRayQueryProceedKHR) functionality.
-- - rayTracingPrimitiveCulling indicates whether the
-- implementation supports primitive culling during ray
-- traversal.
--
--
-- If the PhysicalDeviceRayTracingFeaturesKHR structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether the feature is supported.
-- PhysicalDeviceRayTracingFeaturesKHR can also be used in
-- the pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage
--
--
-- - If rayTracingShaderGroupHandleCaptureReplayMixed is
-- TRUE, rayTracingShaderGroupHandleCaptureReplay
-- must also be TRUE
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceRayTracingFeaturesKHR
PhysicalDeviceRayTracingFeaturesKHR :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceRayTracingFeaturesKHR
[$sel:rayTracing:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingShaderGroupHandleCaptureReplay:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingShaderGroupHandleCaptureReplayMixed:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingAccelerationStructureCaptureReplay:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingIndirectTraceRays:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingIndirectAccelerationStructureBuild:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingHostAccelerationStructureCommands:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayQuery:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
[$sel:rayTracingPrimitiveCulling:PhysicalDeviceRayTracingFeaturesKHR] :: PhysicalDeviceRayTracingFeaturesKHR -> Bool
-- | VkPhysicalDeviceRayTracingPropertiesKHR - Properties of the physical
-- device for ray tracing
--
-- Description
--
-- If the PhysicalDeviceRayTracingPropertiesKHR structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Limits specified by this structure must match those specified
-- with the same name in PhysicalDeviceRayTracingPropertiesNV.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceRayTracingPropertiesKHR
PhysicalDeviceRayTracingPropertiesKHR :: Word32 -> Word32 -> Word32 -> Word32 -> Word64 -> Word64 -> Word64 -> Word32 -> Word32 -> PhysicalDeviceRayTracingPropertiesKHR
-- | shaderGroupHandleSize size in bytes of the shader header.
[$sel:shaderGroupHandleSize:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word32
-- | maxRecursionDepth is the maximum number of levels of
-- recursion allowed in a trace command.
[$sel:maxRecursionDepth:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word32
-- | maxShaderGroupStride is the maximum stride in bytes allowed
-- between shader groups in the SBT.
[$sel:maxShaderGroupStride:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word32
-- | shaderGroupBaseAlignment is the required alignment in bytes
-- for the base of the SBTs.
[$sel:shaderGroupBaseAlignment:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word32
-- | maxGeometryCount is the maximum number of geometries in the
-- bottom level acceleration structure.
[$sel:maxGeometryCount:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word64
-- | maxInstanceCount is the maximum number of instances in the
-- top level acceleration structure.
[$sel:maxInstanceCount:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word64
-- | maxPrimitiveCount is the maximum number of triangles or AABBs
-- in all geometries in the bottom level acceleration structure.
[$sel:maxPrimitiveCount:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word64
-- | maxDescriptorSetAccelerationStructures is the maximum number
-- of acceleration structure descriptors that are allowed in a descriptor
-- set.
[$sel:maxDescriptorSetAccelerationStructures:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word32
-- | shaderGroupHandleCaptureReplaySize is the number of bytes for
-- the information required to do capture and replay for shader group
-- handles.
[$sel:shaderGroupHandleCaptureReplaySize:PhysicalDeviceRayTracingPropertiesKHR] :: PhysicalDeviceRayTracingPropertiesKHR -> Word32
-- | VkStridedBufferRegionKHR - Structure specifying a region of a VkBuffer
-- with a stride
--
-- Valid Usage
--
--
-- - If buffer is not NULL_HANDLE, size plus
-- offset must be less than or equal to the size of
-- buffer
--
--
--
-- - If buffer is not NULL_HANDLE, stride
-- must be less than the size of buffer
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Buffer, DeviceSize, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysKHR
data StridedBufferRegionKHR
StridedBufferRegionKHR :: Buffer -> DeviceSize -> DeviceSize -> DeviceSize -> StridedBufferRegionKHR
-- | buffer is the buffer containing this region.
[$sel:buffer:StridedBufferRegionKHR] :: StridedBufferRegionKHR -> Buffer
-- | offset is the byte offset in buffer at which the
-- region starts.
[$sel:offset:StridedBufferRegionKHR] :: StridedBufferRegionKHR -> DeviceSize
-- | stride is the byte stride between consecutive elements.
[$sel:stride:StridedBufferRegionKHR] :: StridedBufferRegionKHR -> DeviceSize
-- | size is the size in bytes of the region starting at
-- offset.
[$sel:size:StridedBufferRegionKHR] :: StridedBufferRegionKHR -> DeviceSize
-- | VkTraceRaysIndirectCommandKHR - Structure specifying the parameters of
-- an indirect trace ray command
--
-- Description
--
-- The members of TraceRaysIndirectCommandKHR have the same
-- meaning as the similarly named parameters of cmdTraceRaysKHR.
--
-- Valid Usage
--
-- See Also
--
-- No cross-references are available
data TraceRaysIndirectCommandKHR
TraceRaysIndirectCommandKHR :: Word32 -> Word32 -> Word32 -> TraceRaysIndirectCommandKHR
-- | width is the width of the ray trace query dimensions.
--
-- width must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
[$sel:width:TraceRaysIndirectCommandKHR] :: TraceRaysIndirectCommandKHR -> Word32
-- | height is height of the ray trace query dimensions.
--
-- height must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
[$sel:height:TraceRaysIndirectCommandKHR] :: TraceRaysIndirectCommandKHR -> Word32
-- | depth is depth of the ray trace query dimensions.
--
-- depth must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
[$sel:depth:TraceRaysIndirectCommandKHR] :: TraceRaysIndirectCommandKHR -> Word32
-- | VkAccelerationStructureGeometryTrianglesDataKHR - Structure specifying
-- a triangle geometry in a bottom-level acceleration structure
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureGeometryDataKHR,
-- DeviceOrHostAddressConstKHR, DeviceSize, Format,
-- IndexType, StructureType
data AccelerationStructureGeometryTrianglesDataKHR
AccelerationStructureGeometryTrianglesDataKHR :: Format -> DeviceOrHostAddressConstKHR -> DeviceSize -> IndexType -> DeviceOrHostAddressConstKHR -> DeviceOrHostAddressConstKHR -> AccelerationStructureGeometryTrianglesDataKHR
-- | vertexFormat is the Format of each vertex element.
[$sel:vertexFormat:AccelerationStructureGeometryTrianglesDataKHR] :: AccelerationStructureGeometryTrianglesDataKHR -> Format
-- | vertexData is a device or host address to memory containing
-- vertex data for this geometry.
[$sel:vertexData:AccelerationStructureGeometryTrianglesDataKHR] :: AccelerationStructureGeometryTrianglesDataKHR -> DeviceOrHostAddressConstKHR
-- | vertexStride is the stride in bytes between each vertex.
[$sel:vertexStride:AccelerationStructureGeometryTrianglesDataKHR] :: AccelerationStructureGeometryTrianglesDataKHR -> DeviceSize
-- | indexType is the IndexType of each index element.
[$sel:indexType:AccelerationStructureGeometryTrianglesDataKHR] :: AccelerationStructureGeometryTrianglesDataKHR -> IndexType
-- | indexData is the device or host address to memory containing
-- index data for this geometry.
[$sel:indexData:AccelerationStructureGeometryTrianglesDataKHR] :: AccelerationStructureGeometryTrianglesDataKHR -> DeviceOrHostAddressConstKHR
-- | transformData is a device or host address to memory
-- containing an optional reference to a TransformMatrixKHR
-- structure defining a transformation that should be applied to vertices
-- in this geometry.
[$sel:transformData:AccelerationStructureGeometryTrianglesDataKHR] :: AccelerationStructureGeometryTrianglesDataKHR -> DeviceOrHostAddressConstKHR
-- | VkAccelerationStructureGeometryAabbsDataKHR - Structure specifying
-- axis-aligned bounding box geometry in a bottom-level acceleration
-- structure
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureGeometryDataKHR,
-- DeviceOrHostAddressConstKHR, DeviceSize,
-- StructureType
data AccelerationStructureGeometryAabbsDataKHR
AccelerationStructureGeometryAabbsDataKHR :: DeviceOrHostAddressConstKHR -> DeviceSize -> AccelerationStructureGeometryAabbsDataKHR
-- | data is a device or host address to memory containing
-- AabbPositionsKHR structures containing position data for each
-- axis-aligned bounding box in the geometry.
--
-- data must be aligned to 8 bytes
--
-- data must be a valid
-- DeviceOrHostAddressConstKHR union
[$sel:data':AccelerationStructureGeometryAabbsDataKHR] :: AccelerationStructureGeometryAabbsDataKHR -> DeviceOrHostAddressConstKHR
-- | stride is the stride in bytes between each entry in
-- data.
--
-- stride must be a multiple of 8
[$sel:stride:AccelerationStructureGeometryAabbsDataKHR] :: AccelerationStructureGeometryAabbsDataKHR -> DeviceSize
-- | VkAccelerationStructureGeometryInstancesDataKHR - Structure specifying
-- a geometry consisting of instances of other acceleration structures
--
-- Valid Usage
--
--
-- - data must be aligned to 16 bytes
--
--
--
-- - If arrayOfPointers is true, each pointer must be
-- aligned to 16 bytes
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureGeometryDataKHR, Bool32,
-- DeviceOrHostAddressConstKHR, StructureType
data AccelerationStructureGeometryInstancesDataKHR
AccelerationStructureGeometryInstancesDataKHR :: Bool -> DeviceOrHostAddressConstKHR -> AccelerationStructureGeometryInstancesDataKHR
-- | arrayOfPointers specifies whether data is used as an
-- array of addresses or just an array.
[$sel:arrayOfPointers:AccelerationStructureGeometryInstancesDataKHR] :: AccelerationStructureGeometryInstancesDataKHR -> Bool
-- | data is either the address of an array of device or host
-- addresses referencing individual
-- AccelerationStructureInstanceKHR structures if
-- arrayOfPointers is TRUE, or the address of an array of
-- AccelerationStructureInstanceKHR structures.
[$sel:data':AccelerationStructureGeometryInstancesDataKHR] :: AccelerationStructureGeometryInstancesDataKHR -> DeviceOrHostAddressConstKHR
-- | VkAccelerationStructureGeometryKHR - Structure specifying geometries
-- to be built into an acceleration structure
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureGeometryDataKHR, GeometryFlagsKHR,
-- GeometryTypeKHR, StructureType
data AccelerationStructureGeometryKHR
AccelerationStructureGeometryKHR :: GeometryTypeKHR -> AccelerationStructureGeometryDataKHR -> GeometryFlagsKHR -> AccelerationStructureGeometryKHR
-- | geometryType describes which type of geometry this
-- AccelerationStructureGeometryKHR refers to.
[$sel:geometryType:AccelerationStructureGeometryKHR] :: AccelerationStructureGeometryKHR -> GeometryTypeKHR
-- | geometry is a AccelerationStructureGeometryDataKHR
-- union describing the geometry data for the relevant geometry type.
[$sel:geometry:AccelerationStructureGeometryKHR] :: AccelerationStructureGeometryKHR -> AccelerationStructureGeometryDataKHR
-- | flags is a bitmask of GeometryFlagBitsKHR values
-- describing additional properties of how the geometry should be built.
[$sel:flags:AccelerationStructureGeometryKHR] :: AccelerationStructureGeometryKHR -> GeometryFlagsKHR
-- | VkAccelerationStructureBuildGeometryInfoKHR - Structure specifying the
-- geometry data used to build an acceleration structure
--
-- Description
--
-- Note
--
-- Elements of ppGeometries are accessed as follows, based on
-- geometryArrayOfPointers:
--
--
-- if (geometryArrayOfPointers) {
-- use *(ppGeometries[i]);
-- } else {
-- use (*ppGeometries)[i];
-- }
--
--
-- Valid Usage
--
--
-- - If update is TRUE,
-- srcAccelerationStructure must not be
-- NULL_HANDLE
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureKHR, AccelerationStructureTypeKHR,
-- Bool32, BuildAccelerationStructureFlagsKHR,
-- DeviceOrHostAddressKHR, StructureType,
-- buildAccelerationStructureKHR,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureKHR
data AccelerationStructureBuildGeometryInfoKHR (es :: [Type])
AccelerationStructureBuildGeometryInfoKHR :: Chain es -> AccelerationStructureTypeKHR -> BuildAccelerationStructureFlagsKHR -> Bool -> AccelerationStructureKHR -> AccelerationStructureKHR -> Vector AccelerationStructureGeometryKHR -> DeviceOrHostAddressKHR -> AccelerationStructureBuildGeometryInfoKHR (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> Chain es
-- | type is a AccelerationStructureTypeKHR value
-- specifying the type of acceleration structure being built.
[$sel:type':AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> AccelerationStructureTypeKHR
-- | flags is a bitmask of
-- BuildAccelerationStructureFlagBitsKHR specifying additional
-- parameters of the acceleration structure.
[$sel:flags:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> BuildAccelerationStructureFlagsKHR
-- | update specifies whether to update
-- dstAccelerationStructure with the data in
-- srcAccelerationStructure or not.
[$sel:update:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> Bool
-- | srcAccelerationStructure points to an existing acceleration
-- structure that is to be used to update the dst acceleration
-- structure when update is TRUE.
[$sel:srcAccelerationStructure:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> AccelerationStructureKHR
-- | dstAccelerationStructure points to the target acceleration
-- structure for the build.
[$sel:dstAccelerationStructure:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> AccelerationStructureKHR
-- | ppGeometries is either a pointer to an array of pointers to
-- AccelerationStructureGeometryKHR structures if
-- geometryArrayOfPointers is TRUE, or a pointer to a
-- pointer to an array of AccelerationStructureGeometryKHR
-- structures if it is FALSE. Each element of the array describes
-- the data used to build each acceleration structure geometry.
[$sel:geometries:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> Vector AccelerationStructureGeometryKHR
-- | scratchData is the device or host address to memory that will
-- be used as scratch memory for the build.
[$sel:scratchData:AccelerationStructureBuildGeometryInfoKHR] :: AccelerationStructureBuildGeometryInfoKHR (es :: [Type]) -> DeviceOrHostAddressKHR
-- | VkAccelerationStructureBuildOffsetInfoKHR - Structure specifying build
-- offsets and counts for acceleration structure builds
--
-- Description
--
-- The primitive count and primitive offset are interpreted differently
-- depending on the GeometryTypeKHR used:
--
--
--
-- Valid Usage
--
--
--
--
--
-- See Also
--
-- buildAccelerationStructureKHR,
-- cmdBuildAccelerationStructureKHR
data AccelerationStructureBuildOffsetInfoKHR
AccelerationStructureBuildOffsetInfoKHR :: Word32 -> Word32 -> Word32 -> Word32 -> AccelerationStructureBuildOffsetInfoKHR
-- | primitiveCount defines the number of primitives for a
-- corresponding acceleration structure geometry.
[$sel:primitiveCount:AccelerationStructureBuildOffsetInfoKHR] :: AccelerationStructureBuildOffsetInfoKHR -> Word32
-- | primitiveOffset defines an offset in bytes into the memory
-- where primitive data is defined.
[$sel:primitiveOffset:AccelerationStructureBuildOffsetInfoKHR] :: AccelerationStructureBuildOffsetInfoKHR -> Word32
-- | firstVertex is the index of the first vertex to build from
-- for triangle geometry.
[$sel:firstVertex:AccelerationStructureBuildOffsetInfoKHR] :: AccelerationStructureBuildOffsetInfoKHR -> Word32
-- | transformOffset defines an offset in bytes into the memory
-- where a transform matrix is defined.
[$sel:transformOffset:AccelerationStructureBuildOffsetInfoKHR] :: AccelerationStructureBuildOffsetInfoKHR -> Word32
-- | VkAccelerationStructureCreateGeometryTypeInfoKHR - Structure
-- specifying the shape of geometries that will be built into an
-- acceleration structure
--
-- Description
--
-- When geometryType is GEOMETRY_TYPE_TRIANGLES_KHR:
--
--
-- - if indexType is INDEX_TYPE_NONE_KHR, then this
-- structure describes a set of triangles.
-- - if indexType is not INDEX_TYPE_NONE_KHR, then this
-- structure describes a set of indexed triangles.
--
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - geometryType must be a valid
-- GeometryTypeKHR value
-- - indexType must be a valid IndexType
-- value
-- - If vertexFormat is not 0, vertexFormat
-- must be a valid Format value
--
--
-- See Also
--
-- AccelerationStructureCreateInfoKHR, Bool32,
-- Format, GeometryTypeKHR, IndexType,
-- StructureType
data AccelerationStructureCreateGeometryTypeInfoKHR
AccelerationStructureCreateGeometryTypeInfoKHR :: GeometryTypeKHR -> Word32 -> IndexType -> Word32 -> Format -> Bool -> AccelerationStructureCreateGeometryTypeInfoKHR
-- | geometryType is a GeometryTypeKHR that describes the
-- type of an acceleration structure geometry.
[$sel:geometryType:AccelerationStructureCreateGeometryTypeInfoKHR] :: AccelerationStructureCreateGeometryTypeInfoKHR -> GeometryTypeKHR
-- | maxPrimitiveCount describes the maximum number of primitives
-- that can be built into an acceleration structure geometry.
[$sel:maxPrimitiveCount:AccelerationStructureCreateGeometryTypeInfoKHR] :: AccelerationStructureCreateGeometryTypeInfoKHR -> Word32
-- | indexType is a IndexType that describes the index type
-- used to build this geometry when geometryType is
-- GEOMETRY_TYPE_TRIANGLES_KHR.
[$sel:indexType:AccelerationStructureCreateGeometryTypeInfoKHR] :: AccelerationStructureCreateGeometryTypeInfoKHR -> IndexType
-- | maxVertexCount describes the maximum vertex count that
-- can be used to build an acceleration structure geometry when
-- geometryType is GEOMETRY_TYPE_TRIANGLES_KHR.
[$sel:maxVertexCount:AccelerationStructureCreateGeometryTypeInfoKHR] :: AccelerationStructureCreateGeometryTypeInfoKHR -> Word32
-- | vertexFormat is a Format that describes the vertex
-- format used to build this geometry when geometryType is
-- GEOMETRY_TYPE_TRIANGLES_KHR.
[$sel:vertexFormat:AccelerationStructureCreateGeometryTypeInfoKHR] :: AccelerationStructureCreateGeometryTypeInfoKHR -> Format
-- | allowsTransforms indicates whether transform data can
-- be used by this acceleration structure or not, when
-- geometryType is GEOMETRY_TYPE_TRIANGLES_KHR.
[$sel:allowsTransforms:AccelerationStructureCreateGeometryTypeInfoKHR] :: AccelerationStructureCreateGeometryTypeInfoKHR -> Bool
-- | VkAccelerationStructureCreateInfoKHR - Structure specifying the
-- parameters of a newly created acceleration structure object
--
-- Description
--
-- If deviceAddress is zero, no specific address is requested.
--
-- If deviceAddress is not zero, deviceAddress
-- must be an address retrieved from an identically created
-- acceleration structure on the same implementation. The acceleration
-- structure must also be bound to an identically created
-- DeviceMemory object.
--
-- Apps should avoid creating acceleration structures with
-- app-provided addresses and implementation-provided addresses in the
-- same process, to reduce the likelihood of
-- ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR errors.
--
-- Valid Usage
--
--
-- - If compactedSize is not 0 then
-- maxGeometryCount must be 0
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureTypeKHR,
-- BuildAccelerationStructureFlagsKHR, DeviceAddress,
-- DeviceSize, StructureType,
-- createAccelerationStructureKHR
data AccelerationStructureCreateInfoKHR
AccelerationStructureCreateInfoKHR :: DeviceSize -> AccelerationStructureTypeKHR -> BuildAccelerationStructureFlagsKHR -> Vector AccelerationStructureCreateGeometryTypeInfoKHR -> DeviceAddress -> AccelerationStructureCreateInfoKHR
-- | compactedSize is the size from the result of
-- cmdWriteAccelerationStructuresPropertiesKHR if this
-- acceleration structure is going to be the target of a compacting copy.
[$sel:compactedSize:AccelerationStructureCreateInfoKHR] :: AccelerationStructureCreateInfoKHR -> DeviceSize
-- | type is a AccelerationStructureTypeKHR value
-- specifying the type of acceleration structure that will be created.
[$sel:type':AccelerationStructureCreateInfoKHR] :: AccelerationStructureCreateInfoKHR -> AccelerationStructureTypeKHR
-- | flags is a bitmask of
-- BuildAccelerationStructureFlagBitsKHR specifying additional
-- parameters of the acceleration structure.
[$sel:flags:AccelerationStructureCreateInfoKHR] :: AccelerationStructureCreateInfoKHR -> BuildAccelerationStructureFlagsKHR
-- | pGeometryInfos is an array of maxGeometryCount
-- AccelerationStructureCreateGeometryTypeInfoKHR structures,
-- which describe the maximum size and format of the data that will be
-- built into the acceleration structure.
[$sel:geometryInfos:AccelerationStructureCreateInfoKHR] :: AccelerationStructureCreateInfoKHR -> Vector AccelerationStructureCreateGeometryTypeInfoKHR
-- | deviceAddress is the device address requested for the
-- acceleration structure if the
-- rayTracingAccelerationStructureCaptureReplay feature is being
-- used.
[$sel:deviceAddress:AccelerationStructureCreateInfoKHR] :: AccelerationStructureCreateInfoKHR -> DeviceAddress
-- | VkAabbPositionsKHR - Structure specifying two opposing corners of an
-- axis-aligned bounding box
--
-- Valid Usage
--
-- See Also
--
-- No cross-references are available
data AabbPositionsKHR
AabbPositionsKHR :: Float -> Float -> Float -> Float -> Float -> Float -> AabbPositionsKHR
-- | minX is the x position of one opposing corner of a bounding
-- box.
--
-- minX must be less than or equal to maxX
[$sel:minX:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | minY is the y position of one opposing corner of a bounding
-- box.
--
-- minY must be less than or equal to maxY
[$sel:minY:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | minZ is the z position of one opposing corner of a bounding
-- box.
--
-- minZ must be less than or equal to maxZ
[$sel:minZ:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | maxX is the x position of the other opposing corner of a
-- bounding box.
[$sel:maxX:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | maxY is the y position of the other opposing corner of a
-- bounding box.
[$sel:maxY:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | maxZ is the z position of the other opposing corner of a
-- bounding box.
[$sel:maxZ:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | VkTransformMatrixKHR - Structure specifying a 3x4 affine
-- transformation matrix
--
-- See Also
--
-- AccelerationStructureInstanceKHR
data TransformMatrixKHR
TransformMatrixKHR :: ((Float, Float, Float, Float), (Float, Float, Float, Float), (Float, Float, Float, Float)) -> TransformMatrixKHR
-- | matrix is a 3x4 row-major affine transformation matrix.
[$sel:matrix:TransformMatrixKHR] :: TransformMatrixKHR -> ((Float, Float, Float, Float), (Float, Float, Float, Float), (Float, Float, Float, Float))
-- | VkAccelerationStructureInstanceKHR - Structure specifying a single
-- acceleration structure instance for building into an acceleration
-- structure geometry
--
-- Description
--
-- The C language spec does not define the ordering of bit-fields, but in
-- practice, this struct produces the correct layout with existing
-- compilers. The intended bit pattern is for the following:
--
-- If a compiler produces code that diverges from that pattern,
-- applications must employ another method to set values according
-- to the correct bit pattern.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- GeometryInstanceFlagsKHR, TransformMatrixKHR
data AccelerationStructureInstanceKHR
AccelerationStructureInstanceKHR :: TransformMatrixKHR -> Word32 -> Word32 -> Word32 -> GeometryInstanceFlagsKHR -> Word64 -> AccelerationStructureInstanceKHR
-- | transform is a TransformMatrixKHR structure describing
-- a transformation to be applied to the acceleration structure.
[$sel:transform:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> TransformMatrixKHR
-- | instanceCustomIndex a 24-bit user-specified index value
-- accessible to ray shaders in the InstanceCustomIndexKHR
-- built-in.
--
-- instanceCustomIndex and mask occupy the same memory
-- as if a single int32_t was specified in their place
--
--
-- - instanceCustomIndex occupies the 24 least significant
-- bits of that memory
-- - mask occupies the 8 most significant bits of that
-- memory
--
[$sel:instanceCustomIndex:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word32
-- | mask is an 8-bit visibility mask for the geometry. The
-- instance may only be hit if rayMask & instance.mask !=
-- 0
[$sel:mask:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word32
-- | instanceShaderBindingTableRecordOffset is a 24-bit offset
-- used in calculating the hit shader binding table index.
--
-- instanceShaderBindingTableRecordOffset and flags
-- occupy the same memory as if a single int32_t was specified
-- in their place
--
--
-- - instanceShaderBindingTableRecordOffset occupies the 24
-- least significant bits of that memory
-- - flags occupies the 8 most significant bits of that
-- memory
--
[$sel:instanceShaderBindingTableRecordOffset:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word32
-- | flags is an 8-bit mask of GeometryInstanceFlagBitsKHR
-- values to apply to this instance.
--
-- flags must be a valid combination of
-- GeometryInstanceFlagBitsKHR values
[$sel:flags:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> GeometryInstanceFlagsKHR
-- | accelerationStructureReference is either:
--
--
[$sel:accelerationStructureReference:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word64
-- | VkAccelerationStructureDeviceAddressInfoKHR - Structure specifying the
-- acceleration structure to query an address for
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureKHR, StructureType,
-- getAccelerationStructureDeviceAddressKHR
data AccelerationStructureDeviceAddressInfoKHR
AccelerationStructureDeviceAddressInfoKHR :: AccelerationStructureKHR -> AccelerationStructureDeviceAddressInfoKHR
-- | accelerationStructure specifies the acceleration structure
-- whose address is being queried.
--
-- accelerationStructure must be a valid
-- AccelerationStructureKHR handle
[$sel:accelerationStructure:AccelerationStructureDeviceAddressInfoKHR] :: AccelerationStructureDeviceAddressInfoKHR -> AccelerationStructureKHR
-- | VkAccelerationStructureVersionKHR - Acceleration structure version
-- information
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType,
-- getDeviceAccelerationStructureCompatibilityKHR
data AccelerationStructureVersionKHR
AccelerationStructureVersionKHR :: ByteString -> AccelerationStructureVersionKHR
-- | versionData is a pointer to the version header as defined in
-- CopyAccelerationStructureModeKHR
--
-- versionData must be a valid pointer to an array of
-- 2*VK_UUID_SIZE uint8_t values
[$sel:versionData:AccelerationStructureVersionKHR] :: AccelerationStructureVersionKHR -> ByteString
-- | VkCopyAccelerationStructureInfoKHR - Parameters for copying an
-- acceleration structure
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureKHR,
-- CopyAccelerationStructureModeKHR, StructureType,
-- cmdCopyAccelerationStructureKHR,
-- copyAccelerationStructureKHR
data CopyAccelerationStructureInfoKHR (es :: [Type])
CopyAccelerationStructureInfoKHR :: Chain es -> AccelerationStructureKHR -> AccelerationStructureKHR -> CopyAccelerationStructureModeKHR -> CopyAccelerationStructureInfoKHR (es :: [Type])
[$sel:next:CopyAccelerationStructureInfoKHR] :: CopyAccelerationStructureInfoKHR (es :: [Type]) -> Chain es
-- | src is the source acceleration structure for the copy.
[$sel:src:CopyAccelerationStructureInfoKHR] :: CopyAccelerationStructureInfoKHR (es :: [Type]) -> AccelerationStructureKHR
-- | dst is the target acceleration structure for the copy.
[$sel:dst:CopyAccelerationStructureInfoKHR] :: CopyAccelerationStructureInfoKHR (es :: [Type]) -> AccelerationStructureKHR
-- | mode is a CopyAccelerationStructureModeKHR value that
-- specifies additional operations to perform during the copy.
[$sel:mode:CopyAccelerationStructureInfoKHR] :: CopyAccelerationStructureInfoKHR (es :: [Type]) -> CopyAccelerationStructureModeKHR
-- | VkCopyAccelerationStructureToMemoryInfoKHR - Parameters for
-- serializing an acceleration structure
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureKHR,
-- CopyAccelerationStructureModeKHR,
-- DeviceOrHostAddressKHR, StructureType,
-- cmdCopyAccelerationStructureToMemoryKHR,
-- copyAccelerationStructureToMemoryKHR
data CopyAccelerationStructureToMemoryInfoKHR (es :: [Type])
CopyAccelerationStructureToMemoryInfoKHR :: Chain es -> AccelerationStructureKHR -> DeviceOrHostAddressKHR -> CopyAccelerationStructureModeKHR -> CopyAccelerationStructureToMemoryInfoKHR (es :: [Type])
[$sel:next:CopyAccelerationStructureToMemoryInfoKHR] :: CopyAccelerationStructureToMemoryInfoKHR (es :: [Type]) -> Chain es
-- | src is the source acceleration structure for the copy
[$sel:src:CopyAccelerationStructureToMemoryInfoKHR] :: CopyAccelerationStructureToMemoryInfoKHR (es :: [Type]) -> AccelerationStructureKHR
-- | dst is the device or host address to memory which is the
-- target for the copy
[$sel:dst:CopyAccelerationStructureToMemoryInfoKHR] :: CopyAccelerationStructureToMemoryInfoKHR (es :: [Type]) -> DeviceOrHostAddressKHR
-- | mode is a CopyAccelerationStructureModeKHR value that
-- specifies additional operations to perform during the copy.
[$sel:mode:CopyAccelerationStructureToMemoryInfoKHR] :: CopyAccelerationStructureToMemoryInfoKHR (es :: [Type]) -> CopyAccelerationStructureModeKHR
-- | VkCopyMemoryToAccelerationStructureInfoKHR - Parameters for
-- deserializing an acceleration structure
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureKHR,
-- CopyAccelerationStructureModeKHR,
-- DeviceOrHostAddressConstKHR, StructureType,
-- cmdCopyMemoryToAccelerationStructureKHR,
-- copyMemoryToAccelerationStructureKHR
data CopyMemoryToAccelerationStructureInfoKHR (es :: [Type])
CopyMemoryToAccelerationStructureInfoKHR :: Chain es -> DeviceOrHostAddressConstKHR -> AccelerationStructureKHR -> CopyAccelerationStructureModeKHR -> CopyMemoryToAccelerationStructureInfoKHR (es :: [Type])
[$sel:next:CopyMemoryToAccelerationStructureInfoKHR] :: CopyMemoryToAccelerationStructureInfoKHR (es :: [Type]) -> Chain es
-- | src is the device or host address to memory containing the
-- source data for the copy.
[$sel:src:CopyMemoryToAccelerationStructureInfoKHR] :: CopyMemoryToAccelerationStructureInfoKHR (es :: [Type]) -> DeviceOrHostAddressConstKHR
-- | dst is the target acceleration structure for the copy.
[$sel:dst:CopyMemoryToAccelerationStructureInfoKHR] :: CopyMemoryToAccelerationStructureInfoKHR (es :: [Type]) -> AccelerationStructureKHR
-- | mode is a CopyAccelerationStructureModeKHR value that
-- specifies additional operations to perform during the copy.
[$sel:mode:CopyMemoryToAccelerationStructureInfoKHR] :: CopyMemoryToAccelerationStructureInfoKHR (es :: [Type]) -> CopyAccelerationStructureModeKHR
-- | VkRayTracingPipelineInterfaceCreateInfoKHR - Structure specifying
-- additional interface information when using libraries
--
-- Description
--
-- maxPayloadSize is calculated as the maximum number of bytes
-- used by any block declared in the RayPayloadKHR or
-- IncomingRayPayloadKHR storage classes.
-- maxAttributeSize is calculated as the maximum number of bytes
-- used by any block declared in the HitAttributeKHR storage
-- class. maxCallableSize is calculated as the maximum number of
-- bytes used by any block declred in the CallableDataKHR or
-- IncomingCallableDataKHR. As variables in these storage
-- classes do not have explicit offsets, the size should be calculated as
-- if each variable has a scalar alignment equal to the largest
-- scalar alignment of any of the block’s members.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- RayTracingPipelineCreateInfoKHR, StructureType
data RayTracingPipelineInterfaceCreateInfoKHR
RayTracingPipelineInterfaceCreateInfoKHR :: Word32 -> Word32 -> Word32 -> RayTracingPipelineInterfaceCreateInfoKHR
-- | maxPayloadSize is the maximum payload size in bytes used by
-- any shader in the pipeline.
[$sel:maxPayloadSize:RayTracingPipelineInterfaceCreateInfoKHR] :: RayTracingPipelineInterfaceCreateInfoKHR -> Word32
-- | maxAttributeSize is the maximum attribute structure size in
-- bytes used by any shader in the pipeline.
[$sel:maxAttributeSize:RayTracingPipelineInterfaceCreateInfoKHR] :: RayTracingPipelineInterfaceCreateInfoKHR -> Word32
-- | maxCallableSize is the maximum callable data size in bytes
-- used by any shader in the pipeline.
[$sel:maxCallableSize:RayTracingPipelineInterfaceCreateInfoKHR] :: RayTracingPipelineInterfaceCreateInfoKHR -> Word32
data DeviceOrHostAddressKHR
DeviceAddress :: DeviceAddress -> DeviceOrHostAddressKHR
HostAddress :: Ptr () -> DeviceOrHostAddressKHR
data DeviceOrHostAddressConstKHR
DeviceAddressConst :: DeviceAddress -> DeviceOrHostAddressConstKHR
HostAddressConst :: Ptr () -> DeviceOrHostAddressConstKHR
data AccelerationStructureGeometryDataKHR
Triangles :: AccelerationStructureGeometryTrianglesDataKHR -> AccelerationStructureGeometryDataKHR
Aabbs :: AccelerationStructureGeometryAabbsDataKHR -> AccelerationStructureGeometryDataKHR
Instances :: AccelerationStructureGeometryInstancesDataKHR -> AccelerationStructureGeometryDataKHR
-- | VkGeometryInstanceFlagBitsKHR - Instance flag bits
--
-- Description
--
-- GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR and
-- GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR must not be used
-- in the same flag.
--
-- See Also
--
-- GeometryInstanceFlagsKHR
newtype GeometryInstanceFlagBitsKHR
GeometryInstanceFlagBitsKHR :: Flags -> GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR disables
-- face culling for this instance.
pattern GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR :: GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR
-- indicates that the front face of the triangle for culling purposes is
-- the face that is counter clockwise in object space relative to the ray
-- origin. Because the facing is determined in object space, an instance
-- transform matrix does not change the winding, but a geometry transform
-- does.
pattern GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR :: GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR causes this instance to
-- act as though GEOMETRY_OPAQUE_BIT_KHR were specified on all
-- geometries referenced by this instance. This behavior can be
-- overridden by the SPIR-V NoOpaqueKHR ray flag.
pattern GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR :: GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR causes this instance
-- to act as though GEOMETRY_OPAQUE_BIT_KHR were not specified on
-- all geometries referenced by this instance. This behavior can
-- be overridden by the SPIR-V OpaqueKHR ray flag.
pattern GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR :: GeometryInstanceFlagBitsKHR
type GeometryInstanceFlagsKHR = GeometryInstanceFlagBitsKHR
-- | VkGeometryFlagBitsKHR - Bitmask specifying additional parameters for a
-- geometry
--
-- See Also
--
-- GeometryFlagsKHR
newtype GeometryFlagBitsKHR
GeometryFlagBitsKHR :: Flags -> GeometryFlagBitsKHR
-- | GEOMETRY_OPAQUE_BIT_KHR indicates that this geometry does not
-- invoke the any-hit shaders even if present in a hit group.
pattern GEOMETRY_OPAQUE_BIT_KHR :: GeometryFlagBitsKHR
-- | GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR indicates that
-- the implementation must only call the any-hit shader a single
-- time for each primitive in this geometry. If this bit is absent an
-- implementation may invoke the any-hit shader more than once for
-- this geometry.
pattern GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR :: GeometryFlagBitsKHR
type GeometryFlagsKHR = GeometryFlagBitsKHR
-- | VkBuildAccelerationStructureFlagBitsKHR - Bitmask specifying
-- additional parameters for acceleration structure builds
--
-- Description
--
-- Note
--
-- BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR and
-- BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR
-- may take more time and memory than a normal build, and so
-- should only be used when those features are needed.
--
-- See Also
--
-- BuildAccelerationStructureFlagsKHR
newtype BuildAccelerationStructureFlagBitsKHR
BuildAccelerationStructureFlagBitsKHR :: Flags -> BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR indicates
-- that the specified acceleration structure can be updated with
-- update of TRUE in
-- cmdBuildAccelerationStructureKHR or
-- cmdBuildAccelerationStructureNV .
pattern BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR indicates
-- that the specified acceleration structure can act as the source
-- for a copy acceleration structure command with mode of
-- COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR to produce a
-- compacted acceleration structure.
pattern BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR
-- indicates that the given acceleration structure build should
-- prioritize trace performance over build time.
pattern BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR
-- indicates that the given acceleration structure build should
-- prioritize build time over trace performance.
pattern BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR indicates that
-- this acceleration structure should minimize the size of the
-- scratch memory and the final result build, potentially at the expense
-- of build time or trace performance.
pattern BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
type BuildAccelerationStructureFlagsKHR = BuildAccelerationStructureFlagBitsKHR
-- | VkCopyAccelerationStructureModeKHR - Acceleration structure copy mode
--
-- See Also
--
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- cmdCopyAccelerationStructureNV
newtype CopyAccelerationStructureModeKHR
CopyAccelerationStructureModeKHR :: Int32 -> CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR creates a direct
-- copy of the acceleration structure specified in src into the
-- one specified by dst. The dst acceleration structure
-- must have been created with the same parameters as
-- src.
pattern COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR :: CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR creates a more
-- compact version of an acceleration structure src into
-- dst. The acceleration structure dst must have
-- been created with a compactedSize corresponding to the one
-- returned by cmdWriteAccelerationStructuresPropertiesKHR after
-- the build of the acceleration structure specified by src.
pattern COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR :: CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR serializes the
-- acceleration structure to a semi-opaque format which can be reloaded
-- on a compatible implementation.
pattern COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR :: CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR deserializes
-- the semi-opaque serialization format in the buffer to the acceleration
-- structure.
pattern COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR :: CopyAccelerationStructureModeKHR
-- | VkAccelerationStructureTypeKHR - Type of acceleration structure
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateInfoKHR
newtype AccelerationStructureTypeKHR
AccelerationStructureTypeKHR :: Int32 -> AccelerationStructureTypeKHR
-- | ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR is a top-level
-- acceleration structure containing instance data referring to
-- bottom-level acceleration structures.
pattern ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR :: AccelerationStructureTypeKHR
-- | ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR is a bottom-level
-- acceleration structure containing the AABBs or geometry to be
-- intersected.
pattern ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR :: AccelerationStructureTypeKHR
-- | VkGeometryTypeKHR - Enum specifying which type of geometry is provided
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryKHR, GeometryNV
newtype GeometryTypeKHR
GeometryTypeKHR :: Int32 -> GeometryTypeKHR
-- | GEOMETRY_TYPE_TRIANGLES_KHR specifies a geometry type
-- consisting of triangles.
pattern GEOMETRY_TYPE_TRIANGLES_KHR :: GeometryTypeKHR
-- | GEOMETRY_TYPE_AABBS_KHR specifies a geometry type consisting of
-- axis-aligned bounding boxes.
pattern GEOMETRY_TYPE_AABBS_KHR :: GeometryTypeKHR
-- | GEOMETRY_TYPE_INSTANCES_KHR specifies a geometry type
-- consisting of acceleration structure instances.
pattern GEOMETRY_TYPE_INSTANCES_KHR :: GeometryTypeKHR
-- | VkAccelerationStructureMemoryRequirementsTypeKHR - Acceleration
-- structure memory requirement type
--
-- See Also
--
-- AccelerationStructureMemoryRequirementsInfoKHR
newtype AccelerationStructureMemoryRequirementsTypeKHR
AccelerationStructureMemoryRequirementsTypeKHR :: Int32 -> AccelerationStructureMemoryRequirementsTypeKHR
-- | ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR
-- requests the memory requirement for the
-- AccelerationStructureKHR backing store.
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR :: AccelerationStructureMemoryRequirementsTypeKHR
-- |
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR
-- requests the memory requirement for scratch space during the initial
-- build.
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR :: AccelerationStructureMemoryRequirementsTypeKHR
-- |
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR
-- requests the memory requirement for scratch space during an update.
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR :: AccelerationStructureMemoryRequirementsTypeKHR
-- | VkAccelerationStructureBuildTypeKHR - Acceleration structure build
-- type
--
-- See Also
--
-- AccelerationStructureMemoryRequirementsInfoKHR
newtype AccelerationStructureBuildTypeKHR
AccelerationStructureBuildTypeKHR :: Int32 -> AccelerationStructureBuildTypeKHR
-- | ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR requests the memory
-- requirement for operations performed by the host.
pattern ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR :: AccelerationStructureBuildTypeKHR
-- | ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR requests the
-- memory requirement for operations performed by the device.
pattern ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR :: AccelerationStructureBuildTypeKHR
-- | ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR requests
-- the memory requirement for operations performed by either the host, or
-- the device.
pattern ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR :: AccelerationStructureBuildTypeKHR
-- | VkRayTracingShaderGroupTypeKHR - Shader group types
--
-- Description
--
-- Note
--
-- For current group types, the hit group type could be inferred from the
-- presence or absence of the intersection shader, but we provide the
-- type explicitly for future hit groups that do not have that property.
--
-- See Also
--
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV
newtype RayTracingShaderGroupTypeKHR
RayTracingShaderGroupTypeKHR :: Int32 -> RayTracingShaderGroupTypeKHR
-- | RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR indicates a shader
-- group with a single SHADER_STAGE_RAYGEN_BIT_KHR,
-- SHADER_STAGE_MISS_BIT_KHR, or
-- SHADER_STAGE_CALLABLE_BIT_KHR shader in it.
pattern RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR :: RayTracingShaderGroupTypeKHR
-- | RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR specifies
-- a shader group that only hits triangles and must not contain an
-- intersection shader, only closest hit and any-hit shaders.
pattern RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR :: RayTracingShaderGroupTypeKHR
-- | RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR
-- specifies a shader group that only intersects with custom geometry and
-- must contain an intersection shader and may contain
-- closest hit and any-hit shaders.
pattern RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR :: RayTracingShaderGroupTypeKHR
type KHR_RAY_TRACING_SPEC_VERSION = 8
pattern KHR_RAY_TRACING_SPEC_VERSION :: forall a. Integral a => a
type KHR_RAY_TRACING_EXTENSION_NAME = "VK_KHR_ray_tracing"
pattern KHR_RAY_TRACING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkAccelerationStructureKHR - Opaque handle to an acceleration
-- structure object
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- BindAccelerationStructureMemoryInfoKHR,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- WriteDescriptorSetAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV,
-- cmdCopyAccelerationStructureNV,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- createAccelerationStructureKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV,
-- getAccelerationStructureHandleNV,
-- writeAccelerationStructuresPropertiesKHR
newtype AccelerationStructureKHR
AccelerationStructureKHR :: Word64 -> AccelerationStructureKHR
-- | VkPipelineLibraryCreateInfoKHR - Structure specifying pipeline
-- libraries to use when creating a pipeline
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - If libraryCount is not 0, pLibraries
-- must be a valid pointer to an array of libraryCount
-- valid Pipeline handles
--
--
-- See Also
--
-- Pipeline, RayTracingPipelineCreateInfoKHR,
-- StructureType
data PipelineLibraryCreateInfoKHR
PipelineLibraryCreateInfoKHR :: Vector Pipeline -> PipelineLibraryCreateInfoKHR
-- | pLibraries is an array of pipeline libraries to use when
-- creating a pipeline.
[$sel:libraries:PipelineLibraryCreateInfoKHR] :: PipelineLibraryCreateInfoKHR -> Vector Pipeline
-- | VkDebugReportObjectTypeEXT - Specify the type of an object handle
--
-- Description
--
-- '
--
-- TODO: table
--
-- DebugReportObjectTypeEXT and Vulkan Handle Relationship
--
-- Note
--
-- The primary expected use of ERROR_VALIDATION_FAILED_EXT is for
-- validation layer testing. It is not expected that an application would
-- see this error code during normal use of the validation layers.
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT, debugReportMessageEXT
newtype DebugReportObjectTypeEXT
DebugReportObjectTypeEXT :: Int32 -> DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DebugReportObjectTypeEXT
type SHADER_UNUSED_KHR = 4294967295
pattern SHADER_UNUSED_KHR :: Word32
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupTypeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupTypeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildTypeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildTypeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildTypeKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsTypeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsTypeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.GeometryTypeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.GeometryTypeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.GeometryTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.GeometryTypeKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureTypeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureTypeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureTypeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureTypeKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureModeKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureModeKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureModeKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureModeKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance Data.Bits.Bits Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance GHC.Classes.Ord Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryDataKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.DeviceOrHostAddressConstKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.DeviceOrHostAddressKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupCreateInfoKHR
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.BindAccelerationStructureMemoryInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.BindAccelerationStructureMemoryInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.WriteDescriptorSetAccelerationStructureKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.WriteDescriptorSetAccelerationStructureKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryTrianglesDataKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryTrianglesDataKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryAabbsDataKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryAabbsDataKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryInstancesDataKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryInstancesDataKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryKHR
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildGeometryInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildGeometryInfoKHR es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureInstanceKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureInstanceKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureVersionKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureVersionKHR
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es)
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureToMemoryInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureToMemoryInfoKHR es)
instance GHC.Generics.Generic (Vulkan.Extensions.VK_KHR_ray_tracing.CopyMemoryToAccelerationStructureInfoKHR es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_KHR_ray_tracing.CopyMemoryToAccelerationStructureInfoKHR es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineCreateInfoKHR es)
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupCreateInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupTypeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingShaderGroupTypeKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildTypeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildTypeKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsTypeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureMemoryRequirementsTypeKHR
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildGeometryInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildGeometryInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildGeometryInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildGeometryInfoKHR es)
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureCreateGeometryTypeInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.GeometryTypeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.GeometryTypeKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureTypeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureTypeKHR
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureInfoKHR es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureToMemoryInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureToMemoryInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureToMemoryInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureToMemoryInfoKHR es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_KHR_ray_tracing.CopyMemoryToAccelerationStructureInfoKHR
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_KHR_ray_tracing.CopyMemoryToAccelerationStructureInfoKHR es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_KHR_ray_tracing.CopyMemoryToAccelerationStructureInfoKHR es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_KHR_ray_tracing.CopyMemoryToAccelerationStructureInfoKHR es)
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureModeKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.CopyAccelerationStructureModeKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.BuildAccelerationStructureFlagBitsKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.GeometryFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureInstanceKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureInstanceKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureInstanceKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance GHC.Read.Read Vulkan.Extensions.VK_KHR_ray_tracing.GeometryInstanceFlagBitsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryDataKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryDataKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryTrianglesDataKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryTrianglesDataKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryAabbsDataKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryAabbsDataKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryInstancesDataKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureGeometryInstancesDataKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.DeviceOrHostAddressConstKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.DeviceOrHostAddressConstKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.DeviceOrHostAddressKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.DeviceOrHostAddressKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.RayTracingPipelineInterfaceCreateInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureVersionKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureVersionKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureVersionKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureDeviceAddressInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.TransformMatrixKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AabbPositionsKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.AccelerationStructureBuildOffsetInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.TraceRaysIndirectCommandKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.StridedBufferRegionKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingPropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.PhysicalDeviceRayTracingFeaturesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.WriteDescriptorSetAccelerationStructureKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.WriteDescriptorSetAccelerationStructureKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.WriteDescriptorSetAccelerationStructureKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_ray_tracing.BindAccelerationStructureMemoryInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_ray_tracing.BindAccelerationStructureMemoryInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_ray_tracing.BindAccelerationStructureMemoryInfoKHR
module Vulkan.Extensions.VK_NV_ray_tracing
-- | vkCompileDeferredNV - Deferred compilation of shaders
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Pipeline
compileDeferredNV :: forall io. MonadIO io => Device -> Pipeline -> ("shader" ::: Word32) -> io ()
-- | vkCreateAccelerationStructureNV - Create a new acceleration structure
-- object
--
-- Description
--
-- Similar to other objects in Vulkan, the acceleration structure
-- creation merely creates an object with a specific “shape” as specified
-- by the information in AccelerationStructureInfoNV and
-- compactedSize in pCreateInfo. Populating the data in
-- the object after allocating and binding memory is done with
-- cmdBuildAccelerationStructureNV and
-- cmdCopyAccelerationStructureNV.
--
-- Acceleration structure creation uses the count and type information
-- from the geometries, but does not use the data references in the
-- structures.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureNV, AllocationCallbacks,
-- Device
createAccelerationStructureNV :: forall io. MonadIO io => Device -> AccelerationStructureCreateInfoNV -> ("allocator" ::: Maybe AllocationCallbacks) -> io AccelerationStructureNV
-- | vkGetAccelerationStructureMemoryRequirementsNV - Get acceleration
-- structure memory requirements
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureMemoryRequirementsInfoNV, Device,
-- MemoryRequirements2KHR
getAccelerationStructureMemoryRequirementsNV :: forall a io. (Extendss MemoryRequirements2KHR a, PokeChain a, PeekChain a, MonadIO io) => Device -> AccelerationStructureMemoryRequirementsInfoNV -> io (MemoryRequirements2KHR a)
-- | vkCmdCopyAccelerationStructureNV - Copy an acceleration structure
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- AccelerationStructureKHR, CommandBuffer,
-- CopyAccelerationStructureModeKHR
cmdCopyAccelerationStructureNV :: forall io. MonadIO io => CommandBuffer -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> CopyAccelerationStructureModeKHR -> io ()
-- | vkCmdBuildAccelerationStructureNV - Build an acceleration structure
--
-- Valid Usage
--
--
--
--
-- - dst must have been created with compatible
-- AccelerationStructureInfoNV where
-- AccelerationStructureInfoNV::type and
-- AccelerationStructureInfoNV::flags are identical,
-- AccelerationStructureInfoNV::instanceCount and
-- AccelerationStructureInfoNV::geometryCount for
-- dst are greater than or equal to the build size and each
-- geometry in AccelerationStructureInfoNV::pGeometries
-- for dst has greater than or equal to the number of vertices,
-- indices, and AABBs
-- - If update is TRUE, src must not be
-- NULL_HANDLE
-- - If update is TRUE, src must have
-- been built before with
-- BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV set in
-- AccelerationStructureInfoNV::flags
-- - If update is FALSE, the size member of
-- the MemoryRequirements structure returned from a call to
-- getAccelerationStructureMemoryRequirementsNV with
-- AccelerationStructureMemoryRequirementsInfoNV::accelerationStructure
-- set to dst and
-- AccelerationStructureMemoryRequirementsInfoNV::type
-- set to
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV
-- must be less than or equal to the size of scratch
-- minus scratchOffset
-- - If update is TRUE, the size member of the
-- MemoryRequirements structure returned from a call to
-- getAccelerationStructureMemoryRequirementsNV with
-- AccelerationStructureMemoryRequirementsInfoNV::accelerationStructure
-- set to dst and
-- AccelerationStructureMemoryRequirementsInfoNV::type
-- set to
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV
-- must be less than or equal to the size of scratch
-- minus scratchOffset
-- - scratch must have been created with
-- BUFFER_USAGE_RAY_TRACING_BIT_NV usage flag
-- - If instanceData is not NULL_HANDLE,
-- instanceData must have been created with
-- BUFFER_USAGE_RAY_TRACING_BIT_NV usage flag
-- - If update is TRUE, then objects that were
-- previously active must not be made inactive as per
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#acceleration-structure-inactive-prims
-- - If update is TRUE, then objects that were
-- previously inactive must not be made active as per
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#acceleration-structure-inactive-prims
-- - If update is TRUE, the src and
-- dst objects must either be the same object or not have
-- any memory aliasing
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pInfo must be a valid pointer to a valid
-- AccelerationStructureInfoNV structure
-- - If instanceData is not NULL_HANDLE,
-- instanceData must be a valid Buffer handle
-- - dst must be a valid
-- AccelerationStructureKHR handle
-- - If src is not NULL_HANDLE, src
-- must be a valid AccelerationStructureKHR handle
-- - scratch must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Each of commandBuffer, dst,
-- instanceData, scratch, and src that are
-- valid handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- AccelerationStructureInfoNV, AccelerationStructureKHR,
-- Bool32, Buffer, CommandBuffer, DeviceSize
cmdBuildAccelerationStructureNV :: forall io. MonadIO io => CommandBuffer -> AccelerationStructureInfoNV -> ("instanceData" ::: Buffer) -> ("instanceOffset" ::: DeviceSize) -> ("update" ::: Bool) -> ("dst" ::: AccelerationStructureKHR) -> ("src" ::: AccelerationStructureKHR) -> ("scratch" ::: Buffer) -> ("scratchOffset" ::: DeviceSize) -> io ()
-- | vkCmdTraceRaysNV - Initialize a ray tracing dispatch
--
-- Description
--
-- When the command is executed, a ray generation group of width
-- × height × depth rays is assembled.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - Any shader group handle referenced by this call must have
-- been queried from the currently bound ray tracing shader pipeline
-- - This command must not cause a shader call instruction to be
-- executed from a shader invocation with a recursion depth
-- greater than the value of maxRecursionDepth used to create
-- the bound ray tracing pipeline
-- - If commandBuffer is a protected command buffer, any
-- resource written to by the Pipeline object bound to the
-- pipeline bind point used by this command must not be an
-- unprotected resource
-- - If commandBuffer is a protected command buffer, pipeline
-- stages other than the framebuffer-space and compute stages in the
-- Pipeline object bound to the pipeline bind point must
-- not write to any resource
-- - If raygenShaderBindingTableBuffer is non-sparse then it
-- must be bound completely and contiguously to a single
-- DeviceMemory object
-- - raygenShaderBindingOffset must be less than the
-- size of raygenShaderBindingTableBuffer
-- - raygenShaderBindingOffset must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupBaseAlignment
-- - If missShaderBindingTableBuffer is non-sparse then it
-- must be bound completely and contiguously to a single
-- DeviceMemory object
-- - missShaderBindingOffset must be less than the size
-- of missShaderBindingTableBuffer
-- - missShaderBindingOffset must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupBaseAlignment
-- - If hitShaderBindingTableBuffer is non-sparse then it
-- must be bound completely and contiguously to a single
-- DeviceMemory object
-- - hitShaderBindingOffset must be less than the size
-- of hitShaderBindingTableBuffer
-- - hitShaderBindingOffset must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupBaseAlignment
-- - If callableShaderBindingTableBuffer is non-sparse then it
-- must be bound completely and contiguously to a single
-- DeviceMemory object
-- - callableShaderBindingOffset must be less than the
-- size of callableShaderBindingTableBuffer
-- - callableShaderBindingOffset must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupBaseAlignment
-- - missShaderBindingStride must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupHandleSize
-- - hitShaderBindingStride must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupHandleSize
-- - callableShaderBindingStride must be a multiple of
-- PhysicalDeviceRayTracingPropertiesNV::shaderGroupHandleSize
-- - missShaderBindingStride must be less than or equal
-- to
-- PhysicalDeviceRayTracingPropertiesNV::maxShaderGroupStride
-- - hitShaderBindingStride must be less than or equal
-- to
-- PhysicalDeviceRayTracingPropertiesNV::maxShaderGroupStride
-- - callableShaderBindingStride must be less than or
-- equal to
-- PhysicalDeviceRayTracingPropertiesNV::maxShaderGroupStride
-- - width must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
-- - height must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
-- - depth must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - raygenShaderBindingTableBuffer must be a valid
-- Buffer handle
-- - If missShaderBindingTableBuffer is not
-- NULL_HANDLE, missShaderBindingTableBuffer must
-- be a valid Buffer handle
-- - If hitShaderBindingTableBuffer is not NULL_HANDLE,
-- hitShaderBindingTableBuffer must be a valid
-- Buffer handle
-- - If callableShaderBindingTableBuffer is not
-- NULL_HANDLE, callableShaderBindingTableBuffer
-- must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Each of callableShaderBindingTableBuffer,
-- commandBuffer, hitShaderBindingTableBuffer,
-- missShaderBindingTableBuffer, and
-- raygenShaderBindingTableBuffer that are valid handles of
-- non-ignored parameters must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdTraceRaysNV :: forall io. MonadIO io => CommandBuffer -> ("raygenShaderBindingTableBuffer" ::: Buffer) -> ("raygenShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingTableBuffer" ::: Buffer) -> ("missShaderBindingOffset" ::: DeviceSize) -> ("missShaderBindingStride" ::: DeviceSize) -> ("hitShaderBindingTableBuffer" ::: Buffer) -> ("hitShaderBindingOffset" ::: DeviceSize) -> ("hitShaderBindingStride" ::: DeviceSize) -> ("callableShaderBindingTableBuffer" ::: Buffer) -> ("callableShaderBindingOffset" ::: DeviceSize) -> ("callableShaderBindingStride" ::: DeviceSize) -> ("width" ::: Word32) -> ("height" ::: Word32) -> ("depth" ::: Word32) -> io ()
-- | vkGetAccelerationStructureHandleNV - Get opaque acceleration structure
-- handle
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AccelerationStructureKHR, Device
getAccelerationStructureHandleNV :: forall io. MonadIO io => Device -> AccelerationStructureKHR -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> io ()
-- | vkCreateRayTracingPipelinesNV - Creates a new ray tracing pipeline
-- object
--
-- Valid Usage
--
--
-- - If the flags member of any element of
-- pCreateInfos contains the
-- PIPELINE_CREATE_DERIVATIVE_BIT flag, and the
-- basePipelineIndex member of that same element is not
-- -1, basePipelineIndex must be less than the
-- index into pCreateInfos that corresponds to that element
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If pipelineCache is not NULL_HANDLE,
-- pipelineCache must be a valid PipelineCache
-- handle
-- - pCreateInfos must be a valid pointer to an array
-- of createInfoCount valid
-- RayTracingPipelineCreateInfoNV structures
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pPipelines must be a valid pointer to an array of
-- createInfoCount Pipeline handles
-- - createInfoCount must be greater than
-- 0
-- - If pipelineCache is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Pipeline,
-- PipelineCache, RayTracingPipelineCreateInfoNV
createRayTracingPipelinesNV :: forall io. MonadIO io => Device -> PipelineCache -> ("createInfos" ::: Vector (SomeStruct RayTracingPipelineCreateInfoNV)) -> ("allocator" ::: Maybe AllocationCallbacks) -> io (Result, "pipelines" ::: Vector Pipeline)
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV :: StructureType
pattern SHADER_STAGE_RAYGEN_BIT_NV :: ShaderStageFlagBits
pattern SHADER_STAGE_ANY_HIT_BIT_NV :: ShaderStageFlagBits
pattern SHADER_STAGE_CLOSEST_HIT_BIT_NV :: ShaderStageFlagBits
pattern SHADER_STAGE_MISS_BIT_NV :: ShaderStageFlagBits
pattern SHADER_STAGE_INTERSECTION_BIT_NV :: ShaderStageFlagBits
pattern SHADER_STAGE_CALLABLE_BIT_NV :: ShaderStageFlagBits
pattern PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV :: PipelineStageFlagBits
pattern PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV :: PipelineStageFlagBits
pattern BUFFER_USAGE_RAY_TRACING_BIT_NV :: BufferUsageFlagBits
pattern PIPELINE_BIND_POINT_RAY_TRACING_NV :: PipelineBindPoint
pattern DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV :: DescriptorType
pattern ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV :: AccessFlagBits
pattern ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV :: AccessFlagBits
pattern QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV :: QueryType
pattern OBJECT_TYPE_ACCELERATION_STRUCTURE_NV :: ObjectType
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT :: DebugReportObjectTypeEXT
pattern INDEX_TYPE_NONE_NV :: IndexType
pattern RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV :: RayTracingShaderGroupTypeKHR
pattern RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV :: RayTracingShaderGroupTypeKHR
pattern RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV :: RayTracingShaderGroupTypeKHR
pattern GEOMETRY_TYPE_TRIANGLES_NV :: GeometryTypeKHR
pattern GEOMETRY_TYPE_AABBS_NV :: GeometryTypeKHR
pattern ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV :: AccelerationStructureTypeKHR
pattern ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV :: AccelerationStructureTypeKHR
pattern GEOMETRY_OPAQUE_BIT_NV :: GeometryFlagBitsKHR
pattern GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV :: GeometryFlagBitsKHR
pattern GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV :: GeometryInstanceFlagBitsKHR
pattern GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV :: GeometryInstanceFlagBitsKHR
pattern GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV :: GeometryInstanceFlagBitsKHR
pattern GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV :: GeometryInstanceFlagBitsKHR
pattern BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV :: BuildAccelerationStructureFlagBitsKHR
pattern BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV :: BuildAccelerationStructureFlagBitsKHR
pattern BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV :: BuildAccelerationStructureFlagBitsKHR
pattern BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV :: BuildAccelerationStructureFlagBitsKHR
pattern BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV :: BuildAccelerationStructureFlagBitsKHR
pattern COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV :: CopyAccelerationStructureModeKHR
pattern COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV :: CopyAccelerationStructureModeKHR
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV :: AccelerationStructureMemoryRequirementsTypeKHR
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV :: AccelerationStructureMemoryRequirementsTypeKHR
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV :: AccelerationStructureMemoryRequirementsTypeKHR
destroyAccelerationStructureNV :: MonadIO io => Device -> AccelerationStructureKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
bindAccelerationStructureMemoryNV :: MonadIO io => Device -> ("bindInfos" ::: Vector BindAccelerationStructureMemoryInfoKHR) -> io ()
cmdWriteAccelerationStructuresPropertiesNV :: MonadIO io => CommandBuffer -> ("accelerationStructures" ::: Vector AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> io ()
getRayTracingShaderGroupHandlesNV :: MonadIO io => Device -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> io ()
pattern SHADER_UNUSED_NV :: Word32
-- | VkRayTracingShaderGroupCreateInfoNV - Structure specifying shaders in
-- a shader group
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- RayTracingPipelineCreateInfoNV,
-- RayTracingShaderGroupTypeKHR, StructureType
data RayTracingShaderGroupCreateInfoNV
RayTracingShaderGroupCreateInfoNV :: RayTracingShaderGroupTypeKHR -> Word32 -> Word32 -> Word32 -> Word32 -> RayTracingShaderGroupCreateInfoNV
-- | type is the type of hit group specified in this structure.
[$sel:type':RayTracingShaderGroupCreateInfoNV] :: RayTracingShaderGroupCreateInfoNV -> RayTracingShaderGroupTypeKHR
-- | generalShader is the index of the ray generation, miss, or
-- callable shader from
-- RayTracingPipelineCreateInfoNV::pStages in the group
-- if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV, and
-- SHADER_UNUSED_NV otherwise.
[$sel:generalShader:RayTracingShaderGroupCreateInfoNV] :: RayTracingShaderGroupCreateInfoNV -> Word32
-- | closestHitShader is the optional index of the closest hit
-- shader from RayTracingPipelineCreateInfoNV::pStages in
-- the group if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV or
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV, and
-- SHADER_UNUSED_NV otherwise.
[$sel:closestHitShader:RayTracingShaderGroupCreateInfoNV] :: RayTracingShaderGroupCreateInfoNV -> Word32
-- | anyHitShader is the optional index of the any-hit shader from
-- RayTracingPipelineCreateInfoNV::pStages in the group
-- if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV or
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV, and
-- SHADER_UNUSED_NV otherwise.
[$sel:anyHitShader:RayTracingShaderGroupCreateInfoNV] :: RayTracingShaderGroupCreateInfoNV -> Word32
-- | intersectionShader is the index of the intersection shader
-- from RayTracingPipelineCreateInfoNV::pStages in the
-- group if the shader group has type of
-- RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV, and
-- SHADER_UNUSED_NV otherwise.
[$sel:intersectionShader:RayTracingShaderGroupCreateInfoNV] :: RayTracingShaderGroupCreateInfoNV -> Word32
-- | VkRayTracingPipelineCreateInfoNV - Structure specifying parameters of
-- a newly created ray tracing pipeline
--
-- Description
--
-- The parameters basePipelineHandle and
-- basePipelineIndex are described in more detail in Pipeline
-- Derivatives.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of PipelineCreationFeedbackCreateInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be a valid combination of
-- PipelineCreateFlagBits values
-- - pStages must be a valid pointer to an array of
-- stageCount valid PipelineShaderStageCreateInfo
-- structures
-- - pGroups must be a valid pointer to an array of
-- groupCount valid RayTracingShaderGroupCreateInfoNV
-- structures
-- - layout must be a valid PipelineLayout
-- handle
-- - stageCount must be greater than 0
-- - groupCount must be greater than 0
-- - Both of basePipelineHandle, and layout that are
-- valid handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Device
--
--
-- See Also
--
-- Pipeline, PipelineCreateFlags, PipelineLayout,
-- PipelineShaderStageCreateInfo,
-- RayTracingShaderGroupCreateInfoNV, StructureType,
-- createRayTracingPipelinesNV
data RayTracingPipelineCreateInfoNV (es :: [Type])
RayTracingPipelineCreateInfoNV :: Chain es -> PipelineCreateFlags -> Vector (SomeStruct PipelineShaderStageCreateInfo) -> Vector RayTracingShaderGroupCreateInfoNV -> Word32 -> PipelineLayout -> Pipeline -> Int32 -> RayTracingPipelineCreateInfoNV (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> Chain es
-- | flags is a bitmask of PipelineCreateFlagBits
-- specifying how the pipeline will be generated.
[$sel:flags:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> PipelineCreateFlags
-- | pStages is an array of size stageCount structures of
-- type PipelineShaderStageCreateInfo describing the set of the
-- shader stages to be included in the ray tracing pipeline.
[$sel:stages:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> Vector (SomeStruct PipelineShaderStageCreateInfo)
-- | pGroups is an array of size groupCount structures of
-- type RayTracingShaderGroupCreateInfoNV describing the set of
-- the shader stages to be included in each shader group in the ray
-- tracing pipeline.
[$sel:groups:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> Vector RayTracingShaderGroupCreateInfoNV
-- | maxRecursionDepth is the maximum recursion depth of
-- shaders executed by this pipeline.
[$sel:maxRecursionDepth:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> Word32
-- | layout is the description of binding locations used by both
-- the pipeline and descriptor sets used with the pipeline.
[$sel:layout:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> PipelineLayout
-- | basePipelineHandle is a pipeline to derive from.
[$sel:basePipelineHandle:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> Pipeline
-- | basePipelineIndex is an index into the pCreateInfos
-- parameter to use as a pipeline to derive from.
[$sel:basePipelineIndex:RayTracingPipelineCreateInfoNV] :: RayTracingPipelineCreateInfoNV (es :: [Type]) -> Int32
-- | VkGeometryTrianglesNV - Structure specifying a triangle geometry in a
-- bottom-level acceleration structure
--
-- Description
--
-- If indexType is INDEX_TYPE_NONE_NV, then this
-- structure describes a set of triangles determined by
-- vertexCount. Otherwise, this structure describes a set of
-- indexed triangles determined by indexCount.
--
-- Valid Usage
--
--
-- - vertexOffset must be less than the size of
-- vertexData
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - If vertexData is not NULL_HANDLE,
-- vertexData must be a valid Buffer handle
-- - vertexFormat must be a valid Format
-- value
-- - If indexData is not NULL_HANDLE,
-- indexData must be a valid Buffer handle
-- - indexType must be a valid IndexType
-- value
-- - If transformData is not NULL_HANDLE,
-- transformData must be a valid Buffer
-- handle
-- - Each of indexData, transformData, and
-- vertexData that are valid handles of non-ignored parameters
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- See Also
--
-- Buffer, DeviceSize, Format,
-- GeometryDataNV, IndexType, StructureType
data GeometryTrianglesNV
GeometryTrianglesNV :: Buffer -> DeviceSize -> Word32 -> DeviceSize -> Format -> Buffer -> DeviceSize -> Word32 -> IndexType -> Buffer -> DeviceSize -> GeometryTrianglesNV
-- | vertexData is the buffer containing vertex data for this
-- geometry.
[$sel:vertexData:GeometryTrianglesNV] :: GeometryTrianglesNV -> Buffer
-- | vertexOffset is the offset in bytes within
-- vertexData containing vertex data for this geometry.
[$sel:vertexOffset:GeometryTrianglesNV] :: GeometryTrianglesNV -> DeviceSize
-- | vertexCount is the number of valid vertices.
[$sel:vertexCount:GeometryTrianglesNV] :: GeometryTrianglesNV -> Word32
-- | vertexStride is the stride in bytes between each vertex.
[$sel:vertexStride:GeometryTrianglesNV] :: GeometryTrianglesNV -> DeviceSize
-- | vertexFormat is a Format describing the format of each
-- vertex element.
[$sel:vertexFormat:GeometryTrianglesNV] :: GeometryTrianglesNV -> Format
-- | indexData is the buffer containing index data for this
-- geometry.
[$sel:indexData:GeometryTrianglesNV] :: GeometryTrianglesNV -> Buffer
-- | indexOffset is the offset in bytes within indexData
-- containing index data for this geometry.
[$sel:indexOffset:GeometryTrianglesNV] :: GeometryTrianglesNV -> DeviceSize
-- | indexCount is the number of indices to include in this
-- geometry.
[$sel:indexCount:GeometryTrianglesNV] :: GeometryTrianglesNV -> Word32
-- | indexType is a IndexType describing the format of each
-- index.
[$sel:indexType:GeometryTrianglesNV] :: GeometryTrianglesNV -> IndexType
-- | transformData is an optional buffer containing an
-- TransformMatrixNV structure defining a transformation to be
-- applied to this geometry.
[$sel:transformData:GeometryTrianglesNV] :: GeometryTrianglesNV -> Buffer
-- | transformOffset is the offset in bytes in
-- transformData of the transform information described above.
[$sel:transformOffset:GeometryTrianglesNV] :: GeometryTrianglesNV -> DeviceSize
-- | VkGeometryAABBNV - Structure specifying axis-aligned bounding box
-- geometry in a bottom-level acceleration structure
--
-- Description
--
-- The AABB data in memory is six 32-bit floats consisting of the minimum
-- x, y, and z values followed by the maximum x, y, and z values.
--
-- Valid Usage
--
--
-- - offset must be less than the size of
-- aabbData
--
--
--
-- - offset must be a multiple of 8
-- - stride must be a multiple of 8
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - If aabbData is not NULL_HANDLE, aabbData
-- must be a valid Buffer handle
--
--
-- See Also
--
-- Buffer, DeviceSize, GeometryDataNV,
-- StructureType
data GeometryAABBNV
GeometryAABBNV :: Buffer -> Word32 -> Word32 -> DeviceSize -> GeometryAABBNV
-- | aabbData is the buffer containing axis-aligned bounding box
-- data.
[$sel:aabbData:GeometryAABBNV] :: GeometryAABBNV -> Buffer
-- | numAABBs is the number of AABBs in this geometry.
[$sel:numAABBs:GeometryAABBNV] :: GeometryAABBNV -> Word32
-- | stride is the stride in bytes between AABBs in
-- aabbData.
[$sel:stride:GeometryAABBNV] :: GeometryAABBNV -> Word32
-- | offset is the offset in bytes of the first AABB in
-- aabbData.
[$sel:offset:GeometryAABBNV] :: GeometryAABBNV -> DeviceSize
-- | VkGeometryDataNV - Structure specifying geometry in a bottom-level
-- acceleration structure
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV
data GeometryDataNV
GeometryDataNV :: GeometryTrianglesNV -> GeometryAABBNV -> GeometryDataNV
-- | triangles contains triangle data if
-- GeometryNV::geometryType is
-- GEOMETRY_TYPE_TRIANGLES_NV.
--
-- triangles must be a valid GeometryTrianglesNV
-- structure
[$sel:triangles:GeometryDataNV] :: GeometryDataNV -> GeometryTrianglesNV
-- | aabbs contains axis-aligned bounding box data if
-- GeometryNV::geometryType is
-- GEOMETRY_TYPE_AABBS_NV.
--
-- aabbs must be a valid GeometryAABBNV structure
[$sel:aabbs:GeometryDataNV] :: GeometryDataNV -> GeometryAABBNV
-- | VkGeometryNV - Structure specifying a geometry in a bottom-level
-- acceleration structure
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureInfoNV, GeometryDataNV,
-- GeometryFlagsKHR, GeometryTypeKHR, StructureType
data GeometryNV
GeometryNV :: GeometryTypeKHR -> GeometryDataNV -> GeometryFlagsKHR -> GeometryNV
-- | geometryType specifies the GeometryTypeKHR which this
-- geometry refers to.
--
-- geometryType must be GEOMETRY_TYPE_TRIANGLES_NV
-- or GEOMETRY_TYPE_AABBS_NV
--
-- geometryType must be a valid GeometryTypeKHR
-- value
[$sel:geometryType:GeometryNV] :: GeometryNV -> GeometryTypeKHR
-- | geometry contains the geometry data as described in
-- GeometryDataNV.
--
-- geometry must be a valid GeometryDataNV
-- structure
[$sel:geometry:GeometryNV] :: GeometryNV -> GeometryDataNV
-- | flags has GeometryFlagBitsKHR describing options for
-- this geometry.
--
-- flags must be a valid combination of
-- GeometryFlagBitsKHR values
[$sel:flags:GeometryNV] :: GeometryNV -> GeometryFlagsKHR
-- | VkAccelerationStructureInfoNV - Structure specifying the parameters of
-- acceleration structure object
--
-- Description
--
-- AccelerationStructureInfoNV contains information that is used
-- both for acceleration structure creation with
-- createAccelerationStructureNV and in combination with the
-- actual geometric data to build the acceleration structure with
-- cmdBuildAccelerationStructureNV.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureTypeNV,
-- BuildAccelerationStructureFlagsNV, GeometryNV,
-- StructureType, cmdBuildAccelerationStructureNV
data AccelerationStructureInfoNV
AccelerationStructureInfoNV :: AccelerationStructureTypeNV -> BuildAccelerationStructureFlagsNV -> Word32 -> Vector GeometryNV -> AccelerationStructureInfoNV
-- | type is a AccelerationStructureTypeNV value specifying
-- the type of acceleration structure that will be created.
[$sel:type':AccelerationStructureInfoNV] :: AccelerationStructureInfoNV -> AccelerationStructureTypeNV
-- | flags is a bitmask of
-- BuildAccelerationStructureFlagBitsNV specifying additional
-- parameters of the acceleration structure.
[$sel:flags:AccelerationStructureInfoNV] :: AccelerationStructureInfoNV -> BuildAccelerationStructureFlagsNV
-- | instanceCount specifies the number of instances that will be
-- in the new acceleration structure.
[$sel:instanceCount:AccelerationStructureInfoNV] :: AccelerationStructureInfoNV -> Word32
-- | pGeometries is a pointer to an array of
-- geometryCount GeometryNV structures containing the
-- scene data being passed into the acceleration structure.
[$sel:geometries:AccelerationStructureInfoNV] :: AccelerationStructureInfoNV -> Vector GeometryNV
-- | VkAccelerationStructureCreateInfoNV - Structure specifying the
-- parameters of a newly created acceleration structure object
--
-- Valid Usage
--
--
-- - If compactedSize is not 0 then both
-- info.geometryCount and info.instanceCount
-- must be 0
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AccelerationStructureInfoNV, DeviceSize,
-- StructureType, createAccelerationStructureNV
data AccelerationStructureCreateInfoNV
AccelerationStructureCreateInfoNV :: DeviceSize -> AccelerationStructureInfoNV -> AccelerationStructureCreateInfoNV
-- | compactedSize is the size from the result of
-- cmdWriteAccelerationStructuresPropertiesNV if this acceleration
-- structure is going to be the target of a compacting copy.
[$sel:compactedSize:AccelerationStructureCreateInfoNV] :: AccelerationStructureCreateInfoNV -> DeviceSize
-- | info is the AccelerationStructureInfoNV structure
-- specifying further parameters of the created acceleration structure.
[$sel:info:AccelerationStructureCreateInfoNV] :: AccelerationStructureCreateInfoNV -> AccelerationStructureInfoNV
-- | VkAccelerationStructureMemoryRequirementsInfoNV - Structure specifying
-- acceleration to query for memory requirements
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccelerationStructureMemoryRequirementsTypeNV,
-- AccelerationStructureNV, StructureType,
-- getAccelerationStructureMemoryRequirementsNV
data AccelerationStructureMemoryRequirementsInfoNV
AccelerationStructureMemoryRequirementsInfoNV :: AccelerationStructureMemoryRequirementsTypeNV -> AccelerationStructureNV -> AccelerationStructureMemoryRequirementsInfoNV
-- | type selects the type of memory requirement being queried.
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV
-- returns the memory requirements for the object itself.
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV
-- returns the memory requirements for the scratch memory when doing a
-- build.
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV
-- returns the memory requirements for the scratch memory when doing an
-- update.
--
-- type must be a valid
-- AccelerationStructureMemoryRequirementsTypeNV value
[$sel:type':AccelerationStructureMemoryRequirementsInfoNV] :: AccelerationStructureMemoryRequirementsInfoNV -> AccelerationStructureMemoryRequirementsTypeNV
-- | accelerationStructure is the acceleration structure to be
-- queried for memory requirements.
--
-- accelerationStructure must be a valid
-- AccelerationStructureNV handle
[$sel:accelerationStructure:AccelerationStructureMemoryRequirementsInfoNV] :: AccelerationStructureMemoryRequirementsInfoNV -> AccelerationStructureNV
-- | VkPhysicalDeviceRayTracingPropertiesNV - Properties of the physical
-- device for ray tracing
--
-- Description
--
-- If the PhysicalDeviceRayTracingPropertiesNV structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Limits specified by this structure must match those specified
-- with the same name in PhysicalDeviceRayTracingPropertiesKHR.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceRayTracingPropertiesNV
PhysicalDeviceRayTracingPropertiesNV :: Word32 -> Word32 -> Word32 -> Word32 -> Word64 -> Word64 -> Word64 -> Word32 -> PhysicalDeviceRayTracingPropertiesNV
-- | shaderGroupHandleSize size in bytes of the shader header.
[$sel:shaderGroupHandleSize:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word32
-- | maxRecursionDepth is the maximum number of levels of
-- recursion allowed in a trace command.
[$sel:maxRecursionDepth:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word32
-- | maxShaderGroupStride is the maximum stride in bytes allowed
-- between shader groups in the SBT.
[$sel:maxShaderGroupStride:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word32
-- | shaderGroupBaseAlignment is the required alignment in bytes
-- for the base of the SBTs.
[$sel:shaderGroupBaseAlignment:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word32
-- | maxGeometryCount is the maximum number of geometries in the
-- bottom level acceleration structure.
[$sel:maxGeometryCount:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word64
-- | maxInstanceCount is the maximum number of instances in the
-- top level acceleration structure.
[$sel:maxInstanceCount:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word64
-- | maxTriangleCount is the maximum number of triangles in all
-- geometries in the bottom level acceleration structure.
[$sel:maxTriangleCount:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word64
-- | maxDescriptorSetAccelerationStructures is the maximum number
-- of acceleration structure descriptors that are allowed in a descriptor
-- set.
[$sel:maxDescriptorSetAccelerationStructures:PhysicalDeviceRayTracingPropertiesNV] :: PhysicalDeviceRayTracingPropertiesNV -> Word32
type GeometryFlagsNV = GeometryFlagsKHR
type GeometryInstanceFlagsNV = GeometryInstanceFlagsKHR
type BuildAccelerationStructureFlagsNV = BuildAccelerationStructureFlagsKHR
type AccelerationStructureNV = AccelerationStructureKHR
type GeometryFlagBitsNV = GeometryFlagBitsKHR
type GeometryInstanceFlagBitsNV = GeometryInstanceFlagBitsKHR
type BuildAccelerationStructureFlagBitsNV = BuildAccelerationStructureFlagBitsKHR
type CopyAccelerationStructureModeNV = CopyAccelerationStructureModeKHR
type AccelerationStructureTypeNV = AccelerationStructureTypeKHR
type GeometryTypeNV = GeometryTypeKHR
type RayTracingShaderGroupTypeNV = RayTracingShaderGroupTypeKHR
type AccelerationStructureMemoryRequirementsTypeNV = AccelerationStructureMemoryRequirementsTypeKHR
type BindAccelerationStructureMemoryInfoNV = BindAccelerationStructureMemoryInfoKHR
type WriteDescriptorSetAccelerationStructureNV = WriteDescriptorSetAccelerationStructureKHR
type AabbPositionsNV = AabbPositionsKHR
type TransformMatrixNV = TransformMatrixKHR
type AccelerationStructureInstanceNV = AccelerationStructureInstanceKHR
type NV_RAY_TRACING_SPEC_VERSION = 3
pattern NV_RAY_TRACING_SPEC_VERSION :: forall a. Integral a => a
type NV_RAY_TRACING_EXTENSION_NAME = "VK_NV_ray_tracing"
pattern NV_RAY_TRACING_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkAccelerationStructureKHR - Opaque handle to an acceleration
-- structure object
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- BindAccelerationStructureMemoryInfoKHR,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- WriteDescriptorSetAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV,
-- cmdCopyAccelerationStructureNV,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- createAccelerationStructureKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV,
-- getAccelerationStructureHandleNV,
-- writeAccelerationStructuresPropertiesKHR
newtype AccelerationStructureKHR
AccelerationStructureKHR :: Word64 -> AccelerationStructureKHR
-- | VkBindAccelerationStructureMemoryInfoKHR - Structure specifying
-- acceleration structure memory binding
--
-- Valid Usage
--
--
-- - accelerationStructure must not already be backed
-- by a memory object
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - accelerationStructure must be a valid
-- AccelerationStructureKHR handle
-- - memory must be a valid DeviceMemory
-- handle
-- - If deviceIndexCount is not 0,
-- pDeviceIndices must be a valid pointer to an array of
-- deviceIndexCount uint32_t values
-- - Both of accelerationStructure, and memory
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- See Also
--
-- AccelerationStructureKHR, DeviceMemory,
-- DeviceSize, StructureType,
-- bindAccelerationStructureMemoryKHR,
-- bindAccelerationStructureMemoryNV
data BindAccelerationStructureMemoryInfoKHR
BindAccelerationStructureMemoryInfoKHR :: AccelerationStructureKHR -> DeviceMemory -> DeviceSize -> Vector Word32 -> BindAccelerationStructureMemoryInfoKHR
-- | accelerationStructure is the acceleration structure to be
-- attached to memory.
[$sel:accelerationStructure:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> AccelerationStructureKHR
-- | memory is a DeviceMemory object describing the device
-- memory to attach.
[$sel:memory:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> DeviceMemory
-- | memoryOffset is the start offset of the region of memory that
-- is to be bound to the acceleration structure. The number of bytes
-- returned in the MemoryRequirements::size member in
-- memory, starting from memoryOffset bytes, will be
-- bound to the specified acceleration structure.
[$sel:memoryOffset:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> DeviceSize
-- | pDeviceIndices is a pointer to an array of device indices.
[$sel:deviceIndices:BindAccelerationStructureMemoryInfoKHR] :: BindAccelerationStructureMemoryInfoKHR -> Vector Word32
-- | VkWriteDescriptorSetAccelerationStructureKHR - Structure specifying
-- acceleration structure descriptor info
--
-- Valid Usage
--
--
-- - accelerationStructureCount must be equal to
-- descriptorCount in the extended structure
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pAccelerationStructures must be a valid pointer to
-- an array of accelerationStructureCount valid
-- AccelerationStructureKHR handles
-- - accelerationStructureCount must be greater than
-- 0
--
--
-- See Also
--
-- AccelerationStructureKHR, StructureType
data WriteDescriptorSetAccelerationStructureKHR
WriteDescriptorSetAccelerationStructureKHR :: Vector AccelerationStructureKHR -> WriteDescriptorSetAccelerationStructureKHR
-- | pAccelerationStructures are the acceleration structures to
-- update.
[$sel:accelerationStructures:WriteDescriptorSetAccelerationStructureKHR] :: WriteDescriptorSetAccelerationStructureKHR -> Vector AccelerationStructureKHR
-- | VkAabbPositionsKHR - Structure specifying two opposing corners of an
-- axis-aligned bounding box
--
-- Valid Usage
--
-- See Also
--
-- No cross-references are available
data AabbPositionsKHR
AabbPositionsKHR :: Float -> Float -> Float -> Float -> Float -> Float -> AabbPositionsKHR
-- | minX is the x position of one opposing corner of a bounding
-- box.
--
-- minX must be less than or equal to maxX
[$sel:minX:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | minY is the y position of one opposing corner of a bounding
-- box.
--
-- minY must be less than or equal to maxY
[$sel:minY:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | minZ is the z position of one opposing corner of a bounding
-- box.
--
-- minZ must be less than or equal to maxZ
[$sel:minZ:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | maxX is the x position of the other opposing corner of a
-- bounding box.
[$sel:maxX:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | maxY is the y position of the other opposing corner of a
-- bounding box.
[$sel:maxY:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | maxZ is the z position of the other opposing corner of a
-- bounding box.
[$sel:maxZ:AabbPositionsKHR] :: AabbPositionsKHR -> Float
-- | VkTransformMatrixKHR - Structure specifying a 3x4 affine
-- transformation matrix
--
-- See Also
--
-- AccelerationStructureInstanceKHR
data TransformMatrixKHR
TransformMatrixKHR :: ((Float, Float, Float, Float), (Float, Float, Float, Float), (Float, Float, Float, Float)) -> TransformMatrixKHR
-- | matrix is a 3x4 row-major affine transformation matrix.
[$sel:matrix:TransformMatrixKHR] :: TransformMatrixKHR -> ((Float, Float, Float, Float), (Float, Float, Float, Float), (Float, Float, Float, Float))
-- | VkAccelerationStructureInstanceKHR - Structure specifying a single
-- acceleration structure instance for building into an acceleration
-- structure geometry
--
-- Description
--
-- The C language spec does not define the ordering of bit-fields, but in
-- practice, this struct produces the correct layout with existing
-- compilers. The intended bit pattern is for the following:
--
-- If a compiler produces code that diverges from that pattern,
-- applications must employ another method to set values according
-- to the correct bit pattern.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- GeometryInstanceFlagsKHR, TransformMatrixKHR
data AccelerationStructureInstanceKHR
AccelerationStructureInstanceKHR :: TransformMatrixKHR -> Word32 -> Word32 -> Word32 -> GeometryInstanceFlagsKHR -> Word64 -> AccelerationStructureInstanceKHR
-- | transform is a TransformMatrixKHR structure describing
-- a transformation to be applied to the acceleration structure.
[$sel:transform:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> TransformMatrixKHR
-- | instanceCustomIndex a 24-bit user-specified index value
-- accessible to ray shaders in the InstanceCustomIndexKHR
-- built-in.
--
-- instanceCustomIndex and mask occupy the same memory
-- as if a single int32_t was specified in their place
--
--
-- - instanceCustomIndex occupies the 24 least significant
-- bits of that memory
-- - mask occupies the 8 most significant bits of that
-- memory
--
[$sel:instanceCustomIndex:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word32
-- | mask is an 8-bit visibility mask for the geometry. The
-- instance may only be hit if rayMask & instance.mask !=
-- 0
[$sel:mask:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word32
-- | instanceShaderBindingTableRecordOffset is a 24-bit offset
-- used in calculating the hit shader binding table index.
--
-- instanceShaderBindingTableRecordOffset and flags
-- occupy the same memory as if a single int32_t was specified
-- in their place
--
--
-- - instanceShaderBindingTableRecordOffset occupies the 24
-- least significant bits of that memory
-- - flags occupies the 8 most significant bits of that
-- memory
--
[$sel:instanceShaderBindingTableRecordOffset:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word32
-- | flags is an 8-bit mask of GeometryInstanceFlagBitsKHR
-- values to apply to this instance.
--
-- flags must be a valid combination of
-- GeometryInstanceFlagBitsKHR values
[$sel:flags:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> GeometryInstanceFlagsKHR
-- | accelerationStructureReference is either:
--
--
[$sel:accelerationStructureReference:AccelerationStructureInstanceKHR] :: AccelerationStructureInstanceKHR -> Word64
-- | vkDestroyAccelerationStructureKHR - Destroy an acceleration structure
-- object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to
-- accelerationStructure must have completed
-- execution
--
--
--
-- - If AllocationCallbacks were provided when
-- accelerationStructure was created, a compatible set of
-- callbacks must be provided here
-- - If no AllocationCallbacks were provided when
-- accelerationStructure was created, pAllocator
-- must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If accelerationStructure is not NULL_HANDLE,
-- accelerationStructure must be a valid
-- AccelerationStructureKHR handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If accelerationStructure is a valid handle, it
-- must have been created, allocated, or retrieved from
-- device
--
--
-- Host Synchronization
--
--
-- - Host access to accelerationStructure must be
-- externally synchronized
--
--
-- See Also
--
-- AccelerationStructureKHR, AllocationCallbacks,
-- Device
destroyAccelerationStructureKHR :: forall io. MonadIO io => Device -> AccelerationStructureKHR -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkBindAccelerationStructureMemoryKHR - Bind acceleration structure
-- memory
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- BindAccelerationStructureMemoryInfoKHR, Device
bindAccelerationStructureMemoryKHR :: forall io. MonadIO io => Device -> ("bindInfos" ::: Vector BindAccelerationStructureMemoryInfoKHR) -> io ()
-- | vkCmdWriteAccelerationStructuresPropertiesKHR - Write acceleration
-- structure result parameters to query results.
--
-- Valid Usage
--
--
-- - queryPool must have been created with a
-- queryType matching queryType
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pAccelerationStructures must be a valid pointer to
-- an array of accelerationStructureCount valid
-- AccelerationStructureKHR handles
-- - queryType must be a valid QueryType
-- value
-- - queryPool must be a valid QueryPool
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - accelerationStructureCount must be greater than
-- 0
-- - Each of commandBuffer, queryPool, and the
-- elements of pAccelerationStructures must have been
-- created, allocated, or retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- AccelerationStructureKHR, CommandBuffer,
-- QueryPool, QueryType
cmdWriteAccelerationStructuresPropertiesKHR :: forall io. MonadIO io => CommandBuffer -> ("accelerationStructures" ::: Vector AccelerationStructureKHR) -> QueryType -> QueryPool -> ("firstQuery" ::: Word32) -> io ()
-- | vkGetRayTracingShaderGroupHandlesKHR - Query ray tracing pipeline
-- shader group handles
--
-- Valid Usage
--
--
-- - firstGroup must be less than the number of shader
-- groups in pipeline
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pipeline must be a valid Pipeline
-- handle
-- - pData must be a valid pointer to an array of
-- dataSize bytes
-- - dataSize must be greater than 0
-- - pipeline must have been created, allocated, or
-- retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Pipeline
getRayTracingShaderGroupHandlesKHR :: forall io. MonadIO io => Device -> Pipeline -> ("firstGroup" ::: Word32) -> ("groupCount" ::: Word32) -> ("dataSize" ::: Word64) -> ("data" ::: Ptr ()) -> io ()
-- | VkDebugReportObjectTypeEXT - Specify the type of an object handle
--
-- Description
--
-- '
--
-- TODO: table
--
-- DebugReportObjectTypeEXT and Vulkan Handle Relationship
--
-- Note
--
-- The primary expected use of ERROR_VALIDATION_FAILED_EXT is for
-- validation layer testing. It is not expected that an application would
-- see this error code during normal use of the validation layers.
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT, debugReportMessageEXT
newtype DebugReportObjectTypeEXT
DebugReportObjectTypeEXT :: Int32 -> DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DebugReportObjectTypeEXT
-- | VkGeometryInstanceFlagBitsKHR - Instance flag bits
--
-- Description
--
-- GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR and
-- GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR must not be used
-- in the same flag.
--
-- See Also
--
-- GeometryInstanceFlagsKHR
newtype GeometryInstanceFlagBitsKHR
GeometryInstanceFlagBitsKHR :: Flags -> GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR disables
-- face culling for this instance.
pattern GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR :: GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR
-- indicates that the front face of the triangle for culling purposes is
-- the face that is counter clockwise in object space relative to the ray
-- origin. Because the facing is determined in object space, an instance
-- transform matrix does not change the winding, but a geometry transform
-- does.
pattern GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR :: GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR causes this instance to
-- act as though GEOMETRY_OPAQUE_BIT_KHR were specified on all
-- geometries referenced by this instance. This behavior can be
-- overridden by the SPIR-V NoOpaqueKHR ray flag.
pattern GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR :: GeometryInstanceFlagBitsKHR
-- | GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR causes this instance
-- to act as though GEOMETRY_OPAQUE_BIT_KHR were not specified on
-- all geometries referenced by this instance. This behavior can
-- be overridden by the SPIR-V OpaqueKHR ray flag.
pattern GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR :: GeometryInstanceFlagBitsKHR
type GeometryInstanceFlagsKHR = GeometryInstanceFlagBitsKHR
-- | VkGeometryFlagBitsKHR - Bitmask specifying additional parameters for a
-- geometry
--
-- See Also
--
-- GeometryFlagsKHR
newtype GeometryFlagBitsKHR
GeometryFlagBitsKHR :: Flags -> GeometryFlagBitsKHR
-- | GEOMETRY_OPAQUE_BIT_KHR indicates that this geometry does not
-- invoke the any-hit shaders even if present in a hit group.
pattern GEOMETRY_OPAQUE_BIT_KHR :: GeometryFlagBitsKHR
-- | GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR indicates that
-- the implementation must only call the any-hit shader a single
-- time for each primitive in this geometry. If this bit is absent an
-- implementation may invoke the any-hit shader more than once for
-- this geometry.
pattern GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR :: GeometryFlagBitsKHR
type GeometryFlagsKHR = GeometryFlagBitsKHR
-- | VkBuildAccelerationStructureFlagBitsKHR - Bitmask specifying
-- additional parameters for acceleration structure builds
--
-- Description
--
-- Note
--
-- BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR and
-- BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR
-- may take more time and memory than a normal build, and so
-- should only be used when those features are needed.
--
-- See Also
--
-- BuildAccelerationStructureFlagsKHR
newtype BuildAccelerationStructureFlagBitsKHR
BuildAccelerationStructureFlagBitsKHR :: Flags -> BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR indicates
-- that the specified acceleration structure can be updated with
-- update of TRUE in
-- cmdBuildAccelerationStructureKHR or
-- cmdBuildAccelerationStructureNV .
pattern BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR indicates
-- that the specified acceleration structure can act as the source
-- for a copy acceleration structure command with mode of
-- COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR to produce a
-- compacted acceleration structure.
pattern BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR
-- indicates that the given acceleration structure build should
-- prioritize trace performance over build time.
pattern BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR
-- indicates that the given acceleration structure build should
-- prioritize build time over trace performance.
pattern BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
-- | BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR indicates that
-- this acceleration structure should minimize the size of the
-- scratch memory and the final result build, potentially at the expense
-- of build time or trace performance.
pattern BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR :: BuildAccelerationStructureFlagBitsKHR
type BuildAccelerationStructureFlagsKHR = BuildAccelerationStructureFlagBitsKHR
-- | VkCopyAccelerationStructureModeKHR - Acceleration structure copy mode
--
-- See Also
--
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- cmdCopyAccelerationStructureNV
newtype CopyAccelerationStructureModeKHR
CopyAccelerationStructureModeKHR :: Int32 -> CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR creates a direct
-- copy of the acceleration structure specified in src into the
-- one specified by dst. The dst acceleration structure
-- must have been created with the same parameters as
-- src.
pattern COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR :: CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR creates a more
-- compact version of an acceleration structure src into
-- dst. The acceleration structure dst must have
-- been created with a compactedSize corresponding to the one
-- returned by cmdWriteAccelerationStructuresPropertiesKHR after
-- the build of the acceleration structure specified by src.
pattern COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR :: CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR serializes the
-- acceleration structure to a semi-opaque format which can be reloaded
-- on a compatible implementation.
pattern COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR :: CopyAccelerationStructureModeKHR
-- | COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR deserializes
-- the semi-opaque serialization format in the buffer to the acceleration
-- structure.
pattern COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR :: CopyAccelerationStructureModeKHR
-- | VkAccelerationStructureTypeKHR - Type of acceleration structure
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateInfoKHR
newtype AccelerationStructureTypeKHR
AccelerationStructureTypeKHR :: Int32 -> AccelerationStructureTypeKHR
-- | ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR is a top-level
-- acceleration structure containing instance data referring to
-- bottom-level acceleration structures.
pattern ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR :: AccelerationStructureTypeKHR
-- | ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR is a bottom-level
-- acceleration structure containing the AABBs or geometry to be
-- intersected.
pattern ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR :: AccelerationStructureTypeKHR
-- | VkGeometryTypeKHR - Enum specifying which type of geometry is provided
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryKHR, GeometryNV
newtype GeometryTypeKHR
GeometryTypeKHR :: Int32 -> GeometryTypeKHR
-- | GEOMETRY_TYPE_TRIANGLES_KHR specifies a geometry type
-- consisting of triangles.
pattern GEOMETRY_TYPE_TRIANGLES_KHR :: GeometryTypeKHR
-- | GEOMETRY_TYPE_AABBS_KHR specifies a geometry type consisting of
-- axis-aligned bounding boxes.
pattern GEOMETRY_TYPE_AABBS_KHR :: GeometryTypeKHR
-- | GEOMETRY_TYPE_INSTANCES_KHR specifies a geometry type
-- consisting of acceleration structure instances.
pattern GEOMETRY_TYPE_INSTANCES_KHR :: GeometryTypeKHR
-- | VkAccelerationStructureMemoryRequirementsTypeKHR - Acceleration
-- structure memory requirement type
--
-- See Also
--
-- AccelerationStructureMemoryRequirementsInfoKHR
newtype AccelerationStructureMemoryRequirementsTypeKHR
AccelerationStructureMemoryRequirementsTypeKHR :: Int32 -> AccelerationStructureMemoryRequirementsTypeKHR
-- | ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR
-- requests the memory requirement for the
-- AccelerationStructureKHR backing store.
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR :: AccelerationStructureMemoryRequirementsTypeKHR
-- |
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR
-- requests the memory requirement for scratch space during the initial
-- build.
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR :: AccelerationStructureMemoryRequirementsTypeKHR
-- |
-- ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR
-- requests the memory requirement for scratch space during an update.
pattern ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR :: AccelerationStructureMemoryRequirementsTypeKHR
-- | VkRayTracingShaderGroupTypeKHR - Shader group types
--
-- Description
--
-- Note
--
-- For current group types, the hit group type could be inferred from the
-- presence or absence of the intersection shader, but we provide the
-- type explicitly for future hit groups that do not have that property.
--
-- See Also
--
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV
newtype RayTracingShaderGroupTypeKHR
RayTracingShaderGroupTypeKHR :: Int32 -> RayTracingShaderGroupTypeKHR
-- | RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR indicates a shader
-- group with a single SHADER_STAGE_RAYGEN_BIT_KHR,
-- SHADER_STAGE_MISS_BIT_KHR, or
-- SHADER_STAGE_CALLABLE_BIT_KHR shader in it.
pattern RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR :: RayTracingShaderGroupTypeKHR
-- | RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR specifies
-- a shader group that only hits triangles and must not contain an
-- intersection shader, only closest hit and any-hit shaders.
pattern RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR :: RayTracingShaderGroupTypeKHR
-- | RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR
-- specifies a shader group that only intersects with custom geometry and
-- must contain an intersection shader and may contain
-- closest hit and any-hit shaders.
pattern RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR :: RayTracingShaderGroupTypeKHR
type MemoryRequirements2KHR = MemoryRequirements2
type SHADER_UNUSED_KHR = 4294967295
pattern SHADER_UNUSED_KHR :: Word32
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
instance GHC.Generics.Generic (Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.GeometryDataNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.GeometryDataNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.GeometryNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.GeometryNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureMemoryRequirementsInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureCreateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.AccelerationStructureInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.PhysicalDeviceRayTracingPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.GeometryNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryDataNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryDataNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.GeometryDataNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.GeometryAABBNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.GeometryTrianglesNV
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_NV_ray_tracing.RayTracingPipelineCreateInfoNV es)
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_ray_tracing.RayTracingShaderGroupCreateInfoNV
module Vulkan.Core10.Pass
-- | vkCreateFramebuffer - Create a new framebuffer object
--
-- Valid Usage
--
--
-- - If pCreateInfo->flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, and attachmentCount
-- is not 0, each element of
-- pCreateInfo->pAttachments must have been created on
-- device
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- FramebufferCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pFramebuffer must be a valid pointer to a
-- Framebuffer handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Framebuffer,
-- FramebufferCreateInfo
createFramebuffer :: forall a io. (Extendss FramebufferCreateInfo a, PokeChain a, MonadIO io) => Device -> FramebufferCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Framebuffer
-- | A convenience wrapper to make a compatible pair of calls to
-- createFramebuffer and destroyFramebuffer
--
-- To ensure that destroyFramebuffer is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withFramebuffer :: forall a io r. (Extendss FramebufferCreateInfo a, PokeChain a, MonadIO io) => Device -> FramebufferCreateInfo a -> Maybe AllocationCallbacks -> (io Framebuffer -> (Framebuffer -> io ()) -> r) -> r
-- | vkDestroyFramebuffer - Destroy a framebuffer object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to framebuffer
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- framebuffer was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- framebuffer was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If framebuffer is not NULL_HANDLE,
-- framebuffer must be a valid Framebuffer
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If framebuffer is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to framebuffer must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Framebuffer
destroyFramebuffer :: forall io. MonadIO io => Device -> Framebuffer -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkCreateRenderPass - Create a new render pass object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- RenderPassCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pRenderPass must be a valid pointer to a
-- RenderPass handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, RenderPass,
-- RenderPassCreateInfo
createRenderPass :: forall a io. (Extendss RenderPassCreateInfo a, PokeChain a, MonadIO io) => Device -> RenderPassCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io RenderPass
-- | A convenience wrapper to make a compatible pair of calls to
-- createRenderPass and destroyRenderPass
--
-- To ensure that destroyRenderPass is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withRenderPass :: forall a io r. (Extendss RenderPassCreateInfo a, PokeChain a, MonadIO io) => Device -> RenderPassCreateInfo a -> Maybe AllocationCallbacks -> (io RenderPass -> (RenderPass -> io ()) -> r) -> r
-- | vkDestroyRenderPass - Destroy a render pass object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to renderPass
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- renderPass was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- renderPass was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If renderPass is not NULL_HANDLE,
-- renderPass must be a valid RenderPass
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If renderPass is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to renderPass must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, RenderPass
destroyRenderPass :: forall io. MonadIO io => Device -> RenderPass -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetRenderAreaGranularity - Returns the granularity for optimal
-- render area
--
-- Description
--
-- The conditions leading to an optimal renderArea are:
--
--
-- - the offset.x member in renderArea is a multiple
-- of the width member of the returned Extent2D (the
-- horizontal granularity).
-- - the offset.y member in renderArea is a multiple
-- of the height of the returned Extent2D (the vertical
-- granularity).
-- - either the offset.width member in renderArea is
-- a multiple of the horizontal granularity or
-- offset.x+offset.width is equal to the width
-- of the framebuffer in the RenderPassBeginInfo.
-- - either the offset.height member in renderArea is
-- a multiple of the vertical granularity or
-- offset.y+offset.height is equal to the
-- height of the framebuffer in the
-- RenderPassBeginInfo.
--
--
-- Subpass dependencies are not affected by the render area, and apply to
-- the entire image subresources attached to the framebuffer as specified
-- in the description of automatic layout transitions. Similarly,
-- pipeline barriers are valid even if their effect extends outside the
-- render area.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - renderPass must be a valid RenderPass
-- handle
-- - pGranularity must be a valid pointer to a
-- Extent2D structure
-- - renderPass must have been created, allocated, or
-- retrieved from device
--
--
-- See Also
--
-- Device, Extent2D, RenderPass
getRenderAreaGranularity :: forall io. MonadIO io => Device -> RenderPass -> io ("granularity" ::: Extent2D)
-- | VkAttachmentDescription - Structure specifying an attachment
-- description
--
-- Description
--
-- If the attachment uses a color format, then loadOp and
-- storeOp are used, and stencilLoadOp and
-- stencilStoreOp are ignored. If the format has depth and/or
-- stencil components, loadOp and storeOp apply only to
-- the depth data, while stencilLoadOp and
-- stencilStoreOp define how the stencil data is handled.
-- loadOp and stencilLoadOp define the load
-- operations that execute as part of the first subpass that uses the
-- attachment. storeOp and stencilStoreOp define the
-- store operations that execute as part of the last subpass that
-- uses the attachment.
--
-- The load operation for each sample in an attachment happens-before any
-- recorded command which accesses the sample in the first subpass where
-- the attachment is used. Load operations for attachments with a
-- depth/stencil format execute in the
-- PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT pipeline stage. Load
-- operations for attachments with a color format execute in the
-- PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT pipeline stage.
--
-- The store operation for each sample in an attachment happens-after any
-- recorded command which accesses the sample in the last subpass where
-- the attachment is used. Store operations for attachments with a
-- depth/stencil format execute in the
-- PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT pipeline stage. Store
-- operations for attachments with a color format execute in the
-- PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT pipeline stage.
--
-- If an attachment is not used by any subpass, then loadOp,
-- storeOp, stencilStoreOp, and stencilLoadOp
-- are ignored, and the attachment’s memory contents will not be modified
-- by execution of a render pass instance.
--
-- The load and store operations apply on the first and last use of each
-- view in the render pass, respectively. If a view index of an
-- attachment is not included in the view mask in any subpass that uses
-- it, then the load and store operations are ignored, and the
-- attachment’s memory contents will not be modified by execution of a
-- render pass instance.
--
-- During a render pass instance, input/color attachments with color
-- formats that have a component size of 8, 16, or 32 bits must be
-- represented in the attachment’s format throughout the instance.
-- Attachments with other floating- or fixed-point color formats, or with
-- depth components may be represented in a format with a
-- precision higher than the attachment format, but must be
-- represented with the same range. When such a component is loaded via
-- the loadOp, it will be converted into an
-- implementation-dependent format used by the render pass. Such
-- components must be converted from the render pass format, to
-- the format of the attachment, before they are resolved or stored at
-- the end of a render pass instance via storeOp. Conversions
-- occur as described in Numeric Representation and Computation
-- and Fixed-Point Data Conversions.
--
-- If flags includes
-- ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT, then the attachment is
-- treated as if it shares physical memory with another attachment in the
-- same render pass. This information limits the ability of the
-- implementation to reorder certain operations (like layout transitions
-- and the loadOp) such that it is not improperly reordered
-- against other uses of the same physical memory via a different
-- attachment. This is described in more detail below.
--
-- If a render pass uses multiple attachments that alias the same device
-- memory, those attachments must each include the
-- ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT bit in their attachment
-- description flags. Attachments aliasing the same memory occurs in
-- multiple ways:
--
--
-- - Multiple attachments being assigned the same image view as part of
-- framebuffer creation.
-- - Attachments using distinct image views that correspond to the same
-- image subresource of an image.
-- - Attachments using views of distinct image subresources which are
-- bound to overlapping memory ranges.
--
--
-- Note
--
-- Render passes must include subpass dependencies (either
-- directly or via a subpass dependency chain) between any two subpasses
-- that operate on the same attachment or aliasing attachments and those
-- subpass dependencies must include execution and memory
-- dependencies separating uses of the aliases, if at least one of those
-- subpasses writes to one of the aliases. These dependencies must
-- not include the DEPENDENCY_BY_REGION_BIT if the aliases are
-- views of distinct image subresources which overlap in memory.
--
-- Multiple attachments that alias the same memory must not be
-- used in a single subpass. A given attachment index must not be
-- used multiple times in a single subpass, with one exception: two
-- subpass attachments can use the same attachment index if at
-- least one use is as an input attachment and neither use is as a
-- resolve or preserve attachment. In other words, the same view
-- can be used simultaneously as an input and color or
-- depth/stencil attachment, but must not be used as multiple
-- color or depth/stencil attachments nor as resolve or preserve
-- attachments. The precise set of valid scenarios is described in more
-- detail below.
--
-- If a set of attachments alias each other, then all except the first to
-- be used in the render pass must use an initialLayout
-- of IMAGE_LAYOUT_UNDEFINED, since the earlier uses of the other
-- aliases make their contents undefined. Once an alias has been used and
-- a different alias has been used after it, the first alias must
-- not be used in any later subpasses. However, an application can
-- assign the same image view to multiple aliasing attachment indices,
-- which allows that image view to be used multiple times even if other
-- aliases are used in between.
--
-- Note
--
-- Once an attachment needs the
-- ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT bit, there should
-- be no additional cost of introducing additional aliases, and using
-- these additional aliases may allow more efficient clearing of
-- the attachments on multiple uses via ATTACHMENT_LOAD_OP_CLEAR.
--
-- Valid Usage
--
--
--
--
-- - If format is a color format, initialLayout
-- must not be
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - If format is a depth/stencil format,
-- initialLayout must not be
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-- - If format is a color format, finalLayout
-- must not be
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - If format is a depth/stencil format, finalLayout
-- must not be IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-- - If the separateDepthStencilLayouts feature is not enabled,
-- initialLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If the separateDepthStencilLayouts feature is not enabled,
-- finalLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a color format, initialLayout
-- must not be IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a color format, finalLayout
-- must not be IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes both
-- depth and stencil aspects, initialLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes both
-- depth and stencil aspects, finalLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the depth aspect, initialLayout must not be
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the depth aspect, finalLayout must not be
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the stencil aspect, initialLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the stencil aspect, finalLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AttachmentDescriptionFlags, AttachmentLoadOp,
-- AttachmentStoreOp, Format, ImageLayout,
-- RenderPassCreateInfo, SampleCountFlagBits
data AttachmentDescription
AttachmentDescription :: AttachmentDescriptionFlags -> Format -> SampleCountFlagBits -> AttachmentLoadOp -> AttachmentStoreOp -> AttachmentLoadOp -> AttachmentStoreOp -> ImageLayout -> ImageLayout -> AttachmentDescription
-- | flags is a bitmask of AttachmentDescriptionFlagBits
-- specifying additional properties of the attachment.
[$sel:flags:AttachmentDescription] :: AttachmentDescription -> AttachmentDescriptionFlags
-- | format is a Format value specifying the format of the
-- image view that will be used for the attachment.
[$sel:format:AttachmentDescription] :: AttachmentDescription -> Format
-- | samples is the number of samples of the image as defined in
-- SampleCountFlagBits.
[$sel:samples:AttachmentDescription] :: AttachmentDescription -> SampleCountFlagBits
-- | loadOp is a AttachmentLoadOp value specifying how the
-- contents of color and depth components of the attachment are treated
-- at the beginning of the subpass where it is first used.
[$sel:loadOp:AttachmentDescription] :: AttachmentDescription -> AttachmentLoadOp
-- | storeOp is a AttachmentStoreOp value specifying how
-- the contents of color and depth components of the attachment are
-- treated at the end of the subpass where it is last used.
[$sel:storeOp:AttachmentDescription] :: AttachmentDescription -> AttachmentStoreOp
-- | stencilLoadOp is a AttachmentLoadOp value specifying
-- how the contents of stencil components of the attachment are treated
-- at the beginning of the subpass where it is first used.
[$sel:stencilLoadOp:AttachmentDescription] :: AttachmentDescription -> AttachmentLoadOp
-- | stencilStoreOp is a AttachmentStoreOp value specifying
-- how the contents of stencil components of the attachment are treated
-- at the end of the last subpass where it is used.
[$sel:stencilStoreOp:AttachmentDescription] :: AttachmentDescription -> AttachmentStoreOp
-- | initialLayout is the layout the attachment image subresource
-- will be in when a render pass instance begins.
[$sel:initialLayout:AttachmentDescription] :: AttachmentDescription -> ImageLayout
-- | finalLayout is the layout the attachment image subresource
-- will be transitioned to when a render pass instance ends.
[$sel:finalLayout:AttachmentDescription] :: AttachmentDescription -> ImageLayout
-- | VkAttachmentReference - Structure specifying an attachment reference
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- ImageLayout, RenderPassFragmentDensityMapCreateInfoEXT,
-- SubpassDescription
data AttachmentReference
AttachmentReference :: Word32 -> ImageLayout -> AttachmentReference
-- | attachment is either an integer value identifying an
-- attachment at the corresponding index in
-- RenderPassCreateInfo::pAttachments, or
-- ATTACHMENT_UNUSED to signify that this attachment is not used.
[$sel:attachment:AttachmentReference] :: AttachmentReference -> Word32
-- | layout is a ImageLayout value specifying the layout
-- the attachment uses during the subpass.
[$sel:layout:AttachmentReference] :: AttachmentReference -> ImageLayout
-- | VkSubpassDescription - Structure specifying a subpass description
--
-- Description
--
-- Each element of the pInputAttachments array corresponds to an
-- input attachment index in a fragment shader, i.e. if a shader declares
-- an image variable decorated with a InputAttachmentIndex value
-- of X, then it uses the attachment provided in
-- pInputAttachments[X]. Input attachments must
-- also be bound to the pipeline in a descriptor set. If the
-- attachment member of any element of
-- pInputAttachments is ATTACHMENT_UNUSED, the
-- application must not read from the corresponding input
-- attachment index. Fragment shaders can use subpass input
-- variables to access the contents of an input attachment at the
-- fragment’s (x, y, layer) framebuffer coordinates. Input attachments
-- must not be used by any subpasses within a renderpass that
-- enables render pass transform.
--
-- Each element of the pColorAttachments array corresponds to an
-- output location in the shader, i.e. if the shader declares an output
-- variable decorated with a Location value of X, then it
-- uses the attachment provided in pColorAttachments[X].
-- If the attachment member of any element of
-- pColorAttachments is ATTACHMENT_UNUSED, writes to the
-- corresponding location by a fragment are discarded.
--
-- If flags does not include
-- SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, and if
-- pResolveAttachments is not NULL, each of its
-- elements corresponds to a color attachment (the element in
-- pColorAttachments at the same index), and a multisample
-- resolve operation is defined for each attachment. At the end of each
-- subpass, multisample resolve operations read the subpass’s color
-- attachments, and resolve the samples for each pixel within the render
-- area to the same pixel location in the corresponding resolve
-- attachments, unless the resolve attachment index is
-- ATTACHMENT_UNUSED.
--
-- Similarly, if flags does not include
-- SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, and
-- SubpassDescriptionDepthStencilResolve::pDepthStencilResolveAttachment
-- is not NULL and does not have the value
-- ATTACHMENT_UNUSED, it corresponds to the depth/stencil
-- attachment in pDepthStencilAttachment, and multisample
-- resolve operations for depth and stencil are defined by
-- SubpassDescriptionDepthStencilResolve::depthResolveMode
-- and
-- SubpassDescriptionDepthStencilResolve::stencilResolveMode,
-- respectively. At the end of each subpass, multisample resolve
-- operations read the subpass’s depth/stencil attachment, and resolve
-- the samples for each pixel to the same pixel location in the
-- corresponding resolve attachment. If
-- SubpassDescriptionDepthStencilResolve::depthResolveMode
-- is RESOLVE_MODE_NONE, then the depth component of the resolve
-- attachment is not written to and its contents are preserved.
-- Similarly, if
-- SubpassDescriptionDepthStencilResolve::stencilResolveMode
-- is RESOLVE_MODE_NONE, then the stencil component of the resolve
-- attachment is not written to and its contents are preserved.
-- SubpassDescriptionDepthStencilResolve::depthResolveMode
-- is ignored if the Format of the
-- pDepthStencilResolveAttachment does not have a depth
-- component. Similarly,
-- SubpassDescriptionDepthStencilResolve::stencilResolveMode
-- is ignored if the Format of the
-- pDepthStencilResolveAttachment does not have a stencil
-- component.
--
-- If the image subresource range referenced by the depth/stencil
-- attachment is created with
-- IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT, then
-- the multisample resolve operation uses the sample locations state
-- specified in the sampleLocationsInfo member of the element of
-- the
-- RenderPassSampleLocationsBeginInfoEXT::pPostSubpassSampleLocations
-- for the subpass.
--
-- If pDepthStencilAttachment is NULL, or if its
-- attachment index is ATTACHMENT_UNUSED, it indicates that no
-- depth/stencil attachment will be used in the subpass.
--
-- The contents of an attachment within the render area become undefined
-- at the start of a subpass S if all of the following conditions
-- are true:
--
--
-- - The attachment is used as a color, depth/stencil, or resolve
-- attachment in any subpass in the render pass.
-- - There is a subpass S1 that uses or preserves the
-- attachment, and a subpass dependency from S1 to S.
-- - The attachment is not used or preserved in subpass S.
--
--
-- In addition, the contents of an attachment within the render area
-- become undefined at the start of a subpass S if all of the
-- following conditions are true:
--
--
--
-- Once the contents of an attachment become undefined in subpass
-- S, they remain undefined for subpasses in subpass dependency
-- chains starting with subpass S until they are written again.
-- However, they remain valid for subpasses in other subpass dependency
-- chains starting with subpass S1 if those subpasses use or
-- preserve the attachment.
--
-- Valid Usage
--
--
--
--
-- - colorAttachmentCount must be less than or equal to
-- PhysicalDeviceLimits::maxColorAttachments
-- - If the first use of an attachment in this render pass is as an
-- input attachment, and the attachment is not also used as a color or
-- depth/stencil attachment in the same subpass, then loadOp
-- must not be ATTACHMENT_LOAD_OP_CLEAR
-- - If pResolveAttachments is not NULL, for each
-- resolve attachment that is not ATTACHMENT_UNUSED, the
-- corresponding color attachment must not be
-- ATTACHMENT_UNUSED
-- - If pResolveAttachments is not NULL, for each
-- resolve attachment that is not ATTACHMENT_UNUSED, the
-- corresponding color attachment must not have a sample count of
-- SAMPLE_COUNT_1_BIT
-- - If pResolveAttachments is not NULL, each resolve
-- attachment that is not ATTACHMENT_UNUSED must have a
-- sample count of SAMPLE_COUNT_1_BIT
-- - If pResolveAttachments is not NULL, each resolve
-- attachment that is not ATTACHMENT_UNUSED must have the
-- same Format as its corresponding color attachment
-- - All attachments in pColorAttachments that are not
-- ATTACHMENT_UNUSED must have the same sample count
-- - All attachments in pInputAttachments that are not
-- ATTACHMENT_UNUSED must have formats whose features
-- contain at least one of FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - All attachments in pColorAttachments that are not
-- ATTACHMENT_UNUSED must have formats whose features
-- contain FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
-- - All attachments in pResolveAttachments that are not
-- ATTACHMENT_UNUSED must have formats whose features
-- contain FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
-- - If pDepthStencilAttachment is not NULL and the
-- attachment is not ATTACHMENT_UNUSED then it must have a
-- format whose features contain
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If the VK_AMD_mixed_attachment_samples extension is
-- enabled, and all attachments in pColorAttachments that are
-- not ATTACHMENT_UNUSED must have a sample count that is
-- smaller than or equal to the sample count of
-- pDepthStencilAttachment if it is not
-- ATTACHMENT_UNUSED
-- - If neither the VK_AMD_mixed_attachment_samples nor the
-- VK_NV_framebuffer_mixed_samples extensions are enabled, and
-- if pDepthStencilAttachment is not ATTACHMENT_UNUSED
-- and any attachments in pColorAttachments are not
-- ATTACHMENT_UNUSED, they must have the same sample
-- count
-- - The attachment member of each element of
-- pPreserveAttachments must not be
-- ATTACHMENT_UNUSED
-- - Each element of pPreserveAttachments must not also
-- be an element of any other member of the subpass description
-- - If any attachment is used by more than one
-- AttachmentReference member, then each use must use the
-- same layout
-- - If flags includes
-- SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX, it
-- must also include
-- SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX
-- - If flags includes
-- SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, and if
-- pResolveAttachments is not NULL, then each resolve
-- attachment must be ATTACHMENT_UNUSED
-- - If flags includes
-- SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, and if
-- pDepthStencilResolveAttachmentKHR is not NULL, then
-- the depth/stencil resolve attachment must be
-- ATTACHMENT_UNUSED
-- - If flags includes
-- SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, then the subpass
-- must be the last subpass in a subpass dependency chain
-- - If flags includes
-- SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, then the sample
-- count of the input attachments must equal
-- rasterizationSamples
-- - If flags includes
-- SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, and if
-- sampleShadingEnable is enabled (explicitly or implicitly)
-- then minSampleShading must equal 0.0
-- - If the render pass is created with
-- RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM each of the elements of
-- pInputAttachments must be
-- ATTACHMENT_UNUSED
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - If inputAttachmentCount is not 0,
-- pInputAttachments must be a valid pointer to an array
-- of inputAttachmentCount valid AttachmentReference
-- structures
-- - If colorAttachmentCount is not 0,
-- pColorAttachments must be a valid pointer to an array
-- of colorAttachmentCount valid AttachmentReference
-- structures
-- - If colorAttachmentCount is not 0, and
-- pResolveAttachments is not NULL,
-- pResolveAttachments must be a valid pointer to an
-- array of colorAttachmentCount valid
-- AttachmentReference structures
-- - If pDepthStencilAttachment is not NULL,
-- pDepthStencilAttachment must be a valid pointer to a
-- valid AttachmentReference structure
-- - If preserveAttachmentCount is not 0,
-- pPreserveAttachments must be a valid pointer to an
-- array of preserveAttachmentCount uint32_t
-- values
--
--
-- See Also
--
-- AttachmentReference, PipelineBindPoint,
-- RenderPassCreateInfo, SubpassDescriptionFlags
data SubpassDescription
SubpassDescription :: SubpassDescriptionFlags -> PipelineBindPoint -> Vector AttachmentReference -> Vector AttachmentReference -> Vector AttachmentReference -> Maybe AttachmentReference -> Vector Word32 -> SubpassDescription
-- | flags is a bitmask of SubpassDescriptionFlagBits
-- specifying usage of the subpass.
[$sel:flags:SubpassDescription] :: SubpassDescription -> SubpassDescriptionFlags
-- | pipelineBindPoint is a PipelineBindPoint value
-- specifying the pipeline type supported for this subpass.
[$sel:pipelineBindPoint:SubpassDescription] :: SubpassDescription -> PipelineBindPoint
-- | pInputAttachments is a pointer to an array of
-- AttachmentReference structures defining the input attachments
-- for this subpass and their layouts.
[$sel:inputAttachments:SubpassDescription] :: SubpassDescription -> Vector AttachmentReference
-- | pColorAttachments is a pointer to an array of
-- AttachmentReference structures defining the color attachments
-- for this subpass and their layouts.
[$sel:colorAttachments:SubpassDescription] :: SubpassDescription -> Vector AttachmentReference
-- | pResolveAttachments is an optional array of
-- colorAttachmentCount AttachmentReference structures
-- defining the resolve attachments for this subpass and their layouts.
[$sel:resolveAttachments:SubpassDescription] :: SubpassDescription -> Vector AttachmentReference
-- | pDepthStencilAttachment is a pointer to a
-- AttachmentReference structure specifying the depth/stencil
-- attachment for this subpass and its layout.
[$sel:depthStencilAttachment:SubpassDescription] :: SubpassDescription -> Maybe AttachmentReference
-- | pPreserveAttachments is a pointer to an array of
-- preserveAttachmentCount render pass attachment indices
-- identifying attachments that are not used by this subpass, but whose
-- contents must be preserved throughout the subpass.
[$sel:preserveAttachments:SubpassDescription] :: SubpassDescription -> Vector Word32
-- | VkSubpassDependency - Structure specifying a subpass dependency
--
-- Description
--
-- If srcSubpass is equal to dstSubpass then the
-- SubpassDependency describes a subpass self-dependency,
-- and only constrains the pipeline barriers allowed within a subpass
-- instance. Otherwise, when a render pass instance which includes a
-- subpass dependency is submitted to a queue, it defines a memory
-- dependency between the subpasses identified by srcSubpass and
-- dstSubpass.
--
-- If srcSubpass is equal to SUBPASS_EXTERNAL, the first
-- synchronization scope includes commands that occur earlier in
-- submission order than the cmdBeginRenderPass used to
-- begin the render pass instance. Otherwise, the first set of commands
-- includes all commands submitted as part of the subpass instance
-- identified by srcSubpass and any load, store or multisample
-- resolve operations on attachments used in srcSubpass. In
-- either case, the first synchronization scope is limited to operations
-- on the pipeline stages determined by the source stage mask
-- specified by srcStageMask.
--
-- If dstSubpass is equal to SUBPASS_EXTERNAL, the second
-- synchronization scope includes commands that occur later in
-- submission order than the cmdEndRenderPass used to end
-- the render pass instance. Otherwise, the second set of commands
-- includes all commands submitted as part of the subpass instance
-- identified by dstSubpass and any load, store or multisample
-- resolve operations on attachments used in dstSubpass. In
-- either case, the second synchronization scope is limited to operations
-- on the pipeline stages determined by the destination stage mask
-- specified by dstStageMask.
--
-- The first access scope is limited to access in the pipeline
-- stages determined by the source stage mask specified by
-- srcStageMask. It is also limited to access types in the
-- source access mask specified by srcAccessMask.
--
-- The second access scope is limited to access in the pipeline
-- stages determined by the destination stage mask specified by
-- dstStageMask. It is also limited to access types in the
-- destination access mask specified by dstAccessMask.
--
-- The availability and visibility operations defined by a subpass
-- dependency affect the execution of image layout transitions
-- within the render pass.
--
-- Note
--
-- For non-attachment resources, the memory dependency expressed by
-- subpass dependency is nearly identical to that of a
-- MemoryBarrier (with matching srcAccessMask and
-- dstAccessMask parameters) submitted as a part of a
-- cmdPipelineBarrier (with matching srcStageMask and
-- dstStageMask parameters). The only difference being that its
-- scopes are limited to the identified subpasses rather than potentially
-- affecting everything before and after.
--
-- For attachments however, subpass dependencies work more like a
-- ImageMemoryBarrier defined similarly to the
-- MemoryBarrier above, the queue family indices set to
-- QUEUE_FAMILY_IGNORED, and layouts as follows:
--
--
-- - The equivalent to oldLayout is the attachment’s layout
-- according to the subpass description for srcSubpass.
-- - The equivalent to newLayout is the attachment’s layout
-- according to the subpass description for dstSubpass.
--
--
-- Valid Usage
--
--
--
--
-- - If the geometry shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - srcSubpass must be less than or equal to
-- dstSubpass, unless one of them is SUBPASS_EXTERNAL, to
-- avoid cyclic dependencies and ensure a valid execution order
-- - srcSubpass and dstSubpass must not both
-- be equal to SUBPASS_EXTERNAL
-- - If srcSubpass is equal to dstSubpass and not all
-- of the stages in srcStageMask and dstStageMask are
-- framebuffer-space stages, the logically latest pipeline
-- stage in srcStageMask must be logically earlier
-- than or equal to the logically earliest pipeline stage in
-- dstStageMask
-- - Any access flag included in srcAccessMask must be
-- supported by one of the pipeline stages in srcStageMask, as
-- specified in the table of supported access types
-- - Any access flag included in dstAccessMask must be
-- supported by one of the pipeline stages in dstStageMask, as
-- specified in the table of supported access types
-- - If srcSubpass equals dstSubpass, and
-- srcStageMask and dstStageMask both include a
-- framebuffer-space stage, then dependencyFlags
-- must include DEPENDENCY_BY_REGION_BIT
-- - If dependencyFlags includes
-- DEPENDENCY_VIEW_LOCAL_BIT, srcSubpass must not
-- be equal to SUBPASS_EXTERNAL
-- - If dependencyFlags includes
-- DEPENDENCY_VIEW_LOCAL_BIT, dstSubpass must not
-- be equal to SUBPASS_EXTERNAL
-- - If srcSubpass equals dstSubpass and that subpass
-- has more than one bit set in the view mask, then
-- dependencyFlags must include
-- DEPENDENCY_VIEW_LOCAL_BIT
-- - If the mesh shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
-- - If the mesh shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcStageMask must not be 0
-- - dstStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - dstStageMask must not be 0
-- - srcAccessMask must be a valid combination of
-- AccessFlagBits values
-- - dstAccessMask must be a valid combination of
-- AccessFlagBits values
-- - dependencyFlags must be a valid combination of
-- DependencyFlagBits values
--
--
-- See Also
--
-- AccessFlags, DependencyFlags, PipelineStageFlags,
-- RenderPassCreateInfo
data SubpassDependency
SubpassDependency :: Word32 -> Word32 -> PipelineStageFlags -> PipelineStageFlags -> AccessFlags -> AccessFlags -> DependencyFlags -> SubpassDependency
-- | srcSubpass is the subpass index of the first subpass in the
-- dependency, or SUBPASS_EXTERNAL.
[$sel:srcSubpass:SubpassDependency] :: SubpassDependency -> Word32
-- | dstSubpass is the subpass index of the second subpass in the
-- dependency, or SUBPASS_EXTERNAL.
[$sel:dstSubpass:SubpassDependency] :: SubpassDependency -> Word32
-- | srcStageMask is a bitmask of PipelineStageFlagBits
-- specifying the source stage mask.
[$sel:srcStageMask:SubpassDependency] :: SubpassDependency -> PipelineStageFlags
-- | dstStageMask is a bitmask of PipelineStageFlagBits
-- specifying the destination stage mask
[$sel:dstStageMask:SubpassDependency] :: SubpassDependency -> PipelineStageFlags
-- | srcAccessMask is a bitmask of AccessFlagBits
-- specifying a source access mask.
[$sel:srcAccessMask:SubpassDependency] :: SubpassDependency -> AccessFlags
-- | dstAccessMask is a bitmask of AccessFlagBits
-- specifying a destination access mask.
[$sel:dstAccessMask:SubpassDependency] :: SubpassDependency -> AccessFlags
-- | dependencyFlags is a bitmask of DependencyFlagBits.
[$sel:dependencyFlags:SubpassDependency] :: SubpassDependency -> DependencyFlags
-- | VkRenderPassCreateInfo - Structure specifying parameters of a newly
-- created render pass
--
-- Description
--
-- Note
--
-- Care should be taken to avoid a data race here; if any subpasses
-- access attachments with overlapping memory locations, and one of those
-- accesses is a write, a subpass dependency needs to be included between
-- them.
--
-- Valid Usage
--
--
-- - If the attachment member of any element of
-- pInputAttachments, pColorAttachments,
-- pResolveAttachments or pDepthStencilAttachment, or
-- any element of pPreserveAttachments in any element of
-- pSubpasses is not ATTACHMENT_UNUSED, it must be
-- less than attachmentCount
--
--
--
-- - For any member of pAttachments with a loadOp
-- equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that
-- attachment must not specify a layout equal to
-- IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
-- - For any member of pAttachments with a
-- stencilLoadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the
-- first use of that attachment must not specify a layout
-- equal to IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
-- - For any member of pAttachments with a loadOp
-- equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that
-- attachment must not specify a layout equal to
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - For any member of pAttachments with a
-- stencilLoadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the
-- first use of that attachment must not specify a layout
-- equal to
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-- - If the pNext chain includes a
-- RenderPassInputAttachmentAspectCreateInfo structure, the
-- subpass member of each element of its
-- pAspectReferences member must be less than
-- subpassCount
-- - If the pNext chain includes a
-- RenderPassInputAttachmentAspectCreateInfo structure, the
-- inputAttachmentIndex member of each element of its
-- pAspectReferences member must be less than the value
-- of inputAttachmentCount in the member of pSubpasses
-- identified by its subpass member
-- - If the pNext chain includes a
-- RenderPassInputAttachmentAspectCreateInfo structure, for any
-- element of the pInputAttachments member of any element of
-- pSubpasses where the attachment member is not
-- ATTACHMENT_UNUSED, the aspectMask member of the
-- corresponding element of
-- RenderPassInputAttachmentAspectCreateInfo::pAspectReferences
-- must only include aspects that are present in images of the
-- format specified by the element of pAttachments at
-- attachment
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, and its
-- subpassCount member is not zero, that member must be
-- equal to the value of subpassCount
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, if its
-- dependencyCount member is not zero, it must be equal
-- to dependencyCount
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, for each non-zero
-- element of pViewOffsets, the srcSubpass and
-- dstSubpass members of pDependencies at the same
-- index must not be equal
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, for any element of
-- pDependencies with a dependencyFlags member that
-- does not include DEPENDENCY_VIEW_LOCAL_BIT, the corresponding
-- element of the pViewOffsets member of that
-- RenderPassMultiviewCreateInfo instance must be
-- 0
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, elements of its
-- pViewMasks member must either all be 0, or
-- all not be 0
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, and each element of
-- its pViewMasks member is 0, the
-- dependencyFlags member of each element of
-- pDependencies must not include
-- DEPENDENCY_VIEW_LOCAL_BIT
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, and each element of
-- its pViewMasks member is 0,
-- correlatedViewMaskCount must be 0
-- - If the pNext chain includes a
-- RenderPassMultiviewCreateInfo structure, each element of its
-- pViewMask member must not have a bit set at an index
-- greater than or equal to
-- PhysicalDeviceLimits::maxFramebufferLayers
-- - For any element of pDependencies, if the
-- srcSubpass is not SUBPASS_EXTERNAL, all stage flags
-- included in the srcStageMask member of that dependency
-- must be a pipeline stage supported by the pipeline
-- identified by the pipelineBindPoint member of the source
-- subpass
-- - For any element of pDependencies, if the
-- dstSubpass is not SUBPASS_EXTERNAL, all stage flags
-- included in the dstStageMask member of that dependency
-- must be a pipeline stage supported by the pipeline
-- identified by the pipelineBindPoint member of the destination
-- subpass
-- - The srcSubpass member of each element of
-- pDependencies must be less than
-- subpassCount
-- - The dstSubpass member of each element of
-- pDependencies must be less than
-- subpassCount
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AttachmentDescription, RenderPassCreateFlags,
-- StructureType, SubpassDependency,
-- SubpassDescription, createRenderPass
data RenderPassCreateInfo (es :: [Type])
RenderPassCreateInfo :: Chain es -> RenderPassCreateFlags -> Vector AttachmentDescription -> Vector SubpassDescription -> Vector SubpassDependency -> RenderPassCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:RenderPassCreateInfo] :: RenderPassCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of RenderPassCreateFlagBits
[$sel:flags:RenderPassCreateInfo] :: RenderPassCreateInfo (es :: [Type]) -> RenderPassCreateFlags
-- | pAttachments is a pointer to an array of
-- attachmentCount AttachmentDescription structures
-- describing the attachments used by the render pass.
[$sel:attachments:RenderPassCreateInfo] :: RenderPassCreateInfo (es :: [Type]) -> Vector AttachmentDescription
-- | pSubpasses is a pointer to an array of subpassCount
-- SubpassDescription structures describing each subpass.
[$sel:subpasses:RenderPassCreateInfo] :: RenderPassCreateInfo (es :: [Type]) -> Vector SubpassDescription
-- | pDependencies is a pointer to an array of
-- dependencyCount SubpassDependency structures
-- describing dependencies between pairs of subpasses.
[$sel:dependencies:RenderPassCreateInfo] :: RenderPassCreateInfo (es :: [Type]) -> Vector SubpassDependency
-- | VkFramebufferCreateInfo - Structure specifying parameters of a newly
-- created framebuffer
--
-- Description
--
-- Applications must ensure that all accesses to memory that backs
-- image subresources used as attachments in a given renderpass instance
-- either happen-before the load operations for those attachments,
-- or happen-after the store operations for those attachments.
--
-- For depth/stencil attachments, each aspect can be used
-- separately as attachments and non-attachments as long as the
-- non-attachment accesses are also via an image subresource in either
-- the IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- layout or the
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL layout,
-- and the attachment resource uses whichever of those two layouts the
-- image accesses do not. Use of non-attachment aspects in this case is
-- only well defined if the attachment is used in the subpass where the
-- non-attachment access is being made, or the layout of the image
-- subresource is constant throughout the entire render pass instance,
-- including the initialLayout and finalLayout.
--
-- Note
--
-- These restrictions mean that the render pass has full knowledge of all
-- uses of all of the attachments, so that the implementation is able to
-- make correct decisions about when and how to perform layout
-- transitions, when to overlap execution of subpasses, etc.
--
-- It is legal for a subpass to use no color or depth/stencil
-- attachments, either because it has no attachment references or because
-- all of them are ATTACHMENT_UNUSED. This kind of subpass
-- can use shader side effects such as image stores and atomics to
-- produce an output. In this case, the subpass continues to use the
-- width, height, and layers of the
-- framebuffer to define the dimensions of the rendering area, and the
-- rasterizationSamples from each pipeline’s
-- PipelineMultisampleStateCreateInfo to define the number of
-- samples used in rasterization; however, if
-- PhysicalDeviceFeatures::variableMultisampleRate is
-- FALSE, then all pipelines to be bound with the subpass
-- must have the same value for
-- PipelineMultisampleStateCreateInfo::rasterizationSamples.
--
-- Valid Usage
--
--
-- - attachmentCount must be equal to the attachment
-- count specified in renderPass
--
--
--
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, and attachmentCount
-- is not 0, pAttachments must be a valid
-- pointer to an array of attachmentCount valid ImageView
-- handles
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments that is used as a color attachment or resolve
-- attachment by renderPass must have been created with a
-- usage value including
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments that is used as a depth/stencil attachment by
-- renderPass must have been created with a
-- usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments that is used as a depth/stencil resolve
-- attachment by renderPass must have been created with a
-- usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments that is used as an input attachment by
-- renderPass must have been created with a
-- usage value including
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT
-- - Each element of pAttachments that is used as a fragment
-- density map attachment by renderPass must not have
-- been created with a flags value including
-- IMAGE_CREATE_SUBSAMPLED_BIT_EXT
-- - If renderPass has a fragment density map attachment and
-- non-subsample image feature is not enabled, each element of
-- pAttachments must have been created with a
-- flags value including IMAGE_CREATE_SUBSAMPLED_BIT_EXT
-- unless that element is the fragment density map attachment
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments must have been created with a
-- Format value that matches the Format specified by the
-- corresponding AttachmentDescription in renderPass
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments must have been created with a
-- samples value that matches the samples value
-- specified by the corresponding AttachmentDescription in
-- renderPass
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments must have dimensions at least as large as
-- the corresponding framebuffer dimension except for any element that is
-- referenced by fragmentDensityMapAttachment
-- - If renderPass was specified with non-zero view masks,
-- each element of pAttachments that is not referenced by
-- fragmentDensityMapAttachment must have a
-- layerCount greater than the index of the most significant bit
-- set in any of those view masks
-- - If renderPass was specified with non-zero view masks,
-- each element of pAttachments that is referenced by
-- fragmentDensityMapAttachment must have a
-- layerCount equal to 1 or greater than the index of
-- the most significant bit set in any of those view masks
-- - If renderPass was not specified with non-zero view masks,
-- each element of pAttachments that is referenced by
-- fragmentDensityMapAttachment must have a
-- layerCount equal to 1
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, an element of
-- pAttachments that is referenced by
-- fragmentDensityMapAttachment must have a width at
-- least as large as <math>
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, an element of
-- pAttachments that is referenced by
-- fragmentDensityMapAttachment must have a height at
-- least as large as <math>
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments must only specify a single mip level
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments must have been created with the identity
-- swizzle
-- - width must be greater than 0
-- - width must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferWidth
-- - height must be greater than 0
-- - height must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferHeight
-- - layers must be greater than 0
-- - layers must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferLayers
-- - If renderPass was specified with non-zero view masks,
-- layers must be 1
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of
-- pAttachments that is a 2D or 2D array image view taken from a
-- 3D image must not be a depth/stencil format
-- - If flags does not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, and attachmentCount
-- is not 0, pAttachments must be a valid pointer to an
-- array of attachmentCount valid ImageView handles
-- - If the imageless framebuffer feature is not enabled,
-- flags must not include
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the pNext chain
-- must include a FramebufferAttachmentsCreateInfo
-- structure
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the
-- attachmentImageInfoCount member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain must be equal to either zero or
-- attachmentCount
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the width member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain must be greater than or equal to
-- width, except for any element that is referenced by
-- RenderPassFragmentDensityMapCreateInfoEXT::fragmentDensityMapAttachment
-- in renderPass
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the height member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain must be greater than or equal to
-- height, except for any element that is referenced by
-- RenderPassFragmentDensityMapCreateInfoEXT::fragmentDensityMapAttachment
-- in renderPass
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the width member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain that is referenced by
-- RenderPassFragmentDensityMapCreateInfoEXT::fragmentDensityMapAttachment
-- in renderPass must be greater than or equal to
-- <math>
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the height member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain that is referenced by
-- RenderPassFragmentDensityMapCreateInfoEXT::fragmentDensityMapAttachment
-- in renderPass must be greater than or equal to
-- <math>
-- - If multiview is enabled for renderPass, and
-- flags includes FRAMEBUFFER_CREATE_IMAGELESS_BIT, the
-- layerCount member of any element of the
-- pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain must be greater than the maximum bit index
-- set in the view mask in the subpasses in which it is used in
-- renderPass
-- - If multiview is not enabled for renderPass, and
-- flags includes FRAMEBUFFER_CREATE_IMAGELESS_BIT, the
-- layerCount member of any element of the
-- pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain must be greater than or equal to
-- layers
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the usage member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain that refers to an attachment used as a color
-- attachment or resolve attachment by renderPass must
-- include IMAGE_USAGE_COLOR_ATTACHMENT_BIT
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the usage member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain that refers to an attachment used as a
-- depth/stencil attachment by renderPass must include
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the usage member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain that refers to an attachment used as a
-- depth/stencil resolve attachment by renderPass must
-- include IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the usage member of
-- any element of the pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain that refers to an attachment used as an input
-- attachment by renderPass must include
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT
-- - If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, at least one element of the
-- pViewFormats member of any element of the
-- pAttachmentImageInfos member of a
-- FramebufferAttachmentsCreateInfo structure included in the
-- pNext chain must be equal to the corresponding value
-- of AttachmentDescription::format used to create
-- renderPass
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of FramebufferAttachmentsCreateInfo
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be a valid combination of
-- FramebufferCreateFlagBits values
-- - renderPass must be a valid RenderPass
-- handle
-- - Both of renderPass, and the elements of
-- pAttachments that are valid handles of non-ignored parameters
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- See Also
--
-- FramebufferCreateFlags, ImageView, RenderPass,
-- StructureType, createFramebuffer
data FramebufferCreateInfo (es :: [Type])
FramebufferCreateInfo :: Chain es -> FramebufferCreateFlags -> RenderPass -> Vector ImageView -> Word32 -> Word32 -> Word32 -> FramebufferCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of FramebufferCreateFlagBits
[$sel:flags:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> FramebufferCreateFlags
-- | renderPass is a render pass defining what render passes the
-- framebuffer will be compatible with. See Render Pass
-- Compatibility for details.
[$sel:renderPass:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> RenderPass
-- | pAttachments is a pointer to an array of ImageView
-- handles, each of which will be used as the corresponding attachment in
-- a render pass instance. If flags includes
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, this parameter is ignored.
[$sel:attachments:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> Vector ImageView
-- | width, height and layers define the
-- dimensions of the framebuffer. If the render pass uses multiview, then
-- layers must be one and each attachment requires a
-- number of layers that is greater than the maximum bit index set in the
-- view mask in the subpasses in which it is used.
[$sel:width:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> Word32
[$sel:height:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> Word32
[$sel:layers:FramebufferCreateInfo] :: FramebufferCreateInfo (es :: [Type]) -> Word32
-- | VkFramebuffer - Opaque handle to a framebuffer object
--
-- See Also
--
-- CommandBufferInheritanceInfo, RenderPassBeginInfo,
-- createFramebuffer, destroyFramebuffer
newtype Framebuffer
Framebuffer :: Word64 -> Framebuffer
-- | VkRenderPass - Opaque handle to a render pass object
--
-- See Also
--
-- CommandBufferInheritanceInfo, FramebufferCreateInfo,
-- GraphicsPipelineCreateInfo, RenderPassBeginInfo,
-- createRenderPass, createRenderPass2,
-- createRenderPass2KHR, destroyRenderPass,
-- getRenderAreaGranularity
newtype RenderPass
RenderPass :: Word64 -> RenderPass
-- | VkAttachmentLoadOp - Specify how contents of an attachment are treated
-- at the beginning of a subpass
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2
newtype AttachmentLoadOp
AttachmentLoadOp :: Int32 -> AttachmentLoadOp
-- | ATTACHMENT_LOAD_OP_LOAD specifies that the previous contents of
-- the image within the render area will be preserved. For attachments
-- with a depth/stencil format, this uses the access type
-- ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT. For attachments with
-- a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_READ_BIT.
pattern ATTACHMENT_LOAD_OP_LOAD :: AttachmentLoadOp
-- | ATTACHMENT_LOAD_OP_CLEAR specifies that the contents within the
-- render area will be cleared to a uniform value, which is specified
-- when a render pass instance is begun. For attachments with a
-- depth/stencil format, this uses the access type
-- ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For attachments with
-- a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_LOAD_OP_CLEAR :: AttachmentLoadOp
-- | ATTACHMENT_LOAD_OP_DONT_CARE specifies that the previous
-- contents within the area need not be preserved; the contents of the
-- attachment will be undefined inside the render area. For attachments
-- with a depth/stencil format, this uses the access type
-- ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For attachments with
-- a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_LOAD_OP_DONT_CARE :: AttachmentLoadOp
-- | VkAttachmentStoreOp - Specify how contents of an attachment are
-- treated at the end of a subpass
--
-- Description
--
-- Note
--
-- ATTACHMENT_STORE_OP_DONT_CARE can cause contents
-- generated during previous render passes to be discarded before
-- reaching memory, even if no write to the attachment occurs during the
-- current render pass.
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2
newtype AttachmentStoreOp
AttachmentStoreOp :: Int32 -> AttachmentStoreOp
-- | ATTACHMENT_STORE_OP_STORE specifies the contents generated
-- during the render pass and within the render area are written to
-- memory. For attachments with a depth/stencil format, this uses the
-- access type ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For
-- attachments with a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_STORE_OP_STORE :: AttachmentStoreOp
-- | ATTACHMENT_STORE_OP_DONT_CARE specifies the contents within the
-- render area are not needed after rendering, and may be
-- discarded; the contents of the attachment will be undefined inside the
-- render area. For attachments with a depth/stencil format, this uses
-- the access type ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT. For
-- attachments with a color format, this uses the access type
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT.
pattern ATTACHMENT_STORE_OP_DONT_CARE :: AttachmentStoreOp
-- | ATTACHMENT_STORE_OP_NONE_QCOM specifies that the contents
-- within the render area were not written during rendering, and
-- may not be written to memory. If the attachment was written to
-- during the renderpass, the contents of the attachment will be
-- undefined inside the render area.
pattern ATTACHMENT_STORE_OP_NONE_QCOM :: AttachmentStoreOp
-- | VkPipelineBindPoint - Specify the bind point of a pipeline object to a
-- command buffer
--
-- See Also
--
-- DescriptorUpdateTemplateCreateInfo,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- IndirectCommandsLayoutCreateInfoNV, SubpassDescription,
-- SubpassDescription2, cmdBindDescriptorSets,
-- cmdBindPipeline, cmdBindPipelineShaderGroupNV,
-- cmdPushDescriptorSetKHR
newtype PipelineBindPoint
PipelineBindPoint :: Int32 -> PipelineBindPoint
-- | PIPELINE_BIND_POINT_GRAPHICS specifies binding as a graphics
-- pipeline.
pattern PIPELINE_BIND_POINT_GRAPHICS :: PipelineBindPoint
-- | PIPELINE_BIND_POINT_COMPUTE specifies binding as a compute
-- pipeline.
pattern PIPELINE_BIND_POINT_COMPUTE :: PipelineBindPoint
-- | PIPELINE_BIND_POINT_RAY_TRACING_KHR specifies binding as a ray
-- tracing pipeline.
pattern PIPELINE_BIND_POINT_RAY_TRACING_KHR :: PipelineBindPoint
-- | VkRenderPassCreateFlagBits - Bitmask specifying additional properties
-- of a renderpass
--
-- See Also
--
-- RenderPassCreateFlags
newtype RenderPassCreateFlagBits
RenderPassCreateFlagBits :: Flags -> RenderPassCreateFlagBits
-- | RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM specifies that the
-- created renderpass is compatible with render pass transform.
pattern RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM :: RenderPassCreateFlagBits
type RenderPassCreateFlags = RenderPassCreateFlagBits
-- | VkAccessFlagBits - Bitmask specifying memory access types that will
-- participate in a memory dependency
--
-- Description
--
-- Certain access types are only performed by a subset of pipeline
-- stages. Any synchronization command that takes both stage masks and
-- access masks uses both to define the access scopes - only the
-- specified access types performed by the specified stages are included
-- in the access scope. An application must not specify an access
-- flag in a synchronization command if it does not include a pipeline
-- stage in the corresponding stage mask that is able to perform accesses
-- of that type. The following table lists, for each access flag, which
-- pipeline stages can perform that type of access.
--
-- TODO: table
--
-- Supported access types
--
-- See Also
--
-- AccessFlags
newtype AccessFlagBits
AccessFlagBits :: Flags -> AccessFlagBits
-- | ACCESS_INDIRECT_COMMAND_READ_BIT specifies read access to
-- indirect command data read as part of an indirect drawing or dispatch
-- command.
pattern ACCESS_INDIRECT_COMMAND_READ_BIT :: AccessFlagBits
-- | ACCESS_INDEX_READ_BIT specifies read access to an index buffer
-- as part of an indexed drawing command, bound by
-- cmdBindIndexBuffer.
pattern ACCESS_INDEX_READ_BIT :: AccessFlagBits
-- | ACCESS_VERTEX_ATTRIBUTE_READ_BIT specifies read access to a
-- vertex buffer as part of a drawing command, bound by
-- cmdBindVertexBuffers.
pattern ACCESS_VERTEX_ATTRIBUTE_READ_BIT :: AccessFlagBits
-- | ACCESS_UNIFORM_READ_BIT specifies read access to a uniform
-- buffer.
pattern ACCESS_UNIFORM_READ_BIT :: AccessFlagBits
-- | ACCESS_INPUT_ATTACHMENT_READ_BIT specifies read access to an
-- input attachment within a render pass during fragment shading.
pattern ACCESS_INPUT_ATTACHMENT_READ_BIT :: AccessFlagBits
-- | ACCESS_SHADER_READ_BIT specifies read access to a storage
-- buffer, physical storage buffer, uniform texel
-- buffer, storage texel buffer, sampled image, or
-- storage image.
pattern ACCESS_SHADER_READ_BIT :: AccessFlagBits
-- | ACCESS_SHADER_WRITE_BIT specifies write access to a storage
-- buffer, physical storage buffer, storage texel
-- buffer, or storage image.
pattern ACCESS_SHADER_WRITE_BIT :: AccessFlagBits
-- | ACCESS_COLOR_ATTACHMENT_READ_BIT specifies read access to a
-- color attachment, such as via blending, logic
-- operations, or via certain subpass load operations. It does
-- not include advanced blend operations.
pattern ACCESS_COLOR_ATTACHMENT_READ_BIT :: AccessFlagBits
-- | ACCESS_COLOR_ATTACHMENT_WRITE_BIT specifies write access to a
-- color, resolve, or depth/stencil resolve attachment during a
-- render pass or via certain subpass load and store
-- operations.
pattern ACCESS_COLOR_ATTACHMENT_WRITE_BIT :: AccessFlagBits
-- | ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT specifies read access
-- to a depth/stencil attachment, via depth or stencil
-- operations or via certain subpass load operations.
pattern ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT :: AccessFlagBits
-- | ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT specifies write
-- access to a depth/stencil attachment, via depth or stencil
-- operations or via certain subpass load and store
-- operations.
pattern ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT :: AccessFlagBits
-- | ACCESS_TRANSFER_READ_BIT specifies read access to an image or
-- buffer in a copy operation.
pattern ACCESS_TRANSFER_READ_BIT :: AccessFlagBits
-- | ACCESS_TRANSFER_WRITE_BIT specifies write access to an image or
-- buffer in a clear or copy operation.
pattern ACCESS_TRANSFER_WRITE_BIT :: AccessFlagBits
-- | 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.
pattern ACCESS_HOST_READ_BIT :: AccessFlagBits
-- | 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.
pattern ACCESS_HOST_WRITE_BIT :: AccessFlagBits
-- | 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 access flags that are valid where it is
-- used.
pattern ACCESS_MEMORY_READ_BIT :: AccessFlagBits
-- | ACCESS_MEMORY_WRITE_BIT specifies all write accesses. It is
-- always valid in any access mask, and is treated as equivalent to
-- setting all WRITE access flags that are valid where it is
-- used.
pattern ACCESS_MEMORY_WRITE_BIT :: AccessFlagBits
-- | ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV specifies writes to the
-- Buffer preprocess outputs in
-- cmdPreprocessGeneratedCommandsNV.
pattern ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV :: AccessFlagBits
-- | ACCESS_COMMAND_PREPROCESS_READ_BIT_NV specifies reads from
-- Buffer inputs to cmdPreprocessGeneratedCommandsNV.
pattern ACCESS_COMMAND_PREPROCESS_READ_BIT_NV :: AccessFlagBits
-- | ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT specifies read access
-- to a fragment density map attachment during dynamic fragment
-- density map operations
pattern ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT :: AccessFlagBits
-- | ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV specifies read access to
-- a shading rate image as part of a drawing command, as bound by
-- cmdBindShadingRateImageNV.
pattern ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV :: AccessFlagBits
-- | ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR specifies write
-- access to an acceleration structure as part of a build command.
pattern ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR :: AccessFlagBits
-- | ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR specifies read
-- access to an acceleration structure as part of a trace or build
-- command.
pattern ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR :: AccessFlagBits
-- | ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT is similar to
-- ACCESS_COLOR_ATTACHMENT_READ_BIT, but also includes advanced
-- blend operations.
pattern ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT :: AccessFlagBits
-- | ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT specifies read access
-- to a predicate as part of conditional rendering.
pattern ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT :: AccessFlagBits
-- | ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT specifies write
-- access to a transform feedback counter buffer which is written when
-- cmdEndTransformFeedbackEXT executes.
pattern ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT :: AccessFlagBits
-- | ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT specifies read
-- access to a transform feedback counter buffer which is read when
-- cmdBeginTransformFeedbackEXT executes.
pattern ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT :: AccessFlagBits
-- | ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT specifies write access
-- to a transform feedback buffer made when transform feedback is active.
pattern ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT :: AccessFlagBits
type AccessFlags = AccessFlagBits
-- | VkAttachmentDescriptionFlagBits - Bitmask specifying additional
-- properties of an attachment
--
-- See Also
--
-- AttachmentDescriptionFlags
newtype AttachmentDescriptionFlagBits
AttachmentDescriptionFlagBits :: Flags -> AttachmentDescriptionFlagBits
-- | ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT specifies that the
-- attachment aliases the same device memory as other attachments.
pattern ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT :: AttachmentDescriptionFlagBits
type AttachmentDescriptionFlags = AttachmentDescriptionFlagBits
-- | VkDependencyFlagBits - Bitmask specifying how execution and memory
-- dependencies are formed
--
-- See Also
--
-- DependencyFlags
newtype DependencyFlagBits
DependencyFlagBits :: Flags -> DependencyFlagBits
-- | DEPENDENCY_BY_REGION_BIT specifies that dependencies will be
-- framebuffer-local.
pattern DEPENDENCY_BY_REGION_BIT :: DependencyFlagBits
-- | DEPENDENCY_VIEW_LOCAL_BIT specifies that a subpass has more
-- than one view.
pattern DEPENDENCY_VIEW_LOCAL_BIT :: DependencyFlagBits
-- | DEPENDENCY_DEVICE_GROUP_BIT specifies that dependencies are
-- non-device-local dependency.
pattern DEPENDENCY_DEVICE_GROUP_BIT :: DependencyFlagBits
type DependencyFlags = DependencyFlagBits
-- | VkSubpassDescriptionFlagBits - Bitmask specifying usage of a subpass
--
-- Description
--
-- Note
--
-- Shader resolve operations allow for custom resolve operations, but
-- overdrawing pixels may have a performance and/or power cost.
-- Furthermore, since the contents of any depth stencil attachment or
-- color attachment is undefined at the begining of a shader resolve
-- subpass, any depth testing, stencil testing, or blending which sources
-- these undefined values are also undefined.
--
-- See Also
--
-- SubpassDescriptionFlags
newtype SubpassDescriptionFlagBits
SubpassDescriptionFlagBits :: Flags -> SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM specifies that the
-- subpass performs shader resolve operations.
pattern SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM :: SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM specifies that the
-- framebuffer region is the fragment region, that is, the minimum region
-- dependencies are by pixel rather than by sample, such that any
-- fragment shader invocation can access any sample associated
-- with that fragment shader invocation.
pattern SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM :: SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX specifies
-- that shaders compiled for this subpass use per-view positions which
-- only differ in value in the x component. Per-view viewport mask
-- can also be used.
pattern SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX :: SubpassDescriptionFlagBits
-- | SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX specifies that
-- shaders compiled for this subpass write the attributes for all views
-- in a single invocation of each vertex processing stage. All pipelines
-- compiled against a subpass that includes this bit must write
-- per-view attributes to the *PerViewNV[] shader outputs, in
-- addition to the non-per-view (e.g. Position) outputs.
pattern SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX :: SubpassDescriptionFlagBits
type SubpassDescriptionFlags = SubpassDescriptionFlagBits
-- | VkFramebufferCreateFlagBits - Bitmask specifying framebuffer
-- properties
--
-- See Also
--
-- FramebufferCreateFlags
newtype FramebufferCreateFlagBits
FramebufferCreateFlagBits :: Flags -> FramebufferCreateFlagBits
-- | FRAMEBUFFER_CREATE_IMAGELESS_BIT specifies that image views are
-- not specified, and only attachment compatibility information will be
-- provided via a FramebufferAttachmentImageInfo structure.
pattern FRAMEBUFFER_CREATE_IMAGELESS_BIT :: FramebufferCreateFlagBits
type FramebufferCreateFlags = FramebufferCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.Pass.SubpassDependency
instance GHC.Classes.Eq Vulkan.Core10.Pass.AttachmentReference
instance GHC.Classes.Eq Vulkan.Core10.Pass.AttachmentDescription
instance GHC.Generics.Generic Vulkan.Core10.Pass.AttachmentDescription
instance GHC.Show.Show Vulkan.Core10.Pass.AttachmentDescription
instance GHC.Generics.Generic Vulkan.Core10.Pass.AttachmentReference
instance GHC.Show.Show Vulkan.Core10.Pass.AttachmentReference
instance GHC.Generics.Generic Vulkan.Core10.Pass.SubpassDescription
instance GHC.Show.Show Vulkan.Core10.Pass.SubpassDescription
instance GHC.Generics.Generic Vulkan.Core10.Pass.SubpassDependency
instance GHC.Show.Show Vulkan.Core10.Pass.SubpassDependency
instance GHC.Generics.Generic (Vulkan.Core10.Pass.RenderPassCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pass.RenderPassCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.Pass.FramebufferCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Pass.FramebufferCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pass.FramebufferCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pass.FramebufferCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pass.FramebufferCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pass.FramebufferCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pass.FramebufferCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pass.FramebufferCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Pass.RenderPassCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pass.RenderPassCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Pass.RenderPassCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Pass.RenderPassCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Pass.RenderPassCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Pass.RenderPassCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pass.SubpassDependency
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pass.SubpassDependency
instance Foreign.Storable.Storable Vulkan.Core10.Pass.SubpassDependency
instance Vulkan.Zero.Zero Vulkan.Core10.Pass.SubpassDependency
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pass.SubpassDescription
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pass.SubpassDescription
instance Vulkan.Zero.Zero Vulkan.Core10.Pass.SubpassDescription
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pass.AttachmentReference
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pass.AttachmentReference
instance Foreign.Storable.Storable Vulkan.Core10.Pass.AttachmentReference
instance Vulkan.Zero.Zero Vulkan.Core10.Pass.AttachmentReference
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Pass.AttachmentDescription
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Pass.AttachmentDescription
instance Foreign.Storable.Storable Vulkan.Core10.Pass.AttachmentDescription
instance Vulkan.Zero.Zero Vulkan.Core10.Pass.AttachmentDescription
module Vulkan.Extensions.VK_EXT_fragment_density_map
-- | VkPhysicalDeviceFragmentDensityMapFeaturesEXT - Structure describing
-- fragment density map features that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceFragmentDensityMapFeaturesEXT
-- structure describe the following features:
--
-- Description
--
-- If the PhysicalDeviceFragmentDensityMapFeaturesEXT structure is
-- included in the pNext chain of
-- PhysicalDeviceFeatures2, it is filled with values indicating
-- whether each feature is supported.
-- PhysicalDeviceFragmentDensityMapFeaturesEXT can also be
-- included in pNext chain of DeviceCreateInfo to enable
-- the features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceFragmentDensityMapFeaturesEXT
PhysicalDeviceFragmentDensityMapFeaturesEXT :: Bool -> Bool -> Bool -> PhysicalDeviceFragmentDensityMapFeaturesEXT
-- | fragmentDensityMap specifies whether the implementation
-- supports render passes with a fragment density map attachment. If this
-- feature is not enabled and the pNext chain of
-- RenderPassCreateInfo includes a
-- RenderPassFragmentDensityMapCreateInfoEXT structure,
-- fragmentDensityMapAttachment must be
-- ATTACHMENT_UNUSED.
[$sel:fragmentDensityMap:PhysicalDeviceFragmentDensityMapFeaturesEXT] :: PhysicalDeviceFragmentDensityMapFeaturesEXT -> Bool
-- | fragmentDensityMapDynamic specifies whether the
-- implementation supports dynamic fragment density map image views. If
-- this feature is not enabled,
-- IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT
-- must not be included in
-- ImageViewCreateInfo::flags.
[$sel:fragmentDensityMapDynamic:PhysicalDeviceFragmentDensityMapFeaturesEXT] :: PhysicalDeviceFragmentDensityMapFeaturesEXT -> Bool
-- | fragmentDensityMapNonSubsampledImages specifies whether the
-- implementation supports regular non-subsampled image attachments with
-- fragment density map render passes. If this feature is not enabled,
-- render passes with a fragment density map attachment
-- must only have subsampled attachments bound.
[$sel:fragmentDensityMapNonSubsampledImages:PhysicalDeviceFragmentDensityMapFeaturesEXT] :: PhysicalDeviceFragmentDensityMapFeaturesEXT -> Bool
-- | VkPhysicalDeviceFragmentDensityMapPropertiesEXT - Structure describing
-- fragment density map properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the
-- PhysicalDeviceFragmentDensityMapPropertiesEXT structure
-- describe the following implementation-dependent limits:
--
-- Valid Usage (Implicit)
--
-- If the PhysicalDeviceFragmentDensityMapPropertiesEXT structure
-- is included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits and properties.
--
-- See Also
--
-- Bool32, Extent2D, StructureType
data PhysicalDeviceFragmentDensityMapPropertiesEXT
PhysicalDeviceFragmentDensityMapPropertiesEXT :: Extent2D -> Extent2D -> Bool -> PhysicalDeviceFragmentDensityMapPropertiesEXT
-- | minFragmentDensityTexelSize is the minimum fragment
-- density texel size.
[$sel:minFragmentDensityTexelSize:PhysicalDeviceFragmentDensityMapPropertiesEXT] :: PhysicalDeviceFragmentDensityMapPropertiesEXT -> Extent2D
-- | maxFragmentDensityTexelSize is the maximum fragment density
-- texel size.
[$sel:maxFragmentDensityTexelSize:PhysicalDeviceFragmentDensityMapPropertiesEXT] :: PhysicalDeviceFragmentDensityMapPropertiesEXT -> Extent2D
-- | fragmentDensityInvocations specifies whether the
-- implementation may invoke additional fragment shader
-- invocations for each covered sample.
[$sel:fragmentDensityInvocations:PhysicalDeviceFragmentDensityMapPropertiesEXT] :: PhysicalDeviceFragmentDensityMapPropertiesEXT -> Bool
-- | VkRenderPassFragmentDensityMapCreateInfoEXT - Structure containing
-- fragment density map attachment for render pass
--
-- Description
--
-- The fragment density map attachment is read at an
-- implementation-dependent time either by the host during
-- cmdBeginRenderPass if the attachment’s image view was not
-- created with flags containing
-- IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT, or by
-- the device when drawing commands in the renderpass execute
-- PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT.
--
-- If this structure is not present, it is as if
-- fragmentDensityMapAttachment was given as
-- ATTACHMENT_UNUSED.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AttachmentReference, StructureType
data RenderPassFragmentDensityMapCreateInfoEXT
RenderPassFragmentDensityMapCreateInfoEXT :: AttachmentReference -> RenderPassFragmentDensityMapCreateInfoEXT
-- | fragmentDensityMapAttachment is the fragment density map to
-- use for the render pass.
[$sel:fragmentDensityMapAttachment:RenderPassFragmentDensityMapCreateInfoEXT] :: RenderPassFragmentDensityMapCreateInfoEXT -> AttachmentReference
type EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION = 1
pattern EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION :: forall a. Integral a => a
type EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME = "VK_EXT_fragment_density_map"
pattern EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_fragment_density_map.RenderPassFragmentDensityMapCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_fragment_density_map.PhysicalDeviceFragmentDensityMapFeaturesEXT
module Vulkan.Core10.Memory
-- | vkAllocateMemory - Allocate device memory
--
-- Description
--
-- Allocations returned by allocateMemory are guaranteed to meet
-- any alignment requirement of the implementation. For example, if an
-- implementation requires 128 byte alignment for images and 64 byte
-- alignment for buffers, the device memory returned through this
-- mechanism would be 128-byte aligned. This ensures that applications
-- can correctly suballocate objects of different types (with
-- potentially different alignment requirements) in the same memory
-- object.
--
-- When memory is allocated, its contents are undefined with the
-- following constraint:
--
--
-- - The contents of unprotected memory must not be a function
-- of data protected memory objects, even if those memory objects were
-- previously freed.
--
--
-- Note
--
-- The contents of memory allocated by one application should not
-- be a function of data from protected memory objects of another
-- application, even if those memory objects were previously freed.
--
-- The maximum number of valid memory allocations that can exist
-- simultaneously within a Device may be restricted by
-- implementation- or platform-dependent limits. If a call to
-- allocateMemory would cause the total number of allocations to
-- exceed these limits, such a call will fail and must return
-- ERROR_TOO_MANY_OBJECTS. The maxMemoryAllocationCount
-- feature describes the number of allocations that can exist
-- simultaneously before encountering these internal limits.
--
-- Some platforms may have a limit on the maximum size of a single
-- allocation. For example, certain systems may fail to create
-- allocations with a size greater than or equal to 4GB. Such a limit is
-- implementation-dependent, and if such a failure occurs then the error
-- ERROR_OUT_OF_DEVICE_MEMORY must be returned. This limit
-- is advertised in
-- PhysicalDeviceMaintenance3Properties::maxMemoryAllocationSize.
--
-- The cumulative memory size allocated to a heap can be limited
-- by the size of the specified heap. In such cases, allocated memory is
-- tracked on a per-device and per-heap basis. Some platforms allow
-- overallocation into other heaps. The overallocation behavior
-- can be specified through the
-- VK_AMD_memory_overallocation_behavior extension.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pAllocateInfo must be a valid pointer to a valid
-- MemoryAllocateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pMemory must be a valid pointer to a
-- DeviceMemory handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, DeviceMemory,
-- MemoryAllocateInfo
allocateMemory :: forall a io. (Extendss MemoryAllocateInfo a, PokeChain a, MonadIO io) => Device -> MemoryAllocateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io DeviceMemory
-- | A convenience wrapper to make a compatible pair of calls to
-- allocateMemory and freeMemory
--
-- To ensure that freeMemory is always called: pass bracket
-- (or the allocate function from your favourite resource management
-- library) as the first argument. To just extract the pair pass
-- (,) as the first argument.
withMemory :: forall a io r. (Extendss MemoryAllocateInfo a, PokeChain a, MonadIO io) => Device -> MemoryAllocateInfo a -> Maybe AllocationCallbacks -> (io DeviceMemory -> (DeviceMemory -> io ()) -> r) -> r
-- | vkFreeMemory - Free device memory
--
-- Description
--
-- Before freeing a memory object, an application must ensure the
-- memory object is no longer in use by the device—for example by
-- command buffers in the pending state. Memory can be
-- freed whilst still bound to resources, but those resources must
-- not be used afterwards. If there are still any bound images or
-- buffers, the memory may not be immediately released by the
-- implementation, but must be released by the time all bound
-- images and buffers have been destroyed. Once memory is released, it is
-- returned to the heap from which it was allocated.
--
-- How memory objects are bound to Images and Buffers is described in
-- detail in the Resource Memory Association section.
--
-- If a memory object is mapped at the time it is freed, it is implicitly
-- unmapped.
--
-- Note
--
-- As described below, host writes are not implicitly flushed when
-- the memory object is unmapped, but the implementation must
-- guarantee that writes that have not been flushed do not affect any
-- other memory.
--
-- Valid Usage
--
--
-- - All submitted commands that refer to memory (via images
-- or buffers) must have completed execution
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If memory is not NULL_HANDLE, memory
-- must be a valid DeviceMemory handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If memory is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to memory must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, DeviceMemory
freeMemory :: forall io. MonadIO io => Device -> DeviceMemory -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkMapMemory - Map a memory object into application address space
--
-- Description
--
-- After a successful call to mapMemory the memory object
-- memory is considered to be currently host mapped.
--
-- Note
--
-- It is an application error to call mapMemory on a memory object
-- that is already host mapped.
--
-- Note
--
-- mapMemory will fail if the implementation is unable to allocate
-- an appropriately sized contiguous virtual address range, e.g. due to
-- virtual address space fragmentation or platform limits. In such cases,
-- mapMemory must return ERROR_MEMORY_MAP_FAILED.
-- The application can improve the likelihood of success by
-- reducing the size of the mapped range and/or removing unneeded
-- mappings using unmapMemory.
--
-- mapMemory does not check whether the device memory is currently
-- in use before returning the host-accessible pointer. The application
-- must guarantee that any previously submitted command that
-- writes to this range has completed before the host reads from or
-- writes to that range, and that any previously submitted command that
-- reads from that range has completed before the host writes to that
-- region (see here for details on fulfilling such a guarantee).
-- If the device memory was allocated without the
-- MEMORY_PROPERTY_HOST_COHERENT_BIT set, these guarantees
-- must be made for an extended range: the application must
-- round down the start of the range to the nearest multiple of
-- PhysicalDeviceLimits::nonCoherentAtomSize, and round
-- the end of the range up to the nearest multiple of
-- PhysicalDeviceLimits::nonCoherentAtomSize.
--
-- While a range of device memory is host mapped, the application is
-- responsible for synchronizing both device and host access to that
-- memory range.
--
-- Note
--
-- It is important for the application developer to become meticulously
-- familiar with all of the mechanisms described in the chapter on
-- Synchronization and Cache Control as they are crucial to
-- maintaining memory access ordering.
--
-- Valid Usage
--
--
-- - memory must not be currently host mapped
--
--
--
-- - offset must be less than the size of
-- memory
-- - If size is not equal to WHOLE_SIZE, size
-- must be greater than 0
-- - If size is not equal to WHOLE_SIZE, size
-- must be less than or equal to the size of the memory
-- minus offset
-- - memory must have been created with a memory type
-- that reports MEMORY_PROPERTY_HOST_VISIBLE_BIT
-- - memory must not have been allocated with multiple
-- instances
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - memory must be a valid DeviceMemory
-- handle
-- - flags must be 0
-- - ppData must be a valid pointer to a pointer
-- value
-- - memory must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to memory must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceMemory, DeviceSize,
-- MemoryMapFlags
mapMemory :: forall io. MonadIO io => Device -> DeviceMemory -> ("offset" ::: DeviceSize) -> DeviceSize -> MemoryMapFlags -> io ("data" ::: Ptr ())
-- | A convenience wrapper to make a compatible pair of calls to
-- mapMemory and unmapMemory
--
-- To ensure that unmapMemory is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withMappedMemory :: forall io r. MonadIO io => Device -> DeviceMemory -> DeviceSize -> DeviceSize -> MemoryMapFlags -> (io (Ptr ()) -> (Ptr () -> io ()) -> r) -> r
-- | vkUnmapMemory - Unmap a previously mapped memory object
--
-- Valid Usage
--
--
-- - memory must be currently host mapped
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - memory must be a valid DeviceMemory
-- handle
-- - memory must have been created, allocated, or
-- retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to memory must be externally
-- synchronized
--
--
-- See Also
--
-- Device, DeviceMemory
unmapMemory :: forall io. MonadIO io => Device -> DeviceMemory -> io ()
-- | vkFlushMappedMemoryRanges - Flush mapped memory ranges
--
-- Description
--
-- flushMappedMemoryRanges guarantees that host writes to the
-- memory ranges described by pMemoryRanges are made available
-- to the host memory domain, such that they can be made available
-- to the device memory domain via memory domain operations using
-- the ACCESS_HOST_WRITE_BIT access type.
--
-- Within each range described by pMemoryRanges, each set of
-- nonCoherentAtomSize bytes in that range is flushed if any
-- byte in that set has been written by the host since it was first host
-- mapped, or the last time it was flushed. If pMemoryRanges
-- includes sets of nonCoherentAtomSize bytes where no bytes
-- have been written by the host, those bytes must not be flushed.
--
-- Unmapping non-coherent memory does not implicitly flush the host
-- mapped memory, and host writes that have not been flushed may
-- not ever be visible to the device. However, implementations
-- must ensure that writes that have not been flushed do not
-- become visible to any other memory.
--
-- Note
--
-- The above guarantee avoids a potential memory corruption in scenarios
-- where host writes to a mapped memory object have not been flushed
-- before the memory is unmapped (or freed), and the virtual address
-- range is subsequently reused for a different mapping (or memory
-- allocation).
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, MappedMemoryRange
flushMappedMemoryRanges :: forall io. MonadIO io => Device -> ("memoryRanges" ::: Vector MappedMemoryRange) -> io ()
-- | vkInvalidateMappedMemoryRanges - Invalidate ranges of mapped memory
-- objects
--
-- Description
--
-- invalidateMappedMemoryRanges guarantees that device writes to
-- the memory ranges described by pMemoryRanges, which have been
-- made available to the host memory domain using the
-- ACCESS_HOST_WRITE_BIT and ACCESS_HOST_READ_BIT access
-- types, are made visible to the host. If a range of non-coherent
-- memory is written by the host and then invalidated without first being
-- flushed, its contents are undefined.
--
-- Within each range described by pMemoryRanges, each set of
-- nonCoherentAtomSize bytes in that range is invalidated if any
-- byte in that set has been written by the device since it was first
-- host mapped, or the last time it was invalidated.
--
-- Note
--
-- Mapping non-coherent memory does not implicitly invalidate that
-- memory.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, MappedMemoryRange
invalidateMappedMemoryRanges :: forall io. MonadIO io => Device -> ("memoryRanges" ::: Vector MappedMemoryRange) -> io ()
-- | vkGetDeviceMemoryCommitment - Query the current commitment for a
-- VkDeviceMemory
--
-- Description
--
-- The implementation may update the commitment at any time, and
-- the value returned by this query may be out of date.
--
-- The implementation guarantees to allocate any committed memory from
-- the heapIndex indicated by the memory type that the memory
-- object was created with.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Device, DeviceMemory, DeviceSize
getDeviceMemoryCommitment :: forall io. MonadIO io => Device -> DeviceMemory -> io ("committedMemoryInBytes" ::: DeviceSize)
-- | VkMemoryAllocateInfo - Structure containing parameters of a memory
-- allocation
--
-- Description
--
-- A MemoryAllocateInfo structure defines a memory import
-- operation if its pNext chain includes one of the following
-- structures:
--
--
--
-- Importing memory must not modify the content of the memory.
-- Implementations must ensure that importing memory does not
-- enable the importing Vulkan instance to access any memory or resources
-- in other Vulkan instances other than that corresponding to the memory
-- object imported. Implementations must also ensure accessing
-- imported memory which has not been initialized does not allow the
-- importing Vulkan instance to obtain data from the exporting Vulkan
-- instance or vice-versa.
--
-- Note
--
-- How exported and imported memory is isolated is left to the
-- implementation, but applications should be aware that such isolation
-- may prevent implementations from placing multiple exportable
-- memory objects in the same physical or virtual page. Hence,
-- applications should avoid creating many small external memory
-- objects whenever possible.
--
-- When performing a memory import operation, it is the responsibility of
-- the application to ensure the external handles meet all valid usage
-- requirements. However, implementations must perform sufficient
-- validation of external handles to ensure that the operation results in
-- a valid memory object which will not cause program termination, device
-- loss, queue stalls, or corruption of other resources when used as
-- allowed according to its allocation parameters. If the external handle
-- provided does not meet these requirements, the implementation
-- must fail the memory import operation with the error code
-- ERROR_INVALID_EXTERNAL_HANDLE.
--
-- Valid Usage
--
--
--
--
-- - If the pNext chain includes a
-- ExportMemoryAllocateInfo structure, it must not include
-- a ExportMemoryAllocateInfoNV or
-- ExportMemoryWin32HandleInfoNV structure
-- - If the pNext chain includes a
-- ImportMemoryWin32HandleInfoKHR structure, it must not
-- include a ImportMemoryWin32HandleInfoNV structure
-- - If the parameters define an import operation, the external handle
-- specified was created by the Vulkan API, and the external handle type
-- is EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, then the
-- values of allocationSize and memoryTypeIndex
-- must match those specified when the memory object being
-- imported was created
-- - If the parameters define an import operation and the external
-- handle specified was created by the Vulkan API, the device mask
-- specified by MemoryAllocateFlagsInfo must match that
-- specified when the memory object being imported was allocated
-- - If the parameters define an import operation and the external
-- handle specified was created by the Vulkan API, the list of physical
-- devices that comprise the logical device passed to
-- allocateMemory must match the list of physical devices
-- that comprise the logical device on which the memory was originally
-- allocated
-- - If the parameters define an import operation and the external
-- handle is an NT handle or a global share handle created outside of the
-- Vulkan API, the value of memoryTypeIndex must be one
-- of those returned by getMemoryWin32HandlePropertiesKHR
-- - If the parameters define an import operation, the external handle
-- was created by the Vulkan API, and the external handle type is
-- EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR or
-- EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, then the
-- values of allocationSize and memoryTypeIndex
-- must match those specified when the memory object being
-- imported was created
-- - If the parameters define an import operation and the external
-- handle type is EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, or
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,
-- allocationSize must match the size reported in the
-- memory requirements of the image or buffer member of
-- the DedicatedAllocationMemoryAllocateInfoNV structure included
-- in the pNext chain
-- - If the parameters define an import operation and the external
-- handle type is EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,
-- allocationSize must match the size specified when
-- creating the Direct3D 12 heap from which the external handle was
-- extracted
-- - If the parameters define an import operation and the external
-- handle is a POSIX file descriptor created outside of the Vulkan API,
-- the value of memoryTypeIndex must be one of those
-- returned by getMemoryFdPropertiesKHR
-- - If the protected memory feature is not enabled, the
-- MemoryAllocateInfo::memoryTypeIndex must not
-- indicate a memory type that reports
-- MEMORY_PROPERTY_PROTECTED_BIT
-- - If the parameters define an import operation and the external
-- handle is a host pointer, the value of memoryTypeIndex
-- must be one of those returned by
-- getMemoryHostPointerPropertiesEXT
-- - If the parameters define an import operation and the external
-- handle is a host pointer, allocationSize must be an
-- integer multiple of
-- PhysicalDeviceExternalMemoryHostPropertiesEXT::minImportedHostPointerAlignment
-- - If the parameters define an import operation and the external
-- handle is a host pointer, the pNext chain must not
-- include a DedicatedAllocationMemoryAllocateInfoNV structure
-- with either its image or buffer field set to a value
-- other than NULL_HANDLE
-- - If the parameters define an import operation and the external
-- handle is a host pointer, the pNext chain must not
-- include a MemoryDedicatedAllocateInfo structure with either its
-- image or buffer field set to a value other than
-- NULL_HANDLE
-- - If the parameters define an import operation and the external
-- handle type is
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
-- allocationSize must be the size returned by
-- getAndroidHardwareBufferPropertiesANDROID for the Android
-- hardware buffer
-- - If the parameters define an import operation and the external
-- handle type is
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
-- and the pNext chain does not include a
-- MemoryDedicatedAllocateInfo structure or
-- MemoryDedicatedAllocateInfo::image is
-- NULL_HANDLE, the Android hardware buffer must have a
-- AHardwareBuffer_Desc::format of
-- AHARDWAREBUFFER_FORMAT_BLOB and a
-- AHardwareBuffer_Desc::usage that includes
-- AHARDWAREBUFFER_USAGE_GPU_DATA_BUFFER
-- - If the parameters define an import operation and the external
-- handle type is
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
-- memoryTypeIndex must be one of those returned by
-- getAndroidHardwareBufferPropertiesANDROID for the Android
-- hardware buffer
-- - If the parameters do not define an import operation, and the
-- pNext chain includes a ExportMemoryAllocateInfo
-- structure with
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
-- included in its handleTypes member, and the pNext
-- chain includes a MemoryDedicatedAllocateInfo structure with
-- image not equal to NULL_HANDLE, then
-- allocationSize must be 0, otherwise
-- allocationSize must be greater than 0
-- - If the parameters define an import operation, the external handle
-- is an Android hardware buffer, and the pNext chain includes a
-- MemoryDedicatedAllocateInfo with image that is not
-- NULL_HANDLE, the Android hardware buffer’s
-- AHardwareBuffer::usage must include at least
-- one of AHARDWAREBUFFER_USAGE_GPU_FRAMEBUFFER or
-- AHARDWAREBUFFER_USAGE_GPU_SAMPLED_IMAGE
-- - If the parameters define an import operation, the external handle
-- is an Android hardware buffer, and the pNext chain includes a
-- MemoryDedicatedAllocateInfo with image that is not
-- NULL_HANDLE, the format of image must be
-- FORMAT_UNDEFINED or the format returned by
-- getAndroidHardwareBufferPropertiesANDROID in
-- AndroidHardwareBufferFormatPropertiesANDROID::format
-- for the Android hardware buffer
-- - If the parameters define an import operation, the external handle
-- is an Android hardware buffer, and the pNext chain includes a
-- MemoryDedicatedAllocateInfo structure with image that
-- is not NULL_HANDLE, the width, height, and array layer
-- dimensions of image and the Android hardware buffer’s
-- AHardwareBuffer_Desc must be identical
-- - If the parameters define an import operation, the external handle
-- is an Android hardware buffer, and the pNext chain includes a
-- MemoryDedicatedAllocateInfo structure with image that
-- is not NULL_HANDLE, and the Android hardware buffer’s
-- AHardwareBuffer::usage includes
-- AHARDWAREBUFFER_USAGE_GPU_MIPMAP_COMPLETE, the image
-- must have a complete mipmap chain
-- - If the parameters define an import operation, the external handle
-- is an Android hardware buffer, and the pNext chain includes a
-- MemoryDedicatedAllocateInfo structure with image that
-- is not NULL_HANDLE, and the Android hardware buffer’s
-- AHardwareBuffer::usage does not include
-- AHARDWAREBUFFER_USAGE_GPU_MIPMAP_COMPLETE, the image
-- must have exactly one mipmap level
-- - If the parameters define an import operation, the external handle
-- is an Android hardware buffer, and the pNext chain includes a
-- MemoryDedicatedAllocateInfo structure with image that
-- is not NULL_HANDLE, each bit set in the usage of image
-- must be listed in AHardwareBuffer Usage Equivalence, and
-- if there is a corresponding AHARDWAREBUFFER_USAGE bit listed
-- that bit must be included in the Android hardware buffer’s
-- AHardwareBuffer_Desc::usage
-- - If
-- MemoryOpaqueCaptureAddressAllocateInfo::opaqueCaptureAddress
-- is not zero, MemoryAllocateFlagsInfo::flags
-- must include
-- MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
-- - If MemoryAllocateFlagsInfo::flags includes
-- MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT, the
-- bufferDeviceAddressCaptureReplay feature must be
-- enabled
-- - If MemoryAllocateFlagsInfo::flags includes
-- MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT, the
-- bufferDeviceAddress feature must be enabled
-- - If the pNext chain includes a
-- ImportMemoryHostPointerInfoEXT structure,
-- MemoryOpaqueCaptureAddressAllocateInfo::opaqueCaptureAddress
-- must be zero
-- - If the parameters define an import operation,
-- MemoryOpaqueCaptureAddressAllocateInfo::opaqueCaptureAddress
-- must be zero
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- DedicatedAllocationMemoryAllocateInfoNV,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, MemoryAllocateFlagsInfo,
-- MemoryDedicatedAllocateInfo,
-- MemoryOpaqueCaptureAddressAllocateInfo, or
-- MemoryPriorityAllocateInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
--
--
-- See Also
--
-- DeviceSize, StructureType, allocateMemory
data MemoryAllocateInfo (es :: [Type])
MemoryAllocateInfo :: Chain es -> DeviceSize -> Word32 -> MemoryAllocateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:MemoryAllocateInfo] :: MemoryAllocateInfo (es :: [Type]) -> Chain es
-- | allocationSize is the size of the allocation in bytes
[$sel:allocationSize:MemoryAllocateInfo] :: MemoryAllocateInfo (es :: [Type]) -> DeviceSize
-- | memoryTypeIndex is an index identifying a memory type from
-- the memoryTypes array of the
-- PhysicalDeviceMemoryProperties structure
[$sel:memoryTypeIndex:MemoryAllocateInfo] :: MemoryAllocateInfo (es :: [Type]) -> Word32
-- | VkMappedMemoryRange - Structure specifying a mapped memory range
--
-- Valid Usage
--
--
-- - memory must be currently host mapped
--
--
--
-- - If size is not equal to WHOLE_SIZE,
-- offset and size must specify a range
-- contained within the currently mapped range of memory
-- - If size is equal to WHOLE_SIZE, offset
-- must be within the currently mapped range of
-- memory
-- - If size is equal to WHOLE_SIZE, the end of the
-- current mapping of memory must be a multiple of
-- PhysicalDeviceLimits::nonCoherentAtomSize bytes from
-- the beginning of the memory object
-- - offset must be a multiple of
-- PhysicalDeviceLimits::nonCoherentAtomSize
-- - If size is not equal to WHOLE_SIZE, size
-- must either be a multiple of
-- PhysicalDeviceLimits::nonCoherentAtomSize, or
-- offset plus size must equal the size of
-- memory
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - memory must be a valid DeviceMemory
-- handle
--
--
-- See Also
--
-- DeviceMemory, DeviceSize, StructureType,
-- flushMappedMemoryRanges, invalidateMappedMemoryRanges
data MappedMemoryRange
MappedMemoryRange :: DeviceMemory -> DeviceSize -> DeviceSize -> MappedMemoryRange
-- | memory is the memory object to which this range belongs.
[$sel:memory:MappedMemoryRange] :: MappedMemoryRange -> DeviceMemory
-- | offset is the zero-based byte offset from the beginning of
-- the memory object.
[$sel:offset:MappedMemoryRange] :: MappedMemoryRange -> DeviceSize
-- | size is either the size of range, or WHOLE_SIZE to
-- affect the range from offset to the end of the current
-- mapping of the allocation.
[$sel:size:MappedMemoryRange] :: MappedMemoryRange -> DeviceSize
-- | VkMemoryMapFlags - Reserved for future use
--
-- Description
--
-- MemoryMapFlags is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- See Also
--
-- mapMemory
newtype MemoryMapFlags
MemoryMapFlags :: Flags -> MemoryMapFlags
instance GHC.Classes.Eq Vulkan.Core10.Memory.MappedMemoryRange
instance GHC.Generics.Generic (Vulkan.Core10.Memory.MemoryAllocateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Memory.MemoryAllocateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.Memory.MappedMemoryRange
instance GHC.Show.Show Vulkan.Core10.Memory.MappedMemoryRange
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Memory.MappedMemoryRange
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Memory.MappedMemoryRange
instance Foreign.Storable.Storable Vulkan.Core10.Memory.MappedMemoryRange
instance Vulkan.Zero.Zero Vulkan.Core10.Memory.MappedMemoryRange
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Memory.MemoryAllocateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Memory.MemoryAllocateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Memory.MemoryAllocateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Memory.MemoryAllocateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Memory.MemoryAllocateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Memory.MemoryAllocateInfo es)
module Vulkan.Core10.ImageView
-- | vkCreateImageView - Create an image view from an existing image
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- ImageViewCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pView must be a valid pointer to a
-- ImageView handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, ImageView,
-- ImageViewCreateInfo
createImageView :: forall a io. (Extendss ImageViewCreateInfo a, PokeChain a, MonadIO io) => Device -> ImageViewCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io ImageView
-- | A convenience wrapper to make a compatible pair of calls to
-- createImageView and destroyImageView
--
-- To ensure that destroyImageView is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withImageView :: forall a io r. (Extendss ImageViewCreateInfo a, PokeChain a, MonadIO io) => Device -> ImageViewCreateInfo a -> Maybe AllocationCallbacks -> (io ImageView -> (ImageView -> io ()) -> r) -> r
-- | vkDestroyImageView - Destroy an image view object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to imageView
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when
-- imageView was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- imageView was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If imageView is not NULL_HANDLE,
-- imageView must be a valid ImageView handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If imageView is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to imageView must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, ImageView
destroyImageView :: forall io. MonadIO io => Device -> ImageView -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkComponentMapping - Structure specifying a color component mapping
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- ComponentSwizzle, ImageViewCreateInfo,
-- SamplerYcbcrConversionCreateInfo
data ComponentMapping
ComponentMapping :: ComponentSwizzle -> ComponentSwizzle -> ComponentSwizzle -> ComponentSwizzle -> ComponentMapping
-- | r is a ComponentSwizzle specifying the component value
-- placed in the R component of the output vector.
--
-- r must be a valid ComponentSwizzle value
[$sel:r:ComponentMapping] :: ComponentMapping -> ComponentSwizzle
-- | g is a ComponentSwizzle specifying the component value
-- placed in the G component of the output vector.
--
-- g must be a valid ComponentSwizzle value
[$sel:g:ComponentMapping] :: ComponentMapping -> ComponentSwizzle
-- | b is a ComponentSwizzle specifying the component value
-- placed in the B component of the output vector.
--
-- b must be a valid ComponentSwizzle value
[$sel:b:ComponentMapping] :: ComponentMapping -> ComponentSwizzle
-- | a is a ComponentSwizzle specifying the component value
-- placed in the A component of the output vector.
--
-- a must be a valid ComponentSwizzle value
[$sel:a:ComponentMapping] :: ComponentMapping -> ComponentSwizzle
-- | VkImageSubresourceRange - Structure specifying an image subresource
-- range
--
-- Description
--
-- The number of mipmap levels and array layers must be a subset
-- of the image subresources in the image. If an application wants to use
-- all mip levels or layers in an image after the baseMipLevel
-- or baseArrayLayer, it can set levelCount and
-- layerCount to the special values REMAINING_MIP_LEVELS
-- and REMAINING_ARRAY_LAYERS without knowing the exact number of
-- mip levels or layers.
--
-- For cube and cube array image views, the layers of the image view
-- starting at baseArrayLayer correspond to faces in the order
-- +X, -X, +Y, -Y, +Z, -Z. For cube arrays, each set of six sequential
-- layers is a single cube, so the number of cube maps in a cube map
-- array view is layerCount / 6, and image array layer
-- (baseArrayLayer + i) is face index (i mod 6) of cube i /
-- 6. If the number of layers in the view, whether set explicitly in
-- layerCount or implied by REMAINING_ARRAY_LAYERS, is
-- not a multiple of 6, the last cube map in the array must not be
-- accessed.
--
-- aspectMask must be only IMAGE_ASPECT_COLOR_BIT,
-- IMAGE_ASPECT_DEPTH_BIT or IMAGE_ASPECT_STENCIL_BIT if
-- format is a color, depth-only or stencil-only format,
-- respectively, except if format is a multi-planar
-- format. If using a depth/stencil format with both depth and
-- stencil components, aspectMask must include at least
-- one of IMAGE_ASPECT_DEPTH_BIT and
-- IMAGE_ASPECT_STENCIL_BIT, and can include both.
--
-- When the ImageSubresourceRange structure is used to select a
-- subset of the slices of a 3D image’s mip level in order to create a 2D
-- or 2D array image view of a 3D image created with
-- IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT, baseArrayLayer
-- and layerCount specify the first slice index and the number
-- of slices to include in the created image view. Such an image view
-- can be used as a framebuffer attachment that refers only to the
-- specified range of slices of the selected mip level. However, any
-- layout transitions performed on such an attachment view during a
-- render pass instance still apply to the entire subresource referenced
-- which includes all the slices of the selected mip level.
--
-- When using an image view of a depth/stencil image to populate a
-- descriptor set (e.g. for sampling in the shader, or for use as an
-- input attachment), the aspectMask must only include
-- one bit and selects whether the image view is used for depth reads
-- (i.e. using a floating-point sampler or input attachment in the
-- shader) or stencil reads (i.e. using an unsigned integer sampler or
-- input attachment in the shader). When an image view of a depth/stencil
-- image is used as a depth/stencil framebuffer attachment, the
-- aspectMask is ignored and both depth and stencil image
-- subresources are used.
--
-- The ComponentMapping components member describes a
-- remapping from components of the image to components of the vector
-- returned by shader image instructions. This remapping must be
-- identity for storage image descriptors, input attachment descriptors,
-- framebuffer attachments, and any ImageView used with a combined
-- image sampler that enables sampler Y′CBCR conversion.
--
-- When creating a ImageView, if sampler Y′CBCR conversion
-- is enabled in the sampler, the aspectMask of a
-- subresourceRange used by the ImageView must be
-- IMAGE_ASPECT_COLOR_BIT.
--
-- When creating a ImageView, if sampler Y′CBCR conversion is not
-- enabled in the sampler and the image format is
-- multi-planar, the image must have been created with
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT, and the aspectMask of
-- the ImageView’s subresourceRange must be
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT or
-- IMAGE_ASPECT_PLANE_2_BIT.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - aspectMask must not be 0
--
--
-- See Also
--
-- ImageAspectFlags, ImageMemoryBarrier,
-- ImageViewCreateInfo, cmdClearColorImage,
-- cmdClearDepthStencilImage
data ImageSubresourceRange
ImageSubresourceRange :: ImageAspectFlags -> Word32 -> Word32 -> Word32 -> Word32 -> ImageSubresourceRange
-- | aspectMask is a bitmask of ImageAspectFlagBits
-- specifying which aspect(s) of the image are included in the view.
[$sel:aspectMask:ImageSubresourceRange] :: ImageSubresourceRange -> ImageAspectFlags
-- | baseMipLevel is the first mipmap level accessible to the
-- view.
[$sel:baseMipLevel:ImageSubresourceRange] :: ImageSubresourceRange -> Word32
-- | levelCount is the number of mipmap levels (starting from
-- baseMipLevel) accessible to the view.
[$sel:levelCount:ImageSubresourceRange] :: ImageSubresourceRange -> Word32
-- | baseArrayLayer is the first array layer accessible to the
-- view.
[$sel:baseArrayLayer:ImageSubresourceRange] :: ImageSubresourceRange -> Word32
-- | layerCount is the number of array layers (starting from
-- baseArrayLayer) accessible to the view.
[$sel:layerCount:ImageSubresourceRange] :: ImageSubresourceRange -> Word32
-- | VkImageViewCreateInfo - Structure specifying parameters of a newly
-- created image view
--
-- Description
--
-- Some of the image creation parameters are inherited by the
-- view. In particular, image view creation inherits the implicit
-- parameter usage specifying the allowed usages of the image
-- view that, by default, takes the value of the corresponding
-- usage parameter specified in ImageCreateInfo at image
-- creation time. If the image was has a depth-stencil format and was
-- created with a ImageStencilUsageCreateInfo structure included
-- in the pNext chain of ImageCreateInfo, the usage is
-- calculated based on the subresource.aspectMask provided:
--
--
--
-- If image was created with the
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, and if the
-- format of the image is not multi-planar,
-- format can be different from the image’s format, but
-- if image was created without the
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag and they are
-- not equal they must be compatible. Image format
-- compatibility is defined in the Format Compatibility Classes
-- section. Views of compatible formats will have the same mapping
-- between texel coordinates and memory locations irrespective of the
-- format, with only the interpretation of the bit pattern
-- changing.
--
-- Note
--
-- Values intended to be used with one view format may not be
-- exactly preserved when written or read through a different format. For
-- example, an integer value that happens to have the bit pattern of a
-- floating point denorm or NaN may be flushed or canonicalized
-- when written or read through a view with a floating point format.
-- Similarly, a value written through a signed normalized format that has
-- a bit pattern exactly equal to -2b may be changed to -2b + 1 as
-- described in Conversion from Normalized Fixed-Point to
-- Floating-Point.
--
-- If image was created with the
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag,
-- format must be compatible with the image’s
-- format as described above, or must be an uncompressed format in
-- which case it must be size-compatible with the image’s
-- format, as defined for copying data between images In this case
-- the resulting image view’s texel dimensions equal the dimensions of
-- the selected mip level divided by the compressed texel block size and
-- rounded up.
--
-- If the image view is to be used with a sampler which supports
-- sampler Y′CBCR conversion, an identically defined object
-- of type SamplerYcbcrConversion to that used to create the
-- sampler must be passed to createImageView in a
-- SamplerYcbcrConversionInfo included in the pNext chain
-- of ImageViewCreateInfo. Conversely, if a
-- SamplerYcbcrConversion object is passed to
-- createImageView, an identically defined
-- SamplerYcbcrConversion object must be used when sampling
-- the image.
--
-- If the image has a multi-planar format and
-- subresourceRange.aspectMask is IMAGE_ASPECT_COLOR_BIT,
-- format must be identical to the image format,
-- and the sampler to be used with the image view must enable
-- sampler Y′CBCR conversion.
--
-- If image was created with the
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT and the image has a
-- multi-planar format, and if
-- subresourceRange.aspectMask is
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT, format must be
-- compatible with the corresponding plane of the image, and the
-- sampler to be used with the image view must not enable
-- sampler Y′CBCR conversion. The width and
-- height of the single-plane image view must be derived
-- from the multi-planar image’s dimensions in the manner listed for
-- plane compatibility for the plane.
--
-- Any view of an image plane will have the same mapping between texel
-- coordinates and memory locations as used by the channels of the color
-- aspect, subject to the formulae relating texel coordinates to
-- lower-resolution planes as described in Chroma Reconstruction.
-- That is, if an R or B plane has a reduced resolution relative to the G
-- plane of the multi-planar image, the image view operates using the
-- (uplane, vplane) unnormalized coordinates of the
-- reduced-resolution plane, and these coordinates access the same memory
-- locations as the (ucolor, vcolor) unnormalized
-- coordinates of the color aspect for which chroma reconstruction
-- operations operate on the same (uplane, vplane) or
-- (iplane, jplane) coordinates.
--
-- TODO: table
--
-- Image and image view parameter compatibility requirements
--
-- Valid Usage
--
--
--
--
-- - If the image cubemap arrays feature is not enabled,
-- viewType must not be
-- IMAGE_VIEW_TYPE_CUBE_ARRAY
-- - If image was created with IMAGE_TYPE_3D but
-- without IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT set then
-- viewType must not be IMAGE_VIEW_TYPE_2D or
-- IMAGE_VIEW_TYPE_2D_ARRAY
-- - image must have been created with a usage
-- value containing at least one of IMAGE_USAGE_SAMPLED_BIT,
-- IMAGE_USAGE_STORAGE_BIT,
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT,
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV, or
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT
-- - The format features of the resultant image view must
-- contain at least one bit
-- - If usage contains IMAGE_USAGE_SAMPLED_BIT, then
-- the format features of the resultant image view must
-- contain FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- - If usage contains IMAGE_USAGE_STORAGE_BIT, then
-- the image view’s format features must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_BIT
-- - If usage contains
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT, then the image view’s
-- format features must contain
-- FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
-- - If usage contains
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, then the image view’s
-- format features must contain
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If usage contains
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT, then the image view’s
-- format features must contain at least one of
-- FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - subresourceRange.baseMipLevel must be less than
-- the mipLevels specified in ImageCreateInfo when
-- image was created
-- - If subresourceRange.levelCount is not
-- REMAINING_MIP_LEVELS, subresourceRange.baseMipLevel +
-- subresourceRange.levelCount must be less than or equal
-- to the mipLevels specified in ImageCreateInfo when
-- image was created
-- - If image was created with usage containing
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT,
-- subresourceRange.levelCount must be 1
-- - If image is not a 3D image created with
-- IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT set, or viewType
-- is not IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY,
-- subresourceRange.baseArrayLayer must be less than the
-- arrayLayers specified in ImageCreateInfo when
-- image was created
-- - If subresourceRange.layerCount is not
-- REMAINING_ARRAY_LAYERS, image is not a 3D image
-- created with IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT set, or
-- viewType is not IMAGE_VIEW_TYPE_2D or
-- IMAGE_VIEW_TYPE_2D_ARRAY, subresourceRange.layerCount
-- must be non-zero and subresourceRange.baseArrayLayer +
-- subresourceRange.layerCount must be less than or equal
-- to the arrayLayers specified in ImageCreateInfo when
-- image was created
-- - If image is a 3D image created with
-- IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT set, and viewType
-- is IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY,
-- subresourceRange.baseArrayLayer must be less than the
-- depth computed from baseMipLevel and extent.depth
-- specified in ImageCreateInfo when image was created,
-- according to the formula defined in Image Miplevel Sizing
-- - If subresourceRange.layerCount is not
-- REMAINING_ARRAY_LAYERS, image is a 3D image created
-- with IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT set, and
-- viewType is IMAGE_VIEW_TYPE_2D or
-- IMAGE_VIEW_TYPE_2D_ARRAY, subresourceRange.layerCount
-- must be non-zero and subresourceRange.baseArrayLayer +
-- subresourceRange.layerCount must be less than or equal
-- to the depth computed from baseMipLevel and
-- extent.depth specified in ImageCreateInfo when
-- image was created, according to the formula defined in
-- Image Miplevel Sizing
-- - If image was created with the
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, but without the
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag, and if the
-- format of the image is not a multi-planar
-- format, format must be compatible with the
-- format used to create image, as defined in Format
-- Compatibility Classes
-- - If image was created with the
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag,
-- format must be compatible with, or must be an
-- uncompressed format that is size-compatible with, the format
-- used to create image
-- - If image was created with the
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag, the
-- levelCount and layerCount members of
-- subresourceRange must both be 1
-- - If a ImageFormatListCreateInfo structure was included in
-- the pNext chain of the ImageCreateInfo structure used
-- when creating image and the viewFormatCount field of
-- ImageFormatListCreateInfo is not zero then format
-- must be one of the formats in
-- ImageFormatListCreateInfo::pViewFormats
-- - If image was created with the
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, if the format of
-- the image is a multi-planar format, and if
-- subresourceRange.aspectMask is one of
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT, then format must be
-- compatible with the Format for the plane of the image
-- format indicated by subresourceRange.aspectMask, as
-- defined in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes
-- - If image was not created with the
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, or if the format
-- of the image is a multi-planar format and if
-- subresourceRange.aspectMask is IMAGE_ASPECT_COLOR_BIT,
-- format must be identical to the format used
-- to create image
-- - If the pNext chain includes a
-- SamplerYcbcrConversionInfo structure with a conversion
-- value other than NULL_HANDLE, all members of
-- components must have the value
-- COMPONENT_SWIZZLE_IDENTITY
-- - If image is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - subresourceRange and viewType must be
-- compatible with the image, as described in the compatibility
-- table
-- - If image has an external format, format
-- must be FORMAT_UNDEFINED
-- - If image has an external format, the
-- pNext chain must include a
-- SamplerYcbcrConversionInfo structure with a conversion
-- object created with the same external format as image
-- - If image has an external format, all members of
-- components must be
-- COMPONENT_SWIZZLE_IDENTITY
-- - If image was created with usage containing
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV, viewType
-- must be IMAGE_VIEW_TYPE_2D or
-- IMAGE_VIEW_TYPE_2D_ARRAY
-- - If image was created with usage containing
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV, format
-- must be FORMAT_R8_UINT
-- - If dynamic fragment density map feature is not enabled,
-- flags must not contain
-- IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT
-- - If dynamic fragment density map feature is not enabled and
-- image was created with usage containing
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT, flags
-- must not contain any of IMAGE_CREATE_PROTECTED_BIT,
-- IMAGE_CREATE_SPARSE_BINDING_BIT,
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or
-- IMAGE_CREATE_SPARSE_ALIASED_BIT
-- - If the pNext chain includes a
-- ImageViewUsageCreateInfo structure, and image was not
-- created with a ImageStencilUsageCreateInfo structure included
-- in the pNext chain of ImageCreateInfo, its
-- usage member must not include any bits that were not
-- set in the usage member of the ImageCreateInfo
-- structure used to create image
-- - If the pNext chain includes a
-- ImageViewUsageCreateInfo structure, image was created
-- with a ImageStencilUsageCreateInfo structure included in the
-- pNext chain of ImageCreateInfo, and
-- subResourceRange.aspectMask includes
-- IMAGE_ASPECT_STENCIL_BIT, the usage member of the
-- ImageViewUsageCreateInfo instance must not include any
-- bits that were not set in the usage member of the
-- ImageStencilUsageCreateInfo structure used to create
-- image
-- - If the pNext chain includes a
-- ImageViewUsageCreateInfo structure, image was created
-- with a ImageStencilUsageCreateInfo structure included in the
-- pNext chain of ImageCreateInfo, and
-- subResourceRange.aspectMask includes bits other than
-- IMAGE_ASPECT_STENCIL_BIT, the usage member of the
-- ImageViewUsageCreateInfo structure must not include any
-- bits that were not set in the usage member of the
-- ImageCreateInfo structure used to create image
-- - If viewType is IMAGE_VIEW_TYPE_CUBE and
-- subresourceRange.layerCount is not
-- REMAINING_ARRAY_LAYERS, subresourceRange.layerCount
-- must be 6
-- - If viewType is IMAGE_VIEW_TYPE_CUBE_ARRAY and
-- subresourceRange.layerCount is not
-- REMAINING_ARRAY_LAYERS, subresourceRange.layerCount
-- must be a multiple of 6
-- - If viewType is IMAGE_VIEW_TYPE_CUBE and
-- subresourceRange.layerCount is REMAINING_ARRAY_LAYERS,
-- the remaining number of layers must be 6
-- - If viewType is IMAGE_VIEW_TYPE_CUBE_ARRAY and
-- subresourceRange.layerCount is REMAINING_ARRAY_LAYERS,
-- the remaining number of layers must be a multiple of
-- 6
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ComponentMapping, Format, Image,
-- ImageSubresourceRange, ImageViewCreateFlags,
-- ImageViewType, StructureType, createImageView
data ImageViewCreateInfo (es :: [Type])
ImageViewCreateInfo :: Chain es -> ImageViewCreateFlags -> Image -> ImageViewType -> Format -> ComponentMapping -> ImageSubresourceRange -> ImageViewCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of ImageViewCreateFlagBits
-- describing additional parameters of the image view.
[$sel:flags:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> ImageViewCreateFlags
-- | image is a Image on which the view will be created.
[$sel:image:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> Image
-- | viewType is a ImageViewType value specifying the type
-- of the image view.
[$sel:viewType:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> ImageViewType
-- | format is a Format describing the format and type used
-- to interpret texel blocks in the image.
[$sel:format:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> Format
-- | components is a ComponentMapping specifies a remapping
-- of color components (or of depth or stencil components after they have
-- been converted into color components).
[$sel:components:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> ComponentMapping
-- | subresourceRange is a ImageSubresourceRange selecting
-- the set of mipmap levels and array layers to be accessible to the
-- view.
[$sel:subresourceRange:ImageViewCreateInfo] :: ImageViewCreateInfo (es :: [Type]) -> ImageSubresourceRange
-- | VkImageView - Opaque handle to an image view object
--
-- See Also
--
-- DescriptorImageInfo, FramebufferCreateInfo,
-- ImageViewHandleInfoNVX, RenderPassAttachmentBeginInfo,
-- cmdBindShadingRateImageNV, createImageView,
-- destroyImageView, getImageViewAddressNVX
newtype ImageView
ImageView :: Word64 -> ImageView
-- | VkImageViewType - Image view types
--
-- Description
--
-- The exact image view type is partially implicit, based on the image’s
-- type and sample count, as well as the view creation parameters as
-- described in the image view compatibility table for
-- createImageView. This table also shows which SPIR-V
-- OpTypeImage Dim and Arrayed parameters
-- correspond to each image view type.
--
-- See Also
--
-- ImageViewCreateInfo,
-- PhysicalDeviceImageViewImageFormatInfoEXT
newtype ImageViewType
ImageViewType :: Int32 -> ImageViewType
pattern IMAGE_VIEW_TYPE_1D :: ImageViewType
pattern IMAGE_VIEW_TYPE_2D :: ImageViewType
pattern IMAGE_VIEW_TYPE_3D :: ImageViewType
pattern IMAGE_VIEW_TYPE_CUBE :: ImageViewType
pattern IMAGE_VIEW_TYPE_1D_ARRAY :: ImageViewType
pattern IMAGE_VIEW_TYPE_2D_ARRAY :: ImageViewType
pattern IMAGE_VIEW_TYPE_CUBE_ARRAY :: ImageViewType
-- | VkComponentSwizzle - Specify how a component is swizzled
--
-- Description
--
-- Setting the identity swizzle on a component is equivalent to setting
-- the identity mapping on that component. That is:
--
-- TODO: table
--
-- Component Mappings Equivalent To COMPONENT_SWIZZLE_IDENTITY
--
-- See Also
--
-- ComponentMapping
newtype ComponentSwizzle
ComponentSwizzle :: Int32 -> ComponentSwizzle
-- | COMPONENT_SWIZZLE_IDENTITY specifies that the component is set
-- to the identity swizzle.
pattern COMPONENT_SWIZZLE_IDENTITY :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_ZERO specifies that the component is set to
-- zero.
pattern COMPONENT_SWIZZLE_ZERO :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_ONE specifies that the component is set to
-- either 1 or 1.0, depending on whether the type of the image view
-- format is integer or floating-point respectively, as determined by the
-- Format Definition section for each Format.
pattern COMPONENT_SWIZZLE_ONE :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_R specifies that the component is set to the
-- value of the R component of the image.
pattern COMPONENT_SWIZZLE_R :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_G specifies that the component is set to the
-- value of the G component of the image.
pattern COMPONENT_SWIZZLE_G :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_B specifies that the component is set to the
-- value of the B component of the image.
pattern COMPONENT_SWIZZLE_B :: ComponentSwizzle
-- | COMPONENT_SWIZZLE_A specifies that the component is set to the
-- value of the A component of the image.
pattern COMPONENT_SWIZZLE_A :: ComponentSwizzle
-- | VkImageViewCreateFlagBits - Bitmask specifying additional parameters
-- of an image view
--
-- See Also
--
-- ImageViewCreateFlags
newtype ImageViewCreateFlagBits
ImageViewCreateFlagBits :: Flags -> ImageViewCreateFlagBits
-- | IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT
-- prohibits the implementation from accessing the fragment density map
-- by the host during cmdBeginRenderPass as the contents are
-- expected to change after recording
pattern IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT :: ImageViewCreateFlagBits
type ImageViewCreateFlags = ImageViewCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.ImageView.ImageSubresourceRange
instance GHC.Classes.Eq Vulkan.Core10.ImageView.ComponentMapping
instance GHC.Generics.Generic Vulkan.Core10.ImageView.ComponentMapping
instance GHC.Show.Show Vulkan.Core10.ImageView.ComponentMapping
instance GHC.Generics.Generic Vulkan.Core10.ImageView.ImageSubresourceRange
instance GHC.Show.Show Vulkan.Core10.ImageView.ImageSubresourceRange
instance GHC.Generics.Generic (Vulkan.Core10.ImageView.ImageViewCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.ImageView.ImageViewCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.ImageView.ImageViewCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.ImageView.ImageViewCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.ImageView.ImageViewCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.ImageView.ImageViewCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.ImageView.ImageViewCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.ImageView.ImageViewCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.ImageView.ImageSubresourceRange
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.ImageView.ImageSubresourceRange
instance Foreign.Storable.Storable Vulkan.Core10.ImageView.ImageSubresourceRange
instance Vulkan.Zero.Zero Vulkan.Core10.ImageView.ImageSubresourceRange
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.ImageView.ComponentMapping
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.ImageView.ComponentMapping
instance Foreign.Storable.Storable Vulkan.Core10.ImageView.ComponentMapping
instance Vulkan.Zero.Zero Vulkan.Core10.ImageView.ComponentMapping
module Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer
-- | vkGetAndroidHardwareBufferPropertiesANDROID - Get Properties of
-- External Memory Android Hardware Buffers
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AndroidHardwareBufferPropertiesANDROID, Device
getAndroidHardwareBufferPropertiesANDROID :: forall a io. (Extendss AndroidHardwareBufferPropertiesANDROID a, PokeChain a, PeekChain a, MonadIO io) => Device -> Ptr AHardwareBuffer -> io (AndroidHardwareBufferPropertiesANDROID a)
-- | vkGetMemoryAndroidHardwareBufferANDROID - Get an Android hardware
-- buffer for a memory object
--
-- Description
--
-- Each call to getMemoryAndroidHardwareBufferANDROID must
-- return an Android hardware buffer with a new reference acquired in
-- addition to the reference held by the DeviceMemory. To avoid
-- leaking resources, the application must release the reference
-- by calling AHardwareBuffer_release when it is no longer
-- needed. When called with the same handle in
-- MemoryGetAndroidHardwareBufferInfoANDROID::memory,
-- getMemoryAndroidHardwareBufferANDROID must return the
-- same Android hardware buffer object. If the device memory was created
-- by importing an Android hardware buffer,
-- getMemoryAndroidHardwareBufferANDROID must return that
-- same Android hardware buffer object.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, MemoryGetAndroidHardwareBufferInfoANDROID
getMemoryAndroidHardwareBufferANDROID :: forall io. MonadIO io => Device -> MemoryGetAndroidHardwareBufferInfoANDROID -> io (Ptr AHardwareBuffer)
-- | VkImportAndroidHardwareBufferInfoANDROID - Import memory from an
-- Android hardware buffer
--
-- Description
--
-- If the allocateMemory command succeeds, the implementation
-- must acquire a reference to the imported hardware buffer, which
-- it must release when the device memory object is freed. If the
-- command fails, the implementation must not retain a reference.
--
-- Valid Usage
--
--
--
--
-- - If buffer is not NULL, it must be a valid
-- Android hardware buffer object with
-- AHardwareBuffer_Desc::format and
-- AHardwareBuffer_Desc::usage compatible with Vulkan
-- as described in Android Hardware Buffers
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- StructureType
data ImportAndroidHardwareBufferInfoANDROID
ImportAndroidHardwareBufferInfoANDROID :: Ptr AHardwareBuffer -> ImportAndroidHardwareBufferInfoANDROID
-- | buffer is the Android hardware buffer to import.
[$sel:buffer:ImportAndroidHardwareBufferInfoANDROID] :: ImportAndroidHardwareBufferInfoANDROID -> Ptr AHardwareBuffer
-- | VkAndroidHardwareBufferUsageANDROID - Struct containing Android
-- hardware buffer usage flags
--
-- Description
--
-- The androidHardwareBufferUsage field must include
-- Android hardware buffer usage flags listed in the AHardwareBuffer
-- Usage Equivalence table when the corresponding Vulkan image usage
-- or image creation flags are included in the usage or
-- flags fields of PhysicalDeviceImageFormatInfo2. It
-- must include at least one GPU usage flag
-- (AHARDWAREBUFFER_USAGE_GPU_*), even if none of the
-- corresponding Vulkan usages or flags are requested.
--
-- Note
--
-- Requiring at least one GPU usage flag ensures that Android hardware
-- buffer memory will be allocated in a memory pool accessible to the
-- Vulkan implementation, and that specializing the memory layout based
-- on usage flags does not prevent it from being compatible with Vulkan.
-- Implementations may avoid unnecessary restrictions caused by
-- this requirement by using vendor usage flags to indicate that only the
-- Vulkan uses indicated in ImageFormatProperties2 are required.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data AndroidHardwareBufferUsageANDROID
AndroidHardwareBufferUsageANDROID :: Word64 -> AndroidHardwareBufferUsageANDROID
-- | androidHardwareBufferUsage returns the Android hardware
-- buffer usage flags.
[$sel:androidHardwareBufferUsage:AndroidHardwareBufferUsageANDROID] :: AndroidHardwareBufferUsageANDROID -> Word64
-- | VkAndroidHardwareBufferPropertiesANDROID - Properties of External
-- Memory Android Hardware Buffers
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DeviceSize, StructureType,
-- getAndroidHardwareBufferPropertiesANDROID
data AndroidHardwareBufferPropertiesANDROID (es :: [Type])
AndroidHardwareBufferPropertiesANDROID :: Chain es -> DeviceSize -> Word32 -> AndroidHardwareBufferPropertiesANDROID (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:AndroidHardwareBufferPropertiesANDROID] :: AndroidHardwareBufferPropertiesANDROID (es :: [Type]) -> Chain es
-- | allocationSize is the size of the external memory
[$sel:allocationSize:AndroidHardwareBufferPropertiesANDROID] :: AndroidHardwareBufferPropertiesANDROID (es :: [Type]) -> DeviceSize
-- | memoryTypeBits is a bitmask containing one bit set for every
-- memory type which the specified Android hardware buffer can be
-- imported as.
[$sel:memoryTypeBits:AndroidHardwareBufferPropertiesANDROID] :: AndroidHardwareBufferPropertiesANDROID (es :: [Type]) -> Word32
-- | VkMemoryGetAndroidHardwareBufferInfoANDROID - Structure describing an
-- Android hardware buffer memory export operation
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - memory must be a valid DeviceMemory
-- handle
--
--
-- See Also
--
-- DeviceMemory, StructureType,
-- getMemoryAndroidHardwareBufferANDROID
data MemoryGetAndroidHardwareBufferInfoANDROID
MemoryGetAndroidHardwareBufferInfoANDROID :: DeviceMemory -> MemoryGetAndroidHardwareBufferInfoANDROID
-- | memory is the memory object from which the Android hardware
-- buffer will be exported.
[$sel:memory:MemoryGetAndroidHardwareBufferInfoANDROID] :: MemoryGetAndroidHardwareBufferInfoANDROID -> DeviceMemory
-- | VkAndroidHardwareBufferFormatPropertiesANDROID - Structure describing
-- the image format properties of an Android hardware buffer
--
-- Description
--
-- If the Android hardware buffer has one of the formats listed in the
-- Format Equivalence table, then format must have
-- the equivalent Vulkan format listed in the table. Otherwise,
-- format may be FORMAT_UNDEFINED, indicating the
-- Android hardware buffer can only be used with an external
-- format.
--
-- The formatFeatures member must include
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT and at least one of
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT or
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT, and should
-- include FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT and
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT.
--
-- Note
--
-- The formatFeatures member only indicates the features
-- available when using an external-format image created from the
-- Android hardware buffer. Images from Android hardware buffers with a
-- format other than FORMAT_UNDEFINED are subject to the format
-- capabilities obtained from getPhysicalDeviceFormatProperties2,
-- and getPhysicalDeviceImageFormatProperties2 with appropriate
-- parameters. These sets of features are independent of each other, e.g.
-- the external format will support sampler Y′CBCR conversion even if the
-- non-external format does not, and writing to non-external format
-- images is possible but writing to external format images is not.
--
-- Android hardware buffers with the same external format must
-- have the same support for
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT,
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
-- and
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
-- in formatFeatures. Other format features may differ
-- between Android hardware buffers that have the same external format.
-- This allows applications to use the same SamplerYcbcrConversion
-- object (and samplers and pipelines created from them) for any Android
-- hardware buffers that have the same external format.
--
-- If format is not FORMAT_UNDEFINED, then the value of
-- samplerYcbcrConversionComponents must be valid when
-- used as the components member of
-- SamplerYcbcrConversionCreateInfo with that format. If
-- format is FORMAT_UNDEFINED, all members of
-- samplerYcbcrConversionComponents must be
-- COMPONENT_SWIZZLE_IDENTITY.
--
-- Implementations may not always be able to determine the color
-- model, numerical range, or chroma offsets of the image contents, so
-- the values in AndroidHardwareBufferFormatPropertiesANDROID are
-- only suggestions. Applications should treat these values as
-- sensible defaults to use in the absence of more reliable information
-- obtained through some other means. If the underlying physical device
-- is also usable via OpenGL ES with the GL_OES_EGL_image_external
-- extension, the implementation should suggest values that will
-- produce similar sampled values as would be obtained by sampling the
-- same external image via samplerExternalOES in OpenGL ES using
-- equivalent sampler parameters.
--
-- Note
--
-- Since GL_OES_EGL_image_external does not require the same
-- sampling and conversion calculations as Vulkan does, achieving
-- identical results between APIs may not be possible on some
-- implementations.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ChromaLocation, ComponentMapping, Format,
-- FormatFeatureFlags, SamplerYcbcrModelConversion,
-- SamplerYcbcrRange, StructureType
data AndroidHardwareBufferFormatPropertiesANDROID
AndroidHardwareBufferFormatPropertiesANDROID :: Format -> Word64 -> FormatFeatureFlags -> ComponentMapping -> SamplerYcbcrModelConversion -> SamplerYcbcrRange -> ChromaLocation -> ChromaLocation -> AndroidHardwareBufferFormatPropertiesANDROID
-- | format is the Vulkan format corresponding to the Android
-- hardware buffer’s format, or FORMAT_UNDEFINED if there is not
-- an equivalent Vulkan format.
[$sel:format:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> Format
-- | externalFormat is an implementation-defined external format
-- identifier for use with ExternalFormatANDROID. It must
-- not be zero.
[$sel:externalFormat:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> Word64
-- | formatFeatures describes the capabilities of this external
-- format when used with an image bound to memory imported from
-- buffer.
[$sel:formatFeatures:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> FormatFeatureFlags
-- | samplerYcbcrConversionComponents is the component swizzle
-- that should be used in SamplerYcbcrConversionCreateInfo.
[$sel:samplerYcbcrConversionComponents:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> ComponentMapping
-- | suggestedYcbcrModel is a suggested color model to use in the
-- SamplerYcbcrConversionCreateInfo.
[$sel:suggestedYcbcrModel:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> SamplerYcbcrModelConversion
-- | suggestedYcbcrRange is a suggested numerical value range to
-- use in SamplerYcbcrConversionCreateInfo.
[$sel:suggestedYcbcrRange:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> SamplerYcbcrRange
-- | suggestedXChromaOffset is a suggested X chroma offset to use
-- in SamplerYcbcrConversionCreateInfo.
[$sel:suggestedXChromaOffset:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> ChromaLocation
-- | suggestedYChromaOffset is a suggested Y chroma offset to use
-- in SamplerYcbcrConversionCreateInfo.
[$sel:suggestedYChromaOffset:AndroidHardwareBufferFormatPropertiesANDROID] :: AndroidHardwareBufferFormatPropertiesANDROID -> ChromaLocation
-- | VkExternalFormatANDROID - Structure containing an Android hardware
-- buffer external format
--
-- Description
--
-- If externalFormat is zero, the effect is as if the
-- ExternalFormatANDROID structure was not present. Otherwise, the
-- image will have the specified external format.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data ExternalFormatANDROID
ExternalFormatANDROID :: Word64 -> ExternalFormatANDROID
-- | externalFormat is an implementation-defined identifier for
-- the external format
--
-- externalFormat must be 0 or a value returned
-- in the externalFormat member of
-- AndroidHardwareBufferFormatPropertiesANDROID by an earlier call
-- to getAndroidHardwareBufferPropertiesANDROID
[$sel:externalFormat:ExternalFormatANDROID] :: ExternalFormatANDROID -> Word64
type ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION = 3
pattern ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION :: forall a. Integral a => a
type ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME = "VK_ANDROID_external_memory_android_hardware_buffer"
pattern ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
data AHardwareBuffer
instance GHC.Classes.Eq Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance GHC.Classes.Eq Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance GHC.Classes.Eq Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance GHC.Classes.Eq Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
instance GHC.Generics.Generic Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance GHC.Show.Show Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance GHC.Generics.Generic Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
instance GHC.Show.Show Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
instance GHC.Generics.Generic (Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es)
instance GHC.Generics.Generic Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance GHC.Show.Show Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance GHC.Generics.Generic Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferFormatPropertiesANDROID
instance GHC.Show.Show Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferFormatPropertiesANDROID
instance GHC.Generics.Generic Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance GHC.Show.Show Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance Foreign.Storable.Storable Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ImportAndroidHardwareBufferInfoANDROID
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance Foreign.Storable.Storable Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.ExternalFormatANDROID
instance Vulkan.CStruct.Extends.Extensible Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferFormatPropertiesANDROID
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferFormatPropertiesANDROID
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferFormatPropertiesANDROID
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance Foreign.Storable.Storable Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.MemoryGetAndroidHardwareBufferInfoANDROID
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferPropertiesANDROID es)
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
instance Foreign.Storable.Storable Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer.AndroidHardwareBufferUsageANDROID
module Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion
-- | vkCreateSamplerYcbcrConversion - Create a new Y′CBCR conversion
--
-- Description
--
-- The interpretation of the configured sampler Y′CBCR conversion is
-- described in more detail in the description of sampler Y′CBCR
-- conversion in the Image Operations chapter.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- SamplerYcbcrConversion, SamplerYcbcrConversionCreateInfo
createSamplerYcbcrConversion :: forall a io. (Extendss SamplerYcbcrConversionCreateInfo a, PokeChain a, MonadIO io) => Device -> SamplerYcbcrConversionCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io SamplerYcbcrConversion
-- | A convenience wrapper to make a compatible pair of calls to
-- createSamplerYcbcrConversion and
-- destroySamplerYcbcrConversion
--
-- To ensure that destroySamplerYcbcrConversion is always called:
-- pass bracket (or the allocate function from your favourite
-- resource management library) as the first argument. To just extract
-- the pair pass (,) as the first argument.
withSamplerYcbcrConversion :: forall a io r. (Extendss SamplerYcbcrConversionCreateInfo a, PokeChain a, MonadIO io) => Device -> SamplerYcbcrConversionCreateInfo a -> Maybe AllocationCallbacks -> (io SamplerYcbcrConversion -> (SamplerYcbcrConversion -> io ()) -> r) -> r
-- | vkDestroySamplerYcbcrConversion - Destroy a created Y′CBCR conversion
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If ycbcrConversion is not NULL_HANDLE,
-- ycbcrConversion must be a valid
-- SamplerYcbcrConversion handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If ycbcrConversion is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to ycbcrConversion must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device,
-- SamplerYcbcrConversion
destroySamplerYcbcrConversion :: forall io. MonadIO io => Device -> SamplerYcbcrConversion -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkSamplerYcbcrConversionInfo - Structure specifying Y′CBCR conversion
-- to a sampler or image view
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- SamplerYcbcrConversion, StructureType
data SamplerYcbcrConversionInfo
SamplerYcbcrConversionInfo :: SamplerYcbcrConversion -> SamplerYcbcrConversionInfo
-- | conversion is a SamplerYcbcrConversion handle created
-- with createSamplerYcbcrConversion.
--
-- conversion must be a valid
-- SamplerYcbcrConversion handle
[$sel:conversion:SamplerYcbcrConversionInfo] :: SamplerYcbcrConversionInfo -> SamplerYcbcrConversion
-- | VkSamplerYcbcrConversionCreateInfo - Structure specifying the
-- parameters of the newly created conversion
--
-- Description
--
-- Note
--
-- Setting forceExplicitReconstruction to TRUE may
-- have a performance penalty on implementations where explicit
-- reconstruction is not the default mode of operation.
--
-- If format supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- the forceExplicitReconstruction value behaves as if it was
-- set to TRUE.
--
-- If the pNext chain includes a ExternalFormatANDROID
-- structure with non-zero externalFormat member, the sampler
-- Y′CBCR conversion object represents an external format
-- conversion, and format must be
-- FORMAT_UNDEFINED. Such conversions must only be used to
-- sample image views with a matching external format. When
-- creating an external format conversion, the value of
-- components is ignored.
--
-- Valid Usage
--
--
-- - If an external format conversion is being created, format
-- must be FORMAT_UNDEFINED
--
--
--
-- - If an external format conversion is not being created,
-- format must represent unsigned normalized values (i.e.
-- the format must be a UNORM format)
-- - The sampler Y′CBCR conversion’s features must
-- support FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT or
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT
-- - If the sampler Y′CBCR conversion’s features do not support
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
-- xChromaOffset and yChromaOffset must not be
-- CHROMA_LOCATION_COSITED_EVEN
-- - If the sampler Y′CBCR conversion’s features do not support
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,
-- xChromaOffset and yChromaOffset must not be
-- CHROMA_LOCATION_MIDPOINT
-- - If the format has a _422 or _420 suffix, then
-- components.g must be
-- COMPONENT_SWIZZLE_IDENTITY
-- - If the format has a _422 or _420 suffix, then
-- components.a must be
-- COMPONENT_SWIZZLE_IDENTITY, COMPONENT_SWIZZLE_ONE, or
-- COMPONENT_SWIZZLE_ZERO
-- - If the format has a _422 or _420 suffix, then
-- components.r must be COMPONENT_SWIZZLE_IDENTITY
-- or COMPONENT_SWIZZLE_B
-- - If the format has a _422 or _420 suffix, then
-- components.b must be COMPONENT_SWIZZLE_IDENTITY
-- or COMPONENT_SWIZZLE_R
-- - If the format has a _422 or _420 suffix, and if
-- either components.r or components.b is
-- COMPONENT_SWIZZLE_IDENTITY, both values must be
-- COMPONENT_SWIZZLE_IDENTITY
-- - If ycbcrModel is not
-- SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY, then
-- components.r, components.g, and
-- components.b must correspond to channels of the
-- format; that is, components.r,
-- components.g, and components.b must not be
-- COMPONENT_SWIZZLE_ZERO or COMPONENT_SWIZZLE_ONE, and
-- must not correspond to a channel which contains zero or one as
-- a consequence of conversion to RGBA
-- - If ycbcrRange is SAMPLER_YCBCR_RANGE_ITU_NARROW
-- then the R, G and B channels obtained by applying the
-- component swizzle to format must each have a
-- bit-depth greater than or equal to 8
-- - If the sampler Y′CBCR conversion’s features do not support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- forceExplicitReconstruction must be FALSE
-- - If the sampler Y′CBCR conversion’s features do not support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
-- chromaFilter must not be FILTER_LINEAR
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- If chromaFilter is FILTER_NEAREST, chroma samples are
-- reconstructed to luma channel resolution using nearest-neighbour
-- sampling. Otherwise, chroma samples are reconstructed using
-- interpolation. More details can be found in the description of
-- sampler Y′CBCR conversion in the Image Operations chapter.
--
-- See Also
--
-- Bool32, ChromaLocation, ComponentMapping,
-- Filter, Format, SamplerYcbcrModelConversion,
-- SamplerYcbcrRange, StructureType,
-- createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR
data SamplerYcbcrConversionCreateInfo (es :: [Type])
SamplerYcbcrConversionCreateInfo :: Chain es -> Format -> SamplerYcbcrModelConversion -> SamplerYcbcrRange -> ComponentMapping -> ChromaLocation -> ChromaLocation -> Filter -> Bool -> SamplerYcbcrConversionCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> Chain es
-- | format is the format of the image from which color
-- information will be retrieved.
[$sel:format:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> Format
-- | ycbcrModel describes the color matrix for conversion between
-- color models.
[$sel:ycbcrModel:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> SamplerYcbcrModelConversion
-- | ycbcrRange describes whether the encoded values have headroom
-- and foot room, or whether the encoding uses the full numerical range.
[$sel:ycbcrRange:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> SamplerYcbcrRange
-- | components applies a swizzle based on
-- ComponentSwizzle enums prior to range expansion and color model
-- conversion.
[$sel:components:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> ComponentMapping
-- | xChromaOffset describes the sample location associated
-- with downsampled chroma channels in the x dimension.
-- xChromaOffset has no effect for formats in which chroma
-- channels are the same resolution as the luma channel.
[$sel:xChromaOffset:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> ChromaLocation
-- | yChromaOffset describes the sample location associated
-- with downsampled chroma channels in the y dimension.
-- yChromaOffset has no effect for formats in which the chroma
-- channels are not downsampled vertically.
[$sel:yChromaOffset:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> ChromaLocation
-- | chromaFilter is the filter for chroma reconstruction.
[$sel:chromaFilter:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> Filter
-- | forceExplicitReconstruction can be used to ensure that
-- reconstruction is done explicitly, if supported.
[$sel:forceExplicitReconstruction:SamplerYcbcrConversionCreateInfo] :: SamplerYcbcrConversionCreateInfo (es :: [Type]) -> Bool
-- | VkBindImagePlaneMemoryInfo - Structure specifying how to bind an image
-- plane to memory
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ImageAspectFlagBits, StructureType
data BindImagePlaneMemoryInfo
BindImagePlaneMemoryInfo :: ImageAspectFlagBits -> BindImagePlaneMemoryInfo
-- | planeAspect is the aspect of the disjoint image plane to
-- bind.
[$sel:planeAspect:BindImagePlaneMemoryInfo] :: BindImagePlaneMemoryInfo -> ImageAspectFlagBits
-- | VkImagePlaneMemoryRequirementsInfo - Structure specifying image plane
-- for memory requirements
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ImageAspectFlagBits, StructureType
data ImagePlaneMemoryRequirementsInfo
ImagePlaneMemoryRequirementsInfo :: ImageAspectFlagBits -> ImagePlaneMemoryRequirementsInfo
-- | planeAspect is the aspect corresponding to the image plane to
-- query.
[$sel:planeAspect:ImagePlaneMemoryRequirementsInfo] :: ImagePlaneMemoryRequirementsInfo -> ImageAspectFlagBits
-- | VkPhysicalDeviceSamplerYcbcrConversionFeatures - Structure describing
-- Y’CbCr conversion features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceSamplerYcbcrConversionFeatures
-- structure describe the following feature:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceSamplerYcbcrConversionFeatures
PhysicalDeviceSamplerYcbcrConversionFeatures :: Bool -> PhysicalDeviceSamplerYcbcrConversionFeatures
-- | samplerYcbcrConversion specifies whether the implementation
-- supports sampler Y′CBCR conversion. If
-- samplerYcbcrConversion is FALSE, sampler Y′CBCR
-- conversion is not supported, and samplers using sampler Y′CBCR
-- conversion must not be used.
[$sel:samplerYcbcrConversion:PhysicalDeviceSamplerYcbcrConversionFeatures] :: PhysicalDeviceSamplerYcbcrConversionFeatures -> Bool
-- | VkSamplerYcbcrConversionImageFormatProperties - Structure specifying
-- combined image sampler descriptor count for multi-planar images
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data SamplerYcbcrConversionImageFormatProperties
SamplerYcbcrConversionImageFormatProperties :: Word32 -> SamplerYcbcrConversionImageFormatProperties
-- | combinedImageSamplerDescriptorCount is the number of combined
-- image sampler descriptors that the implementation uses to access the
-- format.
[$sel:combinedImageSamplerDescriptorCount:SamplerYcbcrConversionImageFormatProperties] :: SamplerYcbcrConversionImageFormatProperties -> Word32
-- | VkSamplerYcbcrConversion - Opaque handle to a device-specific sampler
-- Y′CBCR conversion description
--
-- See Also
--
-- SamplerYcbcrConversionInfo,
-- createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR
newtype SamplerYcbcrConversion
SamplerYcbcrConversion :: Word64 -> SamplerYcbcrConversion
-- | VkFormat - Available image formats
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AttachmentDescription, AttachmentDescription2,
-- BufferViewCreateInfo, FramebufferAttachmentImageInfo,
-- GeometryTrianglesNV, ImageCreateInfo,
-- ImageFormatListCreateInfo, ImageViewASTCDecodeModeEXT,
-- ImageViewCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerYcbcrConversionCreateInfo, SurfaceFormatKHR,
-- SwapchainCreateInfoKHR, VertexInputAttributeDescription,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype Format
Format :: Int32 -> Format
-- | FORMAT_UNDEFINED specifies that the format is not specified.
pattern FORMAT_UNDEFINED :: Format
-- | FORMAT_R4G4_UNORM_PACK8 specifies a two-component, 8-bit packed
-- unsigned normalized format that has a 4-bit R component in bits 4..7,
-- and a 4-bit G component in bits 0..3.
pattern FORMAT_R4G4_UNORM_PACK8 :: Format
-- | FORMAT_R4G4B4A4_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 4-bit R component in bits
-- 12..15, a 4-bit G component in bits 8..11, a 4-bit B component in bits
-- 4..7, and a 4-bit A component in bits 0..3.
pattern FORMAT_R4G4B4A4_UNORM_PACK16 :: Format
-- | FORMAT_B4G4R4A4_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 4-bit B component in bits
-- 12..15, a 4-bit G component in bits 8..11, a 4-bit R component in bits
-- 4..7, and a 4-bit A component in bits 0..3.
pattern FORMAT_B4G4R4A4_UNORM_PACK16 :: Format
-- | FORMAT_R5G6B5_UNORM_PACK16 specifies a three-component, 16-bit
-- packed unsigned normalized format that has a 5-bit R component in bits
-- 11..15, a 6-bit G component in bits 5..10, and a 5-bit B component in
-- bits 0..4.
pattern FORMAT_R5G6B5_UNORM_PACK16 :: Format
-- | FORMAT_B5G6R5_UNORM_PACK16 specifies a three-component, 16-bit
-- packed unsigned normalized format that has a 5-bit B component in bits
-- 11..15, a 6-bit G component in bits 5..10, and a 5-bit R component in
-- bits 0..4.
pattern FORMAT_B5G6R5_UNORM_PACK16 :: Format
-- | FORMAT_R5G5B5A1_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 5-bit R component in bits
-- 11..15, a 5-bit G component in bits 6..10, a 5-bit B component in bits
-- 1..5, and a 1-bit A component in bit 0.
pattern FORMAT_R5G5B5A1_UNORM_PACK16 :: Format
-- | FORMAT_B5G5R5A1_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 5-bit B component in bits
-- 11..15, a 5-bit G component in bits 6..10, a 5-bit R component in bits
-- 1..5, and a 1-bit A component in bit 0.
pattern FORMAT_B5G5R5A1_UNORM_PACK16 :: Format
-- | FORMAT_A1R5G5B5_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 1-bit A component in bit
-- 15, a 5-bit R component in bits 10..14, a 5-bit G component in bits
-- 5..9, and a 5-bit B component in bits 0..4.
pattern FORMAT_A1R5G5B5_UNORM_PACK16 :: Format
-- | FORMAT_R8_UNORM specifies a one-component, 8-bit unsigned
-- normalized format that has a single 8-bit R component.
pattern FORMAT_R8_UNORM :: Format
-- | FORMAT_R8_SNORM specifies a one-component, 8-bit signed
-- normalized format that has a single 8-bit R component.
pattern FORMAT_R8_SNORM :: Format
-- | FORMAT_R8_USCALED specifies a one-component, 8-bit unsigned
-- scaled integer format that has a single 8-bit R component.
pattern FORMAT_R8_USCALED :: Format
-- | FORMAT_R8_SSCALED specifies a one-component, 8-bit signed
-- scaled integer format that has a single 8-bit R component.
pattern FORMAT_R8_SSCALED :: Format
-- | FORMAT_R8_UINT specifies a one-component, 8-bit unsigned
-- integer format that has a single 8-bit R component.
pattern FORMAT_R8_UINT :: Format
-- | FORMAT_R8_SINT specifies a one-component, 8-bit signed integer
-- format that has a single 8-bit R component.
pattern FORMAT_R8_SINT :: Format
-- | FORMAT_R8_SRGB specifies a one-component, 8-bit unsigned
-- normalized format that has a single 8-bit R component stored with sRGB
-- nonlinear encoding.
pattern FORMAT_R8_SRGB :: Format
-- | FORMAT_R8G8_UNORM specifies a two-component, 16-bit unsigned
-- normalized format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_UNORM :: Format
-- | FORMAT_R8G8_SNORM specifies a two-component, 16-bit signed
-- normalized format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_SNORM :: Format
-- | FORMAT_R8G8_USCALED specifies a two-component, 16-bit unsigned
-- scaled integer format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_USCALED :: Format
-- | FORMAT_R8G8_SSCALED specifies a two-component, 16-bit signed
-- scaled integer format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_SSCALED :: Format
-- | FORMAT_R8G8_UINT specifies a two-component, 16-bit unsigned
-- integer format that has an 8-bit R component in byte 0, and an 8-bit G
-- component in byte 1.
pattern FORMAT_R8G8_UINT :: Format
-- | FORMAT_R8G8_SINT specifies a two-component, 16-bit signed
-- integer format that has an 8-bit R component in byte 0, and an 8-bit G
-- component in byte 1.
pattern FORMAT_R8G8_SINT :: Format
-- | FORMAT_R8G8_SRGB specifies a two-component, 16-bit unsigned
-- normalized format that has an 8-bit R component stored with sRGB
-- nonlinear encoding in byte 0, and an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1.
pattern FORMAT_R8G8_SRGB :: Format
-- | FORMAT_R8G8B8_UNORM specifies a three-component, 24-bit
-- unsigned normalized format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_UNORM :: Format
-- | FORMAT_R8G8B8_SNORM specifies a three-component, 24-bit signed
-- normalized format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SNORM :: Format
-- | FORMAT_R8G8B8_USCALED specifies a three-component, 24-bit
-- unsigned scaled format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_USCALED :: Format
-- | FORMAT_R8G8B8_SSCALED specifies a three-component, 24-bit
-- signed scaled format that has an 8-bit R component in byte 0, an 8-bit
-- G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SSCALED :: Format
-- | FORMAT_R8G8B8_UINT specifies a three-component, 24-bit unsigned
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_UINT :: Format
-- | FORMAT_R8G8B8_SINT specifies a three-component, 24-bit signed
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SINT :: Format
-- | FORMAT_R8G8B8_SRGB specifies a three-component, 24-bit unsigned
-- normalized format that has an 8-bit R component stored with sRGB
-- nonlinear encoding in byte 0, an 8-bit G component stored with sRGB
-- nonlinear encoding in byte 1, and an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 2.
pattern FORMAT_R8G8B8_SRGB :: Format
-- | FORMAT_B8G8R8_UNORM specifies a three-component, 24-bit
-- unsigned normalized format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_UNORM :: Format
-- | FORMAT_B8G8R8_SNORM specifies a three-component, 24-bit signed
-- normalized format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SNORM :: Format
-- | FORMAT_B8G8R8_USCALED specifies a three-component, 24-bit
-- unsigned scaled format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_USCALED :: Format
-- | FORMAT_B8G8R8_SSCALED specifies a three-component, 24-bit
-- signed scaled format that has an 8-bit B component in byte 0, an 8-bit
-- G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SSCALED :: Format
-- | FORMAT_B8G8R8_UINT specifies a three-component, 24-bit unsigned
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_UINT :: Format
-- | FORMAT_B8G8R8_SINT specifies a three-component, 24-bit signed
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SINT :: Format
-- | FORMAT_B8G8R8_SRGB specifies a three-component, 24-bit unsigned
-- normalized format that has an 8-bit B component stored with sRGB
-- nonlinear encoding in byte 0, an 8-bit G component stored with sRGB
-- nonlinear encoding in byte 1, and an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 2.
pattern FORMAT_B8G8R8_SRGB :: Format
-- | FORMAT_R8G8B8A8_UNORM specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_UNORM :: Format
-- | FORMAT_R8G8B8A8_SNORM specifies a four-component, 32-bit signed
-- normalized format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SNORM :: Format
-- | FORMAT_R8G8B8A8_USCALED specifies a four-component, 32-bit
-- unsigned scaled format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_USCALED :: Format
-- | FORMAT_R8G8B8A8_SSCALED specifies a four-component, 32-bit
-- signed scaled format that has an 8-bit R component in byte 0, an 8-bit
-- G component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SSCALED :: Format
-- | FORMAT_R8G8B8A8_UINT specifies a four-component, 32-bit
-- unsigned integer format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_UINT :: Format
-- | FORMAT_R8G8B8A8_SINT specifies a four-component, 32-bit signed
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SINT :: Format
-- | FORMAT_R8G8B8A8_SRGB specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 0, an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1, an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 2, and an 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_SRGB :: Format
-- | FORMAT_B8G8R8A8_UNORM specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_UNORM :: Format
-- | FORMAT_B8G8R8A8_SNORM specifies a four-component, 32-bit signed
-- normalized format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SNORM :: Format
-- | FORMAT_B8G8R8A8_USCALED specifies a four-component, 32-bit
-- unsigned scaled format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_USCALED :: Format
-- | FORMAT_B8G8R8A8_SSCALED specifies a four-component, 32-bit
-- signed scaled format that has an 8-bit B component in byte 0, an 8-bit
-- G component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SSCALED :: Format
-- | FORMAT_B8G8R8A8_UINT specifies a four-component, 32-bit
-- unsigned integer format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_UINT :: Format
-- | FORMAT_B8G8R8A8_SINT specifies a four-component, 32-bit signed
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SINT :: Format
-- | FORMAT_B8G8R8A8_SRGB specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 0, an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1, an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 2, and an 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_SRGB :: Format
-- | FORMAT_A8B8G8R8_UNORM_PACK32 specifies a four-component, 32-bit
-- packed unsigned normalized format that has an 8-bit A component in
-- bits 24..31, an 8-bit B component in bits 16..23, an 8-bit G component
-- in bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_UNORM_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SNORM_PACK32 specifies a four-component, 32-bit
-- packed signed normalized format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_SNORM_PACK32 :: Format
-- | FORMAT_A8B8G8R8_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has an 8-bit A
-- component in bits 24..31, an 8-bit B component in bits 16..23, an
-- 8-bit G component in bits 8..15, and an 8-bit R component in bits
-- 0..7.
pattern FORMAT_A8B8G8R8_USCALED_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has an 8-bit A
-- component in bits 24..31, an 8-bit B component in bits 16..23, an
-- 8-bit G component in bits 8..15, and an 8-bit R component in bits
-- 0..7.
pattern FORMAT_A8B8G8R8_SSCALED_PACK32 :: Format
-- | FORMAT_A8B8G8R8_UINT_PACK32 specifies a four-component, 32-bit
-- packed unsigned integer format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_UINT_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SINT_PACK32 specifies a four-component, 32-bit
-- packed signed integer format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_SINT_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SRGB_PACK32 specifies a four-component, 32-bit
-- packed unsigned normalized format that has an 8-bit A component in
-- bits 24..31, an 8-bit B component stored with sRGB nonlinear encoding
-- in bits 16..23, an 8-bit G component stored with sRGB nonlinear
-- encoding in bits 8..15, and an 8-bit R component stored with sRGB
-- nonlinear encoding in bits 0..7.
pattern FORMAT_A8B8G8R8_SRGB_PACK32 :: Format
-- | FORMAT_A2R10G10B10_UNORM_PACK32 specifies a four-component,
-- 32-bit packed unsigned normalized format that has a 2-bit A component
-- in bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G
-- component in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_UNORM_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SNORM_PACK32 specifies a four-component,
-- 32-bit packed signed normalized format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_SNORM_PACK32 :: Format
-- | FORMAT_A2R10G10B10_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit R component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit B component in bits
-- 0..9.
pattern FORMAT_A2R10G10B10_USCALED_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit R component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit B component in bits
-- 0..9.
pattern FORMAT_A2R10G10B10_SSCALED_PACK32 :: Format
-- | FORMAT_A2R10G10B10_UINT_PACK32 specifies a four-component,
-- 32-bit packed unsigned integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_UINT_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SINT_PACK32 specifies a four-component,
-- 32-bit packed signed integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_SINT_PACK32 :: Format
-- | FORMAT_A2B10G10R10_UNORM_PACK32 specifies a four-component,
-- 32-bit packed unsigned normalized format that has a 2-bit A component
-- in bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G
-- component in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_UNORM_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SNORM_PACK32 specifies a four-component,
-- 32-bit packed signed normalized format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_SNORM_PACK32 :: Format
-- | FORMAT_A2B10G10R10_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit B component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit R component in bits
-- 0..9.
pattern FORMAT_A2B10G10R10_USCALED_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit B component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit R component in bits
-- 0..9.
pattern FORMAT_A2B10G10R10_SSCALED_PACK32 :: Format
-- | FORMAT_A2B10G10R10_UINT_PACK32 specifies a four-component,
-- 32-bit packed unsigned integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_UINT_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SINT_PACK32 specifies a four-component,
-- 32-bit packed signed integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_SINT_PACK32 :: Format
-- | FORMAT_R16_UNORM specifies a one-component, 16-bit unsigned
-- normalized format that has a single 16-bit R component.
pattern FORMAT_R16_UNORM :: Format
-- | FORMAT_R16_SNORM specifies a one-component, 16-bit signed
-- normalized format that has a single 16-bit R component.
pattern FORMAT_R16_SNORM :: Format
-- | FORMAT_R16_USCALED specifies a one-component, 16-bit unsigned
-- scaled integer format that has a single 16-bit R component.
pattern FORMAT_R16_USCALED :: Format
-- | FORMAT_R16_SSCALED specifies a one-component, 16-bit signed
-- scaled integer format that has a single 16-bit R component.
pattern FORMAT_R16_SSCALED :: Format
-- | FORMAT_R16_UINT specifies a one-component, 16-bit unsigned
-- integer format that has a single 16-bit R component.
pattern FORMAT_R16_UINT :: Format
-- | FORMAT_R16_SINT specifies a one-component, 16-bit signed
-- integer format that has a single 16-bit R component.
pattern FORMAT_R16_SINT :: Format
-- | FORMAT_R16_SFLOAT specifies a one-component, 16-bit signed
-- floating-point format that has a single 16-bit R component.
pattern FORMAT_R16_SFLOAT :: Format
-- | FORMAT_R16G16_UNORM specifies a two-component, 32-bit unsigned
-- normalized format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_UNORM :: Format
-- | FORMAT_R16G16_SNORM specifies a two-component, 32-bit signed
-- normalized format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SNORM :: Format
-- | FORMAT_R16G16_USCALED specifies a two-component, 32-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, and a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_USCALED :: Format
-- | FORMAT_R16G16_SSCALED specifies a two-component, 32-bit signed
-- scaled integer format that has a 16-bit R component in bytes 0..1, and
-- a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SSCALED :: Format
-- | FORMAT_R16G16_UINT specifies a two-component, 32-bit unsigned
-- integer format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_UINT :: Format
-- | FORMAT_R16G16_SINT specifies a two-component, 32-bit signed
-- integer format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SINT :: Format
-- | FORMAT_R16G16_SFLOAT specifies a two-component, 32-bit signed
-- floating-point format that has a 16-bit R component in bytes 0..1, and
-- a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SFLOAT :: Format
-- | FORMAT_R16G16B16_UNORM specifies a three-component, 48-bit
-- unsigned normalized format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_UNORM :: Format
-- | FORMAT_R16G16B16_SNORM specifies a three-component, 48-bit
-- signed normalized format that has a 16-bit R component in bytes 0..1,
-- a 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_SNORM :: Format
-- | FORMAT_R16G16B16_USCALED specifies a three-component, 48-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_USCALED :: Format
-- | FORMAT_R16G16B16_SSCALED specifies a three-component, 48-bit
-- signed scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_SSCALED :: Format
-- | FORMAT_R16G16B16_UINT specifies a three-component, 48-bit
-- unsigned integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_UINT :: Format
-- | FORMAT_R16G16B16_SINT specifies a three-component, 48-bit
-- signed integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_SINT :: Format
-- | FORMAT_R16G16B16_SFLOAT specifies a three-component, 48-bit
-- signed floating-point format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_SFLOAT :: Format
-- | FORMAT_R16G16B16A16_UNORM specifies a four-component, 64-bit
-- unsigned normalized format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_UNORM :: Format
-- | FORMAT_R16G16B16A16_SNORM specifies a four-component, 64-bit
-- signed normalized format that has a 16-bit R component in bytes 0..1,
-- a 16-bit G component in bytes 2..3, a 16-bit B component in bytes
-- 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SNORM :: Format
-- | FORMAT_R16G16B16A16_USCALED specifies a four-component, 64-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_USCALED :: Format
-- | FORMAT_R16G16B16A16_SSCALED specifies a four-component, 64-bit
-- signed scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SSCALED :: Format
-- | FORMAT_R16G16B16A16_UINT specifies a four-component, 64-bit
-- unsigned integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, a 16-bit B component in bytes 4..5,
-- and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_UINT :: Format
-- | FORMAT_R16G16B16A16_SINT specifies a four-component, 64-bit
-- signed integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, a 16-bit B component in bytes 4..5,
-- and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SINT :: Format
-- | FORMAT_R16G16B16A16_SFLOAT specifies a four-component, 64-bit
-- signed floating-point format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SFLOAT :: Format
-- | FORMAT_R32_UINT specifies a one-component, 32-bit unsigned
-- integer format that has a single 32-bit R component.
pattern FORMAT_R32_UINT :: Format
-- | FORMAT_R32_SINT specifies a one-component, 32-bit signed
-- integer format that has a single 32-bit R component.
pattern FORMAT_R32_SINT :: Format
-- | FORMAT_R32_SFLOAT specifies a one-component, 32-bit signed
-- floating-point format that has a single 32-bit R component.
pattern FORMAT_R32_SFLOAT :: Format
-- | FORMAT_R32G32_UINT specifies a two-component, 64-bit unsigned
-- integer format that has a 32-bit R component in bytes 0..3, and a
-- 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_UINT :: Format
-- | FORMAT_R32G32_SINT specifies a two-component, 64-bit signed
-- integer format that has a 32-bit R component in bytes 0..3, and a
-- 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_SINT :: Format
-- | FORMAT_R32G32_SFLOAT specifies a two-component, 64-bit signed
-- floating-point format that has a 32-bit R component in bytes 0..3, and
-- a 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_SFLOAT :: Format
-- | FORMAT_R32G32B32_UINT specifies a three-component, 96-bit
-- unsigned integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, and a 32-bit B component in bytes
-- 8..11.
pattern FORMAT_R32G32B32_UINT :: Format
-- | FORMAT_R32G32B32_SINT specifies a three-component, 96-bit
-- signed integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, and a 32-bit B component in bytes
-- 8..11.
pattern FORMAT_R32G32B32_SINT :: Format
-- | FORMAT_R32G32B32_SFLOAT specifies a three-component, 96-bit
-- signed floating-point format that has a 32-bit R component in bytes
-- 0..3, a 32-bit G component in bytes 4..7, and a 32-bit B component in
-- bytes 8..11.
pattern FORMAT_R32G32B32_SFLOAT :: Format
-- | FORMAT_R32G32B32A32_UINT specifies a four-component, 128-bit
-- unsigned integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, a 32-bit B component in bytes 8..11,
-- and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_UINT :: Format
-- | FORMAT_R32G32B32A32_SINT specifies a four-component, 128-bit
-- signed integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, a 32-bit B component in bytes 8..11,
-- and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_SINT :: Format
-- | FORMAT_R32G32B32A32_SFLOAT specifies a four-component, 128-bit
-- signed floating-point format that has a 32-bit R component in bytes
-- 0..3, a 32-bit G component in bytes 4..7, a 32-bit B component in
-- bytes 8..11, and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_SFLOAT :: Format
-- | FORMAT_R64_UINT specifies a one-component, 64-bit unsigned
-- integer format that has a single 64-bit R component.
pattern FORMAT_R64_UINT :: Format
-- | FORMAT_R64_SINT specifies a one-component, 64-bit signed
-- integer format that has a single 64-bit R component.
pattern FORMAT_R64_SINT :: Format
-- | FORMAT_R64_SFLOAT specifies a one-component, 64-bit signed
-- floating-point format that has a single 64-bit R component.
pattern FORMAT_R64_SFLOAT :: Format
-- | FORMAT_R64G64_UINT specifies a two-component, 128-bit unsigned
-- integer format that has a 64-bit R component in bytes 0..7, and a
-- 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_UINT :: Format
-- | FORMAT_R64G64_SINT specifies a two-component, 128-bit signed
-- integer format that has a 64-bit R component in bytes 0..7, and a
-- 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_SINT :: Format
-- | FORMAT_R64G64_SFLOAT specifies a two-component, 128-bit signed
-- floating-point format that has a 64-bit R component in bytes 0..7, and
-- a 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_SFLOAT :: Format
-- | FORMAT_R64G64B64_UINT specifies a three-component, 192-bit
-- unsigned integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, and a 64-bit B component in bytes
-- 16..23.
pattern FORMAT_R64G64B64_UINT :: Format
-- | FORMAT_R64G64B64_SINT specifies a three-component, 192-bit
-- signed integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, and a 64-bit B component in bytes
-- 16..23.
pattern FORMAT_R64G64B64_SINT :: Format
-- | FORMAT_R64G64B64_SFLOAT specifies a three-component, 192-bit
-- signed floating-point format that has a 64-bit R component in bytes
-- 0..7, a 64-bit G component in bytes 8..15, and a 64-bit B component in
-- bytes 16..23.
pattern FORMAT_R64G64B64_SFLOAT :: Format
-- | FORMAT_R64G64B64A64_UINT specifies a four-component, 256-bit
-- unsigned integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, a 64-bit B component in bytes
-- 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_UINT :: Format
-- | FORMAT_R64G64B64A64_SINT specifies a four-component, 256-bit
-- signed integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, a 64-bit B component in bytes
-- 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_SINT :: Format
-- | FORMAT_R64G64B64A64_SFLOAT specifies a four-component, 256-bit
-- signed floating-point format that has a 64-bit R component in bytes
-- 0..7, a 64-bit G component in bytes 8..15, a 64-bit B component in
-- bytes 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_SFLOAT :: Format
-- | FORMAT_B10G11R11_UFLOAT_PACK32 specifies a three-component,
-- 32-bit packed unsigned floating-point format that has a 10-bit B
-- component in bits 22..31, an 11-bit G component in bits 11..21, an
-- 11-bit R component in bits 0..10. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fundamentals-fp10
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fundamentals-fp11.
pattern FORMAT_B10G11R11_UFLOAT_PACK32 :: Format
-- | FORMAT_E5B9G9R9_UFLOAT_PACK32 specifies a three-component,
-- 32-bit packed unsigned floating-point format that has a 5-bit shared
-- exponent in bits 27..31, a 9-bit B component mantissa in bits 18..26,
-- a 9-bit G component mantissa in bits 9..17, and a 9-bit R component
-- mantissa in bits 0..8.
pattern FORMAT_E5B9G9R9_UFLOAT_PACK32 :: Format
-- | FORMAT_D16_UNORM specifies a one-component, 16-bit unsigned
-- normalized format that has a single 16-bit depth component.
pattern FORMAT_D16_UNORM :: Format
-- | FORMAT_X8_D24_UNORM_PACK32 specifies a two-component, 32-bit
-- format that has 24 unsigned normalized bits in the depth component
-- and, optionally:, 8 bits that are unused.
pattern FORMAT_X8_D24_UNORM_PACK32 :: Format
-- | FORMAT_D32_SFLOAT specifies a one-component, 32-bit signed
-- floating-point format that has 32-bits in the depth component.
pattern FORMAT_D32_SFLOAT :: Format
-- | FORMAT_S8_UINT specifies a one-component, 8-bit unsigned
-- integer format that has 8-bits in the stencil component.
pattern FORMAT_S8_UINT :: Format
-- | FORMAT_D16_UNORM_S8_UINT specifies a two-component, 24-bit
-- format that has 16 unsigned normalized bits in the depth component and
-- 8 unsigned integer bits in the stencil component.
pattern FORMAT_D16_UNORM_S8_UINT :: Format
-- | FORMAT_D24_UNORM_S8_UINT specifies a two-component, 32-bit
-- packed format that has 8 unsigned integer bits in the stencil
-- component, and 24 unsigned normalized bits in the depth component.
pattern FORMAT_D24_UNORM_S8_UINT :: Format
-- | FORMAT_D32_SFLOAT_S8_UINT specifies a two-component format that
-- has 32 signed float bits in the depth component and 8 unsigned integer
-- bits in the stencil component. There are optionally: 24-bits that are
-- unused.
pattern FORMAT_D32_SFLOAT_S8_UINT :: Format
-- | FORMAT_BC1_RGB_UNORM_BLOCK specifies a three-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data. This
-- format has no alpha and is considered opaque.
pattern FORMAT_BC1_RGB_UNORM_BLOCK :: Format
-- | FORMAT_BC1_RGB_SRGB_BLOCK specifies a three-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding. This format has no alpha and is considered
-- opaque.
pattern FORMAT_BC1_RGB_SRGB_BLOCK :: Format
-- | FORMAT_BC1_RGBA_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data, and
-- provides 1 bit of alpha.
pattern FORMAT_BC1_RGBA_UNORM_BLOCK :: Format
-- | FORMAT_BC1_RGBA_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding, and provides 1 bit of alpha.
pattern FORMAT_BC1_RGBA_SRGB_BLOCK :: Format
-- | FORMAT_BC2_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_BC2_UNORM_BLOCK :: Format
-- | FORMAT_BC2_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding.
pattern FORMAT_BC2_SRGB_BLOCK :: Format
-- | FORMAT_BC3_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_BC3_UNORM_BLOCK :: Format
-- | FORMAT_BC3_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding.
pattern FORMAT_BC3_SRGB_BLOCK :: Format
-- | FORMAT_BC4_UNORM_BLOCK specifies a one-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized red texel data.
pattern FORMAT_BC4_UNORM_BLOCK :: Format
-- | FORMAT_BC4_SNORM_BLOCK specifies a one-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of signed normalized red texel data.
pattern FORMAT_BC4_SNORM_BLOCK :: Format
-- | FORMAT_BC5_UNORM_BLOCK specifies a two-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RG texel data with the
-- first 64 bits encoding red values followed by 64 bits encoding green
-- values.
pattern FORMAT_BC5_UNORM_BLOCK :: Format
-- | FORMAT_BC5_SNORM_BLOCK specifies a two-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed normalized RG texel data with the
-- first 64 bits encoding red values followed by 64 bits encoding green
-- values.
pattern FORMAT_BC5_SNORM_BLOCK :: Format
-- | FORMAT_BC6H_UFLOAT_BLOCK specifies a three-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned floating-point RGB texel data.
pattern FORMAT_BC6H_UFLOAT_BLOCK :: Format
-- | FORMAT_BC6H_SFLOAT_BLOCK specifies a three-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed floating-point RGB texel data.
pattern FORMAT_BC6H_SFLOAT_BLOCK :: Format
-- | FORMAT_BC7_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_BC7_UNORM_BLOCK :: Format
-- | FORMAT_BC7_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_BC7_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8_UNORM_BLOCK specifies a three-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data. This
-- format has no alpha and is considered opaque.
pattern FORMAT_ETC2_R8G8B8_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8_SRGB_BLOCK specifies a three-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGB texel data with sRGB
-- nonlinear encoding. This format has no alpha and is considered opaque.
pattern FORMAT_ETC2_R8G8B8_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK specifies a four-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data, and
-- provides 1 bit of alpha.
pattern FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK specifies a four-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding, and provides 1 bit of alpha.
pattern FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK specifies a four-component,
-- ETC2 compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK specifies a four-component,
-- ETC2 compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding applied.
pattern FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK :: Format
-- | FORMAT_EAC_R11_UNORM_BLOCK specifies a one-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized red texel data.
pattern FORMAT_EAC_R11_UNORM_BLOCK :: Format
-- | FORMAT_EAC_R11_SNORM_BLOCK specifies a one-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of signed normalized red texel data.
pattern FORMAT_EAC_R11_SNORM_BLOCK :: Format
-- | FORMAT_EAC_R11G11_UNORM_BLOCK specifies a two-component, ETC2
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RG texel data with the first 64
-- bits encoding red values followed by 64 bits encoding green values.
pattern FORMAT_EAC_R11G11_UNORM_BLOCK :: Format
-- | FORMAT_EAC_R11G11_SNORM_BLOCK specifies a two-component, ETC2
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of signed normalized RG texel data with the first 64
-- bits encoding red values followed by 64 bits encoding green values.
pattern FORMAT_EAC_R11G11_SNORM_BLOCK :: Format
-- | FORMAT_ASTC_4x4_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_4x4_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_4x4_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_4x4_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_5x4_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_5x4_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_5x4_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×4 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_5x4_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_5x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_5x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_5x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_5x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_6x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_6x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_6x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_6x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_6x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_6x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_6x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_6x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x8_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×8 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x8_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x8_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×8 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x8_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x8_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×8 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x8_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x8_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×8 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x8_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x10_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×10 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x10_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x10_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×10 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x10_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x10_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×10 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_12x10_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_12x10_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×10 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_12x10_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x12_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×12 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_12x12_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_12x12_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×12 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_12x12_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 12×12 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 12×10 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×10 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×8 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×8 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 6×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 6×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 5×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 5×4 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_G16_B16_R16_3PLANE_444_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- Each plane has the same dimensions and each R, G and B component
-- contributes to a single texel. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G16_B16_R16_3PLANE_444_UNORM :: Format
-- | FORMAT_G16_B16R16_2PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, and a two-component, 32-bit BR plane 1
-- consisting of a 16-bit B component in the word in bytes 0..1, and a
-- 16-bit R component in the word in bytes 2..3. The horizontal
-- dimensions of the BR plane is halved relative to the image dimensions,
-- and each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G16_B16R16_2PLANE_422_UNORM :: Format
-- | FORMAT_G16_B16_R16_3PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- The horizontal dimension of the R and B plane is halved relative to
-- the image dimensions, and each R and B value is shared with the G
-- components for which <math>. The location of each plane when
-- this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G16_B16_R16_3PLANE_422_UNORM :: Format
-- | FORMAT_G16_B16R16_2PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, and a two-component, 32-bit BR plane 1
-- consisting of a 16-bit B component in the word in bytes 0..1, and a
-- 16-bit R component in the word in bytes 2..3. The horizontal and
-- vertical dimensions of the BR plane is halved relative to the image
-- dimensions, and each R and B value is shared with the G components for
-- which (lfloor i_G times 0.5 rfloor = i_B = i_R) and <math>. The
-- location of each plane when this image is in linear layout can be
-- determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G16_B16R16_2PLANE_420_UNORM :: Format
-- | FORMAT_G16_B16_R16_3PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- The horizontal and vertical dimensions of the R and B planes are
-- halved relative to the image dimensions, and each R and B component is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and (lfloor j_G times 0.5 rfloor = j_B = j_R). The location
-- of each plane when this image is in linear layout can be determined
-- via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G16_B16_R16_3PLANE_420_UNORM :: Format
-- | FORMAT_B16G16R16G16_422_UNORM specifies a four-component,
-- 64-bit format containing a pair of G components, an R component, and a
-- B component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has a 16-bit B component in the word in bytes 0..1, a 16-bit G
-- component for the even i coordinate in the word in bytes 2..3,
-- a 16-bit R component in the word in bytes 4..5, and a 16-bit G
-- component for the odd i coordinate in the word in bytes 6..7.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_B16G16R16G16_422_UNORM :: Format
-- | FORMAT_G16B16G16R16_422_UNORM specifies a four-component,
-- 64-bit format containing a pair of G components, an R component, and a
-- B component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has a 16-bit G component for the even i coordinate in
-- the word in bytes 0..1, a 16-bit B component in the word in bytes
-- 2..3, a 16-bit G component for the odd i coordinate in the word
-- in bytes 4..5, and a 16-bit R component in the word in bytes 6..7.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_G16B16G16R16_422_UNORM :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. Each plane has the same
-- dimensions and each R, G and B component contributes to a single
-- texel. The location of each plane when this image is in linear layout
-- can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 12-bit B component in
-- the top 12 bits of the word in bytes 0..1, and a 12-bit R component in
-- the top 12 bits of the word in bytes 2..3, the bottom 4 bits of each
-- word unused. The horizontal dimensions of the BR plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. The horizontal dimension
-- of the R and B plane is halved relative to the image dimensions, and
-- each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 12-bit B component in
-- the top 12 bits of the word in bytes 0..1, and a 12-bit R component in
-- the top 12 bits of the word in bytes 2..3, the bottom 4 bits of each
-- word unused. The horizontal and vertical dimensions of the BR plane is
-- halved relative to the image dimensions, and each R and B value is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and <math>. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. The horizontal and
-- vertical dimensions of the R and B planes are halved relative to the
-- image dimensions, and each R and B component is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- (lfloor j_G times 0.5 rfloor = j_B = j_R). The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 12-bit B component in the top 12 bits of the
-- word in bytes 0..1, a 12-bit G component for the even i
-- coordinate in the top 12 bits of the word in bytes 2..3, a 12-bit R
-- component in the top 12 bits of the word in bytes 4..5, and a 12-bit G
-- component for the odd i coordinate in the top 12 bits of the
-- word in bytes 6..7, with the bottom 4 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 :: Format
-- | FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 12-bit G component for the even i
-- coordinate in the top 12 bits of the word in bytes 0..1, a 12-bit B
-- component in the top 12 bits of the word in bytes 2..3, a 12-bit G
-- component for the odd i coordinate in the top 12 bits of the
-- word in bytes 4..5, and a 12-bit R component in the top 12 bits of the
-- word in bytes 6..7, with the bottom 4 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 :: Format
-- | FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 specifies a
-- four-component, 64-bit unsigned normalized format that has a 12-bit R
-- component in the top 12 bits of the word in bytes 0..1, a 12-bit G
-- component in the top 12 bits of the word in bytes 2..3, a 12-bit B
-- component in the top 12 bits of the word in bytes 4..5, and a 12-bit A
-- component in the top 12 bits of the word in bytes 6..7, with the
-- bottom 4 bits of each word unused.
pattern FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 :: Format
-- | FORMAT_R12X4G12X4_UNORM_2PACK16 specifies a two-component,
-- 32-bit unsigned normalized format that has a 12-bit R component in the
-- top 12 bits of the word in bytes 0..1, and a 12-bit G component in the
-- top 12 bits of the word in bytes 2..3, with the bottom 4 bits of each
-- word unused.
pattern FORMAT_R12X4G12X4_UNORM_2PACK16 :: Format
-- | FORMAT_R12X4_UNORM_PACK16 specifies a one-component, 16-bit
-- unsigned normalized format that has a single 12-bit R component in the
-- top 12 bits of a 16-bit word, with the bottom 4 bits unused.
pattern FORMAT_R12X4_UNORM_PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. Each plane has the same
-- dimensions and each R, G and B component contributes to a single
-- texel. The location of each plane when this image is in linear layout
-- can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 10-bit B component in
-- the top 10 bits of the word in bytes 0..1, and a 10-bit R component in
-- the top 10 bits of the word in bytes 2..3, the bottom 6 bits of each
-- word unused. The horizontal dimensions of the BR plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. The horizontal dimension
-- of the R and B plane is halved relative to the image dimensions, and
-- each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 10-bit B component in
-- the top 10 bits of the word in bytes 0..1, and a 10-bit R component in
-- the top 10 bits of the word in bytes 2..3, the bottom 6 bits of each
-- word unused. The horizontal and vertical dimensions of the BR plane is
-- halved relative to the image dimensions, and each R and B value is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and <math>. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. The horizontal and
-- vertical dimensions of the R and B planes are halved relative to the
-- image dimensions, and each R and B component is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- (lfloor j_G times 0.5 rfloor = j_B = j_R). The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 10-bit B component in the top 10 bits of the
-- word in bytes 0..1, a 10-bit G component for the even i
-- coordinate in the top 10 bits of the word in bytes 2..3, a 10-bit R
-- component in the top 10 bits of the word in bytes 4..5, and a 10-bit G
-- component for the odd i coordinate in the top 10 bits of the
-- word in bytes 6..7, with the bottom 6 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 :: Format
-- | FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 10-bit G component for the even i
-- coordinate in the top 10 bits of the word in bytes 0..1, a 10-bit B
-- component in the top 10 bits of the word in bytes 2..3, a 10-bit G
-- component for the odd i coordinate in the top 10 bits of the
-- word in bytes 4..5, and a 10-bit R component in the top 10 bits of the
-- word in bytes 6..7, with the bottom 6 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 :: Format
-- | FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 specifies a
-- four-component, 64-bit unsigned normalized format that has a 10-bit R
-- component in the top 10 bits of the word in bytes 0..1, a 10-bit G
-- component in the top 10 bits of the word in bytes 2..3, a 10-bit B
-- component in the top 10 bits of the word in bytes 4..5, and a 10-bit A
-- component in the top 10 bits of the word in bytes 6..7, with the
-- bottom 6 bits of each word unused.
pattern FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 :: Format
-- | FORMAT_R10X6G10X6_UNORM_2PACK16 specifies a two-component,
-- 32-bit unsigned normalized format that has a 10-bit R component in the
-- top 10 bits of the word in bytes 0..1, and a 10-bit G component in the
-- top 10 bits of the word in bytes 2..3, with the bottom 6 bits of each
-- word unused.
pattern FORMAT_R10X6G10X6_UNORM_2PACK16 :: Format
-- | FORMAT_R10X6_UNORM_PACK16 specifies a one-component, 16-bit
-- unsigned normalized format that has a single 10-bit R component in the
-- top 10 bits of a 16-bit word, with the bottom 6 bits unused.
pattern FORMAT_R10X6_UNORM_PACK16 :: Format
-- | FORMAT_G8_B8_R8_3PLANE_444_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. Each plane has the same dimensions and each R, G and B
-- component contributes to a single texel. The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G8_B8_R8_3PLANE_444_UNORM :: Format
-- | FORMAT_G8_B8R8_2PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, and a two-component, 16-bit BR plane 1 consisting of an 8-bit
-- B component in byte 0 and an 8-bit R component in byte 1. The
-- horizontal dimensions of the BR plane is halved relative to the image
-- dimensions, and each R and B value is shared with the G components for
-- which <math>. The location of each plane when this image is in
-- linear layout can be determined via getImageSubresourceLayout,
-- using IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G8_B8R8_2PLANE_422_UNORM :: Format
-- | FORMAT_G8_B8_R8_3PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. The horizontal dimension of the R and B plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G8_B8_R8_3PLANE_422_UNORM :: Format
-- | FORMAT_G8_B8R8_2PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, and a two-component, 16-bit BR plane 1 consisting of an 8-bit
-- B component in byte 0 and an 8-bit R component in byte 1. The
-- horizontal and vertical dimensions of the BR plane is halved relative
-- to the image dimensions, and each R and B value is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G8_B8R8_2PLANE_420_UNORM :: Format
-- | FORMAT_G8_B8_R8_3PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. The horizontal and vertical dimensions of the R and B planes
-- are halved relative to the image dimensions, and each R and B
-- component is shared with the G components for which (lfloor i_G times
-- 0.5 rfloor = i_B = i_R) and (lfloor j_G times 0.5 rfloor = j_B = j_R).
-- The location of each plane when this image is in linear layout can be
-- determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G8_B8_R8_3PLANE_420_UNORM :: Format
-- | FORMAT_B8G8R8G8_422_UNORM specifies a four-component, 32-bit
-- format containing a pair of G components, an R component, and a B
-- component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has an 8-bit B component in byte 0, an 8-bit G component for
-- the even i coordinate in byte 1, an 8-bit R component in byte
-- 2, and an 8-bit G component for the odd i coordinate in byte 3.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_B8G8R8G8_422_UNORM :: Format
-- | FORMAT_G8B8G8R8_422_UNORM specifies a four-component, 32-bit
-- format containing a pair of G components, an R component, and a B
-- component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has an 8-bit G component for the even i coordinate in
-- byte 0, an 8-bit B component in byte 1, an 8-bit G component for the
-- odd i coordinate in byte 2, and an 8-bit R component in byte 3.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_G8B8G8R8_422_UNORM :: Format
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkObjectType - Specify an enumeration to track object handle types
--
-- Description
--
-- '
--
-- TODO: table
--
-- VkObjectType and Vulkan Handle Relationship
--
-- See Also
--
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- getPrivateDataEXT, setPrivateDataEXT
newtype ObjectType
ObjectType :: Int32 -> ObjectType
pattern OBJECT_TYPE_UNKNOWN :: ObjectType
pattern OBJECT_TYPE_INSTANCE :: ObjectType
pattern OBJECT_TYPE_PHYSICAL_DEVICE :: ObjectType
pattern OBJECT_TYPE_DEVICE :: ObjectType
pattern OBJECT_TYPE_QUEUE :: ObjectType
pattern OBJECT_TYPE_SEMAPHORE :: ObjectType
pattern OBJECT_TYPE_COMMAND_BUFFER :: ObjectType
pattern OBJECT_TYPE_FENCE :: ObjectType
pattern OBJECT_TYPE_DEVICE_MEMORY :: ObjectType
pattern OBJECT_TYPE_BUFFER :: ObjectType
pattern OBJECT_TYPE_IMAGE :: ObjectType
pattern OBJECT_TYPE_EVENT :: ObjectType
pattern OBJECT_TYPE_QUERY_POOL :: ObjectType
pattern OBJECT_TYPE_BUFFER_VIEW :: ObjectType
pattern OBJECT_TYPE_IMAGE_VIEW :: ObjectType
pattern OBJECT_TYPE_SHADER_MODULE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_CACHE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_LAYOUT :: ObjectType
pattern OBJECT_TYPE_RENDER_PASS :: ObjectType
pattern OBJECT_TYPE_PIPELINE :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: ObjectType
pattern OBJECT_TYPE_SAMPLER :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_POOL :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET :: ObjectType
pattern OBJECT_TYPE_FRAMEBUFFER :: ObjectType
pattern OBJECT_TYPE_COMMAND_POOL :: ObjectType
pattern OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: ObjectType
pattern OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: ObjectType
pattern OBJECT_TYPE_DEFERRED_OPERATION_KHR :: ObjectType
pattern OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: ObjectType
pattern OBJECT_TYPE_VALIDATION_CACHE_EXT :: ObjectType
pattern OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: ObjectType
pattern OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: ObjectType
pattern OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: ObjectType
pattern OBJECT_TYPE_DISPLAY_MODE_KHR :: ObjectType
pattern OBJECT_TYPE_DISPLAY_KHR :: ObjectType
pattern OBJECT_TYPE_SWAPCHAIN_KHR :: ObjectType
pattern OBJECT_TYPE_SURFACE_KHR :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: ObjectType
pattern OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: ObjectType
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
-- | VkFormatFeatureFlagBits - Bitmask specifying features supported by a
-- buffer
--
-- Description
--
-- The following bits may be set in linearTilingFeatures,
-- optimalTilingFeatures, and
-- DrmFormatModifierPropertiesEXT::drmFormatModifierTilingFeatures,
-- specifying that the features are supported by images or
-- image views or sampler Y′CBCR conversion objects created
-- with the queried
-- getPhysicalDeviceFormatProperties::format:
--
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image
-- view can be sampled from.
-- - FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image
-- view can be used as a storage images.
-- - FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an
-- image view can be used as storage image that supports atomic
-- operations.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
-- - FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that
-- an image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
-- - FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image
-- can be used as srcImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_BLIT_DST_BIT specifies that an image
-- can be used as dstImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies
-- that if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image
-- view can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.If the format being queried is a
-- depth/stencil format, this bit only specifies that the depth aspect
-- (not the stencil aspect) of an image of this format supports linear
-- filtering, and that linear filtering of the depth aspect is supported
-- whether depth compare is enabled in the sampler or not. If this bit is
-- not present, linear filtering with depth compare disabled is
-- unsupported and linear filtering with depth compare enabled is
-- supported, but may compute the filtered value in an
-- implementation-dependent manner which differs from the normal rules of
-- linear filtering. The resulting value must be in the range
-- [0,1] and should be proportional to, or a weighted average of,
-- the number of comparison passes or failures.
-- - FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
-- - FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT specifies
-- that Image can be used with a sampler that has either of
-- magFilter or minFilter set to
-- FILTER_CUBIC_EXT, or be the source image for a blit with
-- filter set to FILTER_CUBIC_EXT. This bit must
-- only be exposed for formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT. If the format being queried
-- is a depth/stencil format, this only specifies that the depth aspect
-- is cubic filterable.
-- - FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that
-- an application can define a sampler Y′CBCR conversion
-- using this format as a source, and that an image of this format
-- can be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
-- - FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by
-- default.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
-- - FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar
-- image can have the IMAGE_CREATE_DISJOINT_BIT set during
-- image creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane
-- formats.
-- - FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that
-- an image view can be used as a fragment density map
-- attachment.
--
--
-- The following bits may be set in bufferFeatures,
-- specifying that the features are supported by buffers or
-- buffer views created with the queried
-- getPhysicalDeviceProperties::format:
--
--
--
-- See Also
--
-- FormatFeatureFlags
newtype FormatFeatureFlagBits
FormatFeatureFlagBits :: Flags -> FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image view
-- can be sampled from.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image view
-- can be used as a storage images.
pattern FORMAT_FEATURE_STORAGE_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an image
-- view can be used as storage image that supports atomic
-- operations.
pattern FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT specifies that
-- atomic operations are supported on
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER with this format.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_VERTEX_BUFFER_BIT specifies that the format
-- can be used as a vertex attribute format
-- (VertexInputAttributeDescription::format).
pattern FORMAT_FEATURE_VERTEX_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that an
-- image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
pattern FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image can
-- be used as srcImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_SRC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_DST_BIT specifies that an image can
-- be used as dstImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies that
-- if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image view
-- can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.
--
-- If the format being queried is a depth/stencil format, this bit only
-- specifies that the depth aspect (not the stencil aspect) of an image
-- of this format supports linear filtering, and that linear filtering of
-- the depth aspect is supported whether depth compare is enabled in the
-- sampler or not. If this bit is not present, linear filtering with
-- depth compare disabled is unsupported and linear filtering with depth
-- compare enabled is supported, but may compute the filtered
-- value in an implementation-dependent manner which differs from the
-- normal rules of linear filtering. The resulting value must be
-- in the range [0,1] and should be proportional to, or a weighted
-- average of, the number of comparison passes or failures.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that an
-- image view can be used as a fragment density map
-- attachment.
pattern FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
pattern FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar image
-- can have the IMAGE_CREATE_DISJOINT_BIT set during image
-- creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane formats.
pattern FORMAT_FEATURE_DISJOINT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by default.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
pattern FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
pattern FORMAT_FEATURE_TRANSFER_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
pattern FORMAT_FEATURE_TRANSFER_SRC_BIT :: FormatFeatureFlagBits
type FormatFeatureFlags = FormatFeatureFlagBits
-- | VkImageAspectFlagBits - Bitmask specifying which aspects of an image
-- are included in a view
--
-- See Also
--
-- BindImagePlaneMemoryInfo, ImageAspectFlags,
-- ImagePlaneMemoryRequirementsInfo
newtype ImageAspectFlagBits
ImageAspectFlagBits :: Flags -> ImageAspectFlagBits
-- | IMAGE_ASPECT_COLOR_BIT specifies the color aspect.
pattern IMAGE_ASPECT_COLOR_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_DEPTH_BIT specifies the depth aspect.
pattern IMAGE_ASPECT_DEPTH_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_STENCIL_BIT specifies the stencil aspect.
pattern IMAGE_ASPECT_STENCIL_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_METADATA_BIT specifies the metadata aspect, used
-- for sparse sparse resource operations.
pattern IMAGE_ASPECT_METADATA_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT specifies memory
-- plane 3.
pattern IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT specifies memory
-- plane 2.
pattern IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT specifies memory
-- plane 1.
pattern IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT specifies memory
-- plane 0.
pattern IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_2_BIT specifies plane 2 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_2_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_1_BIT specifies plane 1 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_1_BIT :: ImageAspectFlagBits
-- | IMAGE_ASPECT_PLANE_0_BIT specifies plane 0 of a
-- multi-planar image format.
pattern IMAGE_ASPECT_PLANE_0_BIT :: ImageAspectFlagBits
type ImageAspectFlags = ImageAspectFlagBits
-- | VkSamplerYcbcrModelConversion - Color model component of a color space
--
-- Description
--
--
--
--
--
-- In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color
-- models, for the input to the sampler Y′CBCR range expansion and model
-- conversion:
--
--
-- - the Y (Y′ luma) channel corresponds to the G channel of an RGB
-- image.
-- - the CB (CB or “U” blue color difference) channel corresponds to
-- the B channel of an RGB image.
-- - the CR (CR or “V” red color difference) channel corresponds to the
-- R channel of an RGB image.
-- - the alpha channel, if present, is not modified by color model
-- conversion.
--
--
-- These rules reflect the mapping of channels after the channel swizzle
-- operation (controlled by
-- SamplerYcbcrConversionCreateInfo::components).
--
-- Note
--
-- For example, an “YUVA” 32-bit format comprising four 8-bit channels
-- can be implemented as FORMAT_R8G8B8A8_UNORM with a component
-- mapping:
--
--
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- SamplerYcbcrConversionCreateInfo
newtype SamplerYcbcrModelConversion
SamplerYcbcrModelConversion :: Int32 -> SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 :: SamplerYcbcrModelConversion
-- | VkSamplerYcbcrRange - Range of encoded values in a color space
--
-- Description
--
-- The formulae for these conversions is described in the Sampler
-- Y′CBCR Range Expansion section of the Image Operations
-- chapter.
--
-- No range modification takes place if ycbcrModel is
-- SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY; the
-- ycbcrRange field of SamplerYcbcrConversionCreateInfo
-- is ignored in this case.
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- SamplerYcbcrConversionCreateInfo
newtype SamplerYcbcrRange
SamplerYcbcrRange :: Int32 -> SamplerYcbcrRange
-- | SAMPLER_YCBCR_RANGE_ITU_FULL specifies that the full range of
-- the encoded values are valid and interpreted according to the ITU
-- “full range” quantization rules.
pattern SAMPLER_YCBCR_RANGE_ITU_FULL :: SamplerYcbcrRange
-- | SAMPLER_YCBCR_RANGE_ITU_NARROW specifies that headroom and foot
-- room are reserved in the numerical range of encoded values, and the
-- remaining values are expanded according to the ITU “narrow range”
-- quantization rules.
pattern SAMPLER_YCBCR_RANGE_ITU_NARROW :: SamplerYcbcrRange
-- | VkChromaLocation - Position of downsampled chroma samples
--
-- See Also
--
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- SamplerYcbcrConversionCreateInfo
newtype ChromaLocation
ChromaLocation :: Int32 -> ChromaLocation
-- | CHROMA_LOCATION_COSITED_EVEN specifies that downsampled chroma
-- samples are aligned with luma samples with even coordinates.
pattern CHROMA_LOCATION_COSITED_EVEN :: ChromaLocation
-- | CHROMA_LOCATION_MIDPOINT specifies that downsampled chroma
-- samples are located half way between each even luma sample and the
-- nearest higher odd luma sample.
pattern CHROMA_LOCATION_MIDPOINT :: ChromaLocation
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionImageFormatProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.PhysicalDeviceSamplerYcbcrConversionFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.ImagePlaneMemoryRequirementsInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.BindImagePlaneMemoryInfo
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion.SamplerYcbcrConversionInfo
module Vulkan.Extensions.VK_KHR_sampler_ycbcr_conversion
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR :: StructureType
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT :: DebugReportObjectTypeEXT
pattern OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR :: ObjectType
pattern FORMAT_G8B8G8R8_422_UNORM_KHR :: Format
pattern FORMAT_B8G8R8G8_422_UNORM_KHR :: Format
pattern FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR :: Format
pattern FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR :: Format
pattern FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR :: Format
pattern FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR :: Format
pattern FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR :: Format
pattern FORMAT_R10X6_UNORM_PACK16_KHR :: Format
pattern FORMAT_R10X6G10X6_UNORM_2PACK16_KHR :: Format
pattern FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR :: Format
pattern FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR :: Format
pattern FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR :: Format
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR :: Format
pattern FORMAT_R12X4_UNORM_PACK16_KHR :: Format
pattern FORMAT_R12X4G12X4_UNORM_2PACK16_KHR :: Format
pattern FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR :: Format
pattern FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR :: Format
pattern FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR :: Format
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR :: Format
pattern FORMAT_G16B16G16R16_422_UNORM_KHR :: Format
pattern FORMAT_B16G16R16G16_422_UNORM_KHR :: Format
pattern FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR :: Format
pattern FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR :: Format
pattern FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR :: Format
pattern FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR :: Format
pattern FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR :: Format
pattern IMAGE_ASPECT_PLANE_0_BIT_KHR :: ImageAspectFlagBits
pattern IMAGE_ASPECT_PLANE_1_BIT_KHR :: ImageAspectFlagBits
pattern IMAGE_ASPECT_PLANE_2_BIT_KHR :: ImageAspectFlagBits
pattern IMAGE_CREATE_DISJOINT_BIT_KHR :: ImageCreateFlagBits
pattern FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_DISJOINT_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR :: FormatFeatureFlagBits
pattern SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR :: SamplerYcbcrModelConversion
pattern SAMPLER_YCBCR_RANGE_ITU_FULL_KHR :: SamplerYcbcrRange
pattern SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR :: SamplerYcbcrRange
pattern CHROMA_LOCATION_COSITED_EVEN_KHR :: ChromaLocation
pattern CHROMA_LOCATION_MIDPOINT_KHR :: ChromaLocation
createSamplerYcbcrConversionKHR :: forall (a :: [Type]) io. (Extendss SamplerYcbcrConversionCreateInfo a, PokeChain a, MonadIO io) => Device -> SamplerYcbcrConversionCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io SamplerYcbcrConversion
destroySamplerYcbcrConversionKHR :: MonadIO io => Device -> SamplerYcbcrConversion -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
type SamplerYcbcrConversionKHR = SamplerYcbcrConversion
type SamplerYcbcrModelConversionKHR = SamplerYcbcrModelConversion
type SamplerYcbcrRangeKHR = SamplerYcbcrRange
type ChromaLocationKHR = ChromaLocation
type SamplerYcbcrConversionInfoKHR = SamplerYcbcrConversionInfo
type SamplerYcbcrConversionCreateInfoKHR = SamplerYcbcrConversionCreateInfo
type BindImagePlaneMemoryInfoKHR = BindImagePlaneMemoryInfo
type ImagePlaneMemoryRequirementsInfoKHR = ImagePlaneMemoryRequirementsInfo
type PhysicalDeviceSamplerYcbcrConversionFeaturesKHR = PhysicalDeviceSamplerYcbcrConversionFeatures
type SamplerYcbcrConversionImageFormatPropertiesKHR = SamplerYcbcrConversionImageFormatProperties
type KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION = 14
pattern KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION :: forall a. Integral a => a
type KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME = "VK_KHR_sampler_ycbcr_conversion"
pattern KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkDebugReportObjectTypeEXT - Specify the type of an object handle
--
-- Description
--
-- '
--
-- TODO: table
--
-- DebugReportObjectTypeEXT and Vulkan Handle Relationship
--
-- Note
--
-- The primary expected use of ERROR_VALIDATION_FAILED_EXT is for
-- validation layer testing. It is not expected that an application would
-- see this error code during normal use of the validation layers.
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT, debugReportMessageEXT
newtype DebugReportObjectTypeEXT
DebugReportObjectTypeEXT :: Int32 -> DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DebugReportObjectTypeEXT
module Vulkan.Core10.OtherTypes
-- | VkMemoryBarrier - Structure specifying a global memory barrier
--
-- Description
--
-- The first access scope is limited to access types in the
-- source access mask specified by srcAccessMask.
--
-- The second access scope is limited to access types in the
-- destination access mask specified by dstAccessMask.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- AccessFlags, StructureType, cmdPipelineBarrier,
-- cmdWaitEvents
data MemoryBarrier
MemoryBarrier :: AccessFlags -> AccessFlags -> MemoryBarrier
-- | srcAccessMask is a bitmask of AccessFlagBits
-- specifying a source access mask.
--
-- srcAccessMask must be a valid combination of
-- AccessFlagBits values
[$sel:srcAccessMask:MemoryBarrier] :: MemoryBarrier -> AccessFlags
-- | dstAccessMask is a bitmask of AccessFlagBits
-- specifying a destination access mask.
--
-- dstAccessMask must be a valid combination of
-- AccessFlagBits values
[$sel:dstAccessMask:MemoryBarrier] :: MemoryBarrier -> AccessFlags
-- | VkBufferMemoryBarrier - Structure specifying a buffer memory barrier
--
-- Description
--
-- The first access scope is limited to access to memory through
-- the specified buffer range, via access types in the source access
-- mask specified by srcAccessMask. If
-- srcAccessMask includes ACCESS_HOST_WRITE_BIT, memory
-- writes performed by that access type are also made visible, as that
-- access type is not performed through a resource.
--
-- The second access scope is limited to access to memory through
-- the specified buffer range, via access types in the destination
-- access mask specified by dstAccessMask. If
-- dstAccessMask includes ACCESS_HOST_WRITE_BIT or
-- ACCESS_HOST_READ_BIT, available memory writes are also made
-- visible to accesses of those types, as those access types are not
-- performed through a resource.
--
-- If srcQueueFamilyIndex is not equal to
-- dstQueueFamilyIndex, and srcQueueFamilyIndex is
-- equal to the current queue family, then the memory barrier defines a
-- queue family release operation for the specified buffer range,
-- and the second access scope includes no access, as if
-- dstAccessMask was 0.
--
-- If dstQueueFamilyIndex is not equal to
-- srcQueueFamilyIndex, and dstQueueFamilyIndex is
-- equal to the current queue family, then the memory barrier defines a
-- queue family acquire operation for the specified buffer range,
-- and the first access scope includes no access, as if
-- srcAccessMask was 0.
--
-- Valid Usage
--
--
-- - offset must be less than the size of
-- buffer
--
--
--
-- - If size is not equal to WHOLE_SIZE, size
-- must be greater than 0
-- - If size is not equal to WHOLE_SIZE, size
-- must be less than or equal to than the size of buffer
-- minus offset
-- - If buffer was created with a sharing mode of
-- SHARING_MODE_CONCURRENT, at least one of
-- srcQueueFamilyIndex and dstQueueFamilyIndex
-- must be QUEUE_FAMILY_IGNORED
-- - If buffer was created with a sharing mode of
-- SHARING_MODE_CONCURRENT, and one of
-- srcQueueFamilyIndex and dstQueueFamilyIndex is
-- QUEUE_FAMILY_IGNORED, the other must be
-- QUEUE_FAMILY_IGNORED or a special queue family reserved for
-- external memory ownership transfers, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-queue-transfers
-- - If buffer was created with a sharing mode of
-- SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is
-- QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must
-- also be QUEUE_FAMILY_IGNORED
-- - If buffer was created with a sharing mode of
-- SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not
-- QUEUE_FAMILY_IGNORED, it must be a valid queue family or
-- a special queue family reserved for external memory transfers, as
-- described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-queue-transfers
-- - If buffer was created with a sharing mode of
-- SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not
-- QUEUE_FAMILY_IGNORED, it must be a valid queue family or
-- a special queue family reserved for external memory transfers, as
-- described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-queue-transfers
-- - If buffer was created with a sharing mode of
-- SHARING_MODE_EXCLUSIVE, and srcQueueFamilyIndex and
-- dstQueueFamilyIndex are not QUEUE_FAMILY_IGNORED, at
-- least one of them must be the same as the family of the queue
-- that will execute this barrier
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - buffer must be a valid Buffer handle
--
--
-- See Also
--
-- AccessFlags, Buffer, DeviceSize,
-- StructureType, cmdPipelineBarrier, cmdWaitEvents
data BufferMemoryBarrier
BufferMemoryBarrier :: AccessFlags -> AccessFlags -> Word32 -> Word32 -> Buffer -> DeviceSize -> DeviceSize -> BufferMemoryBarrier
-- | srcAccessMask is a bitmask of AccessFlagBits
-- specifying a source access mask.
[$sel:srcAccessMask:BufferMemoryBarrier] :: BufferMemoryBarrier -> AccessFlags
-- | dstAccessMask is a bitmask of AccessFlagBits
-- specifying a destination access mask.
[$sel:dstAccessMask:BufferMemoryBarrier] :: BufferMemoryBarrier -> AccessFlags
-- | srcQueueFamilyIndex is the source queue family for a queue
-- family ownership transfer.
[$sel:srcQueueFamilyIndex:BufferMemoryBarrier] :: BufferMemoryBarrier -> Word32
-- | dstQueueFamilyIndex is the destination queue family for a
-- queue family ownership transfer.
[$sel:dstQueueFamilyIndex:BufferMemoryBarrier] :: BufferMemoryBarrier -> Word32
-- | buffer is a handle to the buffer whose backing memory is
-- affected by the barrier.
[$sel:buffer:BufferMemoryBarrier] :: BufferMemoryBarrier -> Buffer
-- | offset is an offset in bytes into the backing memory for
-- buffer; this is relative to the base offset as bound to the
-- buffer (see bindBufferMemory).
[$sel:offset:BufferMemoryBarrier] :: BufferMemoryBarrier -> DeviceSize
-- | size is a size in bytes of the affected area of backing
-- memory for buffer, or WHOLE_SIZE to use the range from
-- offset to the end of the buffer.
[$sel:size:BufferMemoryBarrier] :: BufferMemoryBarrier -> DeviceSize
-- | VkImageMemoryBarrier - Structure specifying the parameters of an image
-- memory barrier
--
-- Description
--
-- The first access scope is limited to access to memory through
-- the specified image subresource range, via access types in the
-- source access mask specified by srcAccessMask. If
-- srcAccessMask includes ACCESS_HOST_WRITE_BIT, memory
-- writes performed by that access type are also made visible, as that
-- access type is not performed through a resource.
--
-- The second access scope is limited to access to memory through
-- the specified image subresource range, via access types in the
-- destination access mask specified by dstAccessMask. If
-- dstAccessMask includes ACCESS_HOST_WRITE_BIT or
-- ACCESS_HOST_READ_BIT, available memory writes are also made
-- visible to accesses of those types, as those access types are not
-- performed through a resource.
--
-- If srcQueueFamilyIndex is not equal to
-- dstQueueFamilyIndex, and srcQueueFamilyIndex is
-- equal to the current queue family, then the memory barrier defines a
-- queue family release operation for the specified image
-- subresource range, and the second access scope includes no access, as
-- if dstAccessMask was 0.
--
-- If dstQueueFamilyIndex is not equal to
-- srcQueueFamilyIndex, and dstQueueFamilyIndex is
-- equal to the current queue family, then the memory barrier defines a
-- queue family acquire operation for the specified image
-- subresource range, and the first access scope includes no access, as
-- if srcAccessMask was 0.
--
-- oldLayout and newLayout define an image layout
-- transition for the specified image subresource range.
--
-- If image has a multi-planar format and the image is
-- disjoint, then including IMAGE_ASPECT_COLOR_BIT in the
-- aspectMask member of subresourceRange is equivalent
-- to including IMAGE_ASPECT_PLANE_0_BIT,
-- IMAGE_ASPECT_PLANE_1_BIT, and (for three-plane formats only)
-- IMAGE_ASPECT_PLANE_2_BIT.
--
-- Valid Usage
--
--
-- - subresourceRange.baseMipLevel must be less than
-- the mipLevels specified in ImageCreateInfo when
-- image was created
--
--
--
-- - If subresourceRange.levelCount is not
-- REMAINING_MIP_LEVELS, subresourceRange.baseMipLevel +
-- subresourceRange.levelCount must be less than or equal
-- to the mipLevels specified in ImageCreateInfo when
-- image was created
-- - subresourceRange.baseArrayLayer must be less than
-- the arrayLayers specified in ImageCreateInfo when
-- image was created
-- - If subresourceRange.layerCount is not
-- REMAINING_ARRAY_LAYERS,
-- subresourceRange.baseArrayLayer +
-- subresourceRange.layerCount must be less than or equal
-- to the arrayLayers specified in ImageCreateInfo when
-- image was created
-- - If image is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL then image
-- must have been created with
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL then
-- image must have been created with
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT set
--
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL then
-- image must have been created with
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL then image
-- must have been created with IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL then image
-- must have been created with IMAGE_USAGE_TRANSFER_SRC_BIT
-- set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL then image
-- must have been created with IMAGE_USAGE_TRANSFER_DST_BIT
-- set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition,
-- oldLayout must be IMAGE_LAYOUT_UNDEFINED or the
-- current layout of the image subresources affected by the barrier
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition,
-- newLayout must not be IMAGE_LAYOUT_UNDEFINED or
-- IMAGE_LAYOUT_PREINITIALIZED
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL then
-- image must have been created with
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL then
-- image must have been created with
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR then image
-- must have been created with at least one of
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
-- IMAGE_USAGE_SAMPLED_BIT, or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR then image
-- must have been created with
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR then image
-- must have been created with at least one of
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
-- IMAGE_USAGE_SAMPLED_BIT, or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR then image
-- must have been created with
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT set
-- - If srcQueueFamilyIndex and dstQueueFamilyIndex
-- define a queue family ownership transfer or oldLayout
-- and newLayout define a image layout transition, and
-- oldLayout or newLayout is
-- IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV then image
-- must have been created with
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV set
-- - If image has a single-plane color format or is not
-- disjoint, then the aspectMask member of
-- subresourceRange must be
-- IMAGE_ASPECT_COLOR_BIT
-- - If image has a multi-planar format and the image is
-- disjoint, then the aspectMask member of
-- subresourceRange must include either at least one of
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, and
-- IMAGE_ASPECT_PLANE_2_BIT; or must include
-- IMAGE_ASPECT_COLOR_BIT
-- - If image has a multi-planar format with only two planes,
-- then the aspectMask member of subresourceRange
-- must not include IMAGE_ASPECT_PLANE_2_BIT
-- - If image has a depth/stencil format with both depth and
-- stencil and the separateDepthStencilLayouts feature is enabled,
-- then the aspectMask member of subresourceRange
-- must include either or both IMAGE_ASPECT_DEPTH_BIT and
-- IMAGE_ASPECT_STENCIL_BIT
-- - If image has a depth/stencil format with both depth and
-- stencil and the separateDepthStencilLayouts feature is not
-- enabled, then the aspectMask member of
-- subresourceRange must include both
-- IMAGE_ASPECT_DEPTH_BIT and IMAGE_ASPECT_STENCIL_BIT
-- - If srcQueueFamilyIndex is not equal to
-- dstQueueFamilyIndex, at least one must not be a
-- special queue family reserved for external memory ownership transfers,
-- as described in ???
-- - If image was created with a sharing mode of
-- SHARING_MODE_CONCURRENT, srcQueueFamilyIndex and
-- dstQueueFamilyIndex are not equal, and one of
-- srcQueueFamilyIndex and dstQueueFamilyIndex is a
-- special queue family values reserved for external memory transfers,
-- the other must be QUEUE_FAMILY_IGNORED
-- - If image was created with a sharing mode of
-- SHARING_MODE_EXCLUSIVE, and srcQueueFamilyIndex and
-- dstQueueFamilyIndex are not equal,
-- srcQueueFamilyIndex and dstQueueFamilyIndex
-- must both be valid queue families, or one of the special queue
-- family values reserved for external memory transfers, as described in
-- ???
-- - If image was created with a sharing mode of
-- SHARING_MODE_CONCURRENT, at least one of
-- srcQueueFamilyIndex and dstQueueFamilyIndex
-- must be QUEUE_FAMILY_IGNORED
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of SampleLocationsInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - oldLayout must be a valid ImageLayout
-- value
-- - newLayout must be a valid ImageLayout
-- value
-- - image must be a valid Image handle
-- - subresourceRange must be a valid
-- ImageSubresourceRange structure
--
--
-- See Also
--
-- AccessFlags, Image, ImageLayout,
-- ImageSubresourceRange, StructureType,
-- cmdPipelineBarrier, cmdWaitEvents
data ImageMemoryBarrier (es :: [Type])
ImageMemoryBarrier :: Chain es -> AccessFlags -> AccessFlags -> ImageLayout -> ImageLayout -> Word32 -> Word32 -> Image -> ImageSubresourceRange -> ImageMemoryBarrier (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> Chain es
-- | srcAccessMask is a bitmask of AccessFlagBits
-- specifying a source access mask.
[$sel:srcAccessMask:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> AccessFlags
-- | dstAccessMask is a bitmask of AccessFlagBits
-- specifying a destination access mask.
[$sel:dstAccessMask:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> AccessFlags
-- | oldLayout is the old layout in an image layout
-- transition.
[$sel:oldLayout:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> ImageLayout
-- | newLayout is the new layout in an image layout
-- transition.
[$sel:newLayout:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> ImageLayout
-- | srcQueueFamilyIndex is the source queue family for a queue
-- family ownership transfer.
[$sel:srcQueueFamilyIndex:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> Word32
-- | dstQueueFamilyIndex is the destination queue family for a
-- queue family ownership transfer.
[$sel:dstQueueFamilyIndex:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> Word32
-- | image is a handle to the image affected by this barrier.
[$sel:image:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> Image
-- | subresourceRange describes the image subresource range
-- within image that is affected by this barrier.
[$sel:subresourceRange:ImageMemoryBarrier] :: ImageMemoryBarrier (es :: [Type]) -> ImageSubresourceRange
-- | VkDrawIndirectCommand - Structure specifying a draw indirect command
--
-- Description
--
-- The members of DrawIndirectCommand have the same meaning as the
-- similarly named parameters of cmdDraw.
--
-- Valid Usage
--
--
--
--
--
-- See Also
--
-- cmdDrawIndirect
data DrawIndirectCommand
DrawIndirectCommand :: Word32 -> Word32 -> Word32 -> Word32 -> DrawIndirectCommand
-- | vertexCount is the number of vertices to draw.
[$sel:vertexCount:DrawIndirectCommand] :: DrawIndirectCommand -> Word32
-- | instanceCount is the number of instances to draw.
[$sel:instanceCount:DrawIndirectCommand] :: DrawIndirectCommand -> Word32
-- | firstVertex is the index of the first vertex to draw.
[$sel:firstVertex:DrawIndirectCommand] :: DrawIndirectCommand -> Word32
-- | firstInstance is the instance ID of the first instance to
-- draw.
[$sel:firstInstance:DrawIndirectCommand] :: DrawIndirectCommand -> Word32
-- | VkDrawIndexedIndirectCommand - Structure specifying a draw indexed
-- indirect command
--
-- Description
--
-- The members of DrawIndexedIndirectCommand have the same meaning
-- as the similarly named parameters of cmdDrawIndexed.
--
-- Valid Usage
--
--
--
--
-- - (indexSize * (firstIndex + indexCount)
-- + offset) must be less than or equal to the size of
-- the bound index buffer, with indexSize being based on the
-- type specified by indexType, where the index buffer,
-- indexType, and offset are specified via
-- cmdBindIndexBuffer
-- - If the drawIndirectFirstInstance feature is not enabled,
-- firstInstance must be 0
--
--
-- See Also
--
-- cmdDrawIndexedIndirect
data DrawIndexedIndirectCommand
DrawIndexedIndirectCommand :: Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> DrawIndexedIndirectCommand
-- | indexCount is the number of vertices to draw.
[$sel:indexCount:DrawIndexedIndirectCommand] :: DrawIndexedIndirectCommand -> Word32
-- | instanceCount is the number of instances to draw.
[$sel:instanceCount:DrawIndexedIndirectCommand] :: DrawIndexedIndirectCommand -> Word32
-- | firstIndex is the base index within the index buffer.
[$sel:firstIndex:DrawIndexedIndirectCommand] :: DrawIndexedIndirectCommand -> Word32
-- | vertexOffset is the value added to the vertex index before
-- indexing into the vertex buffer.
[$sel:vertexOffset:DrawIndexedIndirectCommand] :: DrawIndexedIndirectCommand -> Int32
-- | firstInstance is the instance ID of the first instance to
-- draw.
[$sel:firstInstance:DrawIndexedIndirectCommand] :: DrawIndexedIndirectCommand -> Word32
-- | VkDispatchIndirectCommand - Structure specifying a dispatch indirect
-- command
--
-- Description
--
-- The members of DispatchIndirectCommand have the same meaning as
-- the corresponding parameters of cmdDispatch.
--
-- Valid Usage
--
-- See Also
--
-- cmdDispatchIndirect
data DispatchIndirectCommand
DispatchIndirectCommand :: Word32 -> Word32 -> Word32 -> DispatchIndirectCommand
-- | x is the number of local workgroups to dispatch in the X
-- dimension.
--
-- x must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
[$sel:x:DispatchIndirectCommand] :: DispatchIndirectCommand -> Word32
-- | y is the number of local workgroups to dispatch in the Y
-- dimension.
--
-- y must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
[$sel:y:DispatchIndirectCommand] :: DispatchIndirectCommand -> Word32
-- | z is the number of local workgroups to dispatch in the Z
-- dimension.
--
-- z must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
[$sel:z:DispatchIndirectCommand] :: DispatchIndirectCommand -> Word32
-- | VkBaseOutStructure - Base structure for a read-only pointer chain
--
-- Description
--
-- BaseOutStructure can be used to facilitate iterating through a
-- structure pointer chain that returns data back to the application.
--
-- See Also
--
-- BaseOutStructure, StructureType
data BaseOutStructure
BaseOutStructure :: StructureType -> Ptr BaseOutStructure -> BaseOutStructure
-- | sType is the structure type of the structure being iterated
-- through.
[$sel:sType:BaseOutStructure] :: BaseOutStructure -> StructureType
-- | pNext is NULL or a pointer to the next structure in
-- a structure chain.
[$sel:next:BaseOutStructure] :: BaseOutStructure -> Ptr BaseOutStructure
-- | VkBaseInStructure - Base structure for a read-only pointer chain
--
-- Description
--
-- BaseInStructure can be used to facilitate iterating through a
-- read-only structure pointer chain.
--
-- See Also
--
-- BaseInStructure, StructureType
data BaseInStructure
BaseInStructure :: StructureType -> Ptr BaseInStructure -> BaseInStructure
-- | sType is the structure type of the structure being iterated
-- through.
[$sel:sType:BaseInStructure] :: BaseInStructure -> StructureType
-- | pNext is NULL or a pointer to the next structure in
-- a structure chain.
[$sel:next:BaseInStructure] :: BaseInStructure -> Ptr BaseInStructure
-- | VkObjectType - Specify an enumeration to track object handle types
--
-- Description
--
-- '
--
-- TODO: table
--
-- VkObjectType and Vulkan Handle Relationship
--
-- See Also
--
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- getPrivateDataEXT, setPrivateDataEXT
newtype ObjectType
ObjectType :: Int32 -> ObjectType
pattern OBJECT_TYPE_UNKNOWN :: ObjectType
pattern OBJECT_TYPE_INSTANCE :: ObjectType
pattern OBJECT_TYPE_PHYSICAL_DEVICE :: ObjectType
pattern OBJECT_TYPE_DEVICE :: ObjectType
pattern OBJECT_TYPE_QUEUE :: ObjectType
pattern OBJECT_TYPE_SEMAPHORE :: ObjectType
pattern OBJECT_TYPE_COMMAND_BUFFER :: ObjectType
pattern OBJECT_TYPE_FENCE :: ObjectType
pattern OBJECT_TYPE_DEVICE_MEMORY :: ObjectType
pattern OBJECT_TYPE_BUFFER :: ObjectType
pattern OBJECT_TYPE_IMAGE :: ObjectType
pattern OBJECT_TYPE_EVENT :: ObjectType
pattern OBJECT_TYPE_QUERY_POOL :: ObjectType
pattern OBJECT_TYPE_BUFFER_VIEW :: ObjectType
pattern OBJECT_TYPE_IMAGE_VIEW :: ObjectType
pattern OBJECT_TYPE_SHADER_MODULE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_CACHE :: ObjectType
pattern OBJECT_TYPE_PIPELINE_LAYOUT :: ObjectType
pattern OBJECT_TYPE_RENDER_PASS :: ObjectType
pattern OBJECT_TYPE_PIPELINE :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: ObjectType
pattern OBJECT_TYPE_SAMPLER :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_POOL :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_SET :: ObjectType
pattern OBJECT_TYPE_FRAMEBUFFER :: ObjectType
pattern OBJECT_TYPE_COMMAND_POOL :: ObjectType
pattern OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: ObjectType
pattern OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: ObjectType
pattern OBJECT_TYPE_DEFERRED_OPERATION_KHR :: ObjectType
pattern OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: ObjectType
pattern OBJECT_TYPE_VALIDATION_CACHE_EXT :: ObjectType
pattern OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: ObjectType
pattern OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: ObjectType
pattern OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: ObjectType
pattern OBJECT_TYPE_DISPLAY_MODE_KHR :: ObjectType
pattern OBJECT_TYPE_DISPLAY_KHR :: ObjectType
pattern OBJECT_TYPE_SWAPCHAIN_KHR :: ObjectType
pattern OBJECT_TYPE_SURFACE_KHR :: ObjectType
pattern OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: ObjectType
pattern OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: ObjectType
-- | VkVendorId - Khronos vendor IDs
--
-- Description
--
-- Note
--
-- Khronos vendor IDs may be allocated by vendors at any time. Only the
-- latest canonical versions of this Specification, of the corresponding
-- vk.xml API Registry, and of the corresponding
-- vulkan_core.h header file must contain all reserved
-- Khronos vendor IDs.
--
-- Only Khronos vendor IDs are given symbolic names at present. PCI
-- vendor IDs returned by the implementation can be looked up in the
-- PCI-SIG database.
--
-- See Also
--
-- No cross-references are available
newtype VendorId
VendorId :: Int32 -> VendorId
pattern VENDOR_ID_VIV :: VendorId
pattern VENDOR_ID_VSI :: VendorId
pattern VENDOR_ID_KAZAN :: VendorId
pattern VENDOR_ID_CODEPLAY :: VendorId
pattern VENDOR_ID_MESA :: VendorId
instance GHC.Classes.Eq Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance GHC.Classes.Eq Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance GHC.Classes.Eq Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance GHC.Classes.Eq Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance GHC.Classes.Eq Vulkan.Core10.OtherTypes.MemoryBarrier
instance GHC.Generics.Generic Vulkan.Core10.OtherTypes.MemoryBarrier
instance GHC.Show.Show Vulkan.Core10.OtherTypes.MemoryBarrier
instance GHC.Generics.Generic Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance GHC.Show.Show Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance GHC.Generics.Generic (Vulkan.Core10.OtherTypes.ImageMemoryBarrier es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.OtherTypes.ImageMemoryBarrier es)
instance GHC.Generics.Generic Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance GHC.Show.Show Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance GHC.Generics.Generic Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance GHC.Show.Show Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance GHC.Generics.Generic Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance GHC.Show.Show Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance Foreign.Storable.Storable Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance Vulkan.Zero.Zero Vulkan.Core10.OtherTypes.DispatchIndirectCommand
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance Foreign.Storable.Storable Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance Vulkan.Zero.Zero Vulkan.Core10.OtherTypes.DrawIndexedIndirectCommand
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance Foreign.Storable.Storable Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance Vulkan.Zero.Zero Vulkan.Core10.OtherTypes.DrawIndirectCommand
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.OtherTypes.ImageMemoryBarrier
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.OtherTypes.ImageMemoryBarrier es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.OtherTypes.ImageMemoryBarrier es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.OtherTypes.ImageMemoryBarrier es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.OtherTypes.ImageMemoryBarrier es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.OtherTypes.ImageMemoryBarrier es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance Foreign.Storable.Storable Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance Vulkan.Zero.Zero Vulkan.Core10.OtherTypes.BufferMemoryBarrier
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.OtherTypes.MemoryBarrier
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.OtherTypes.MemoryBarrier
instance Foreign.Storable.Storable Vulkan.Core10.OtherTypes.MemoryBarrier
instance Vulkan.Zero.Zero Vulkan.Core10.OtherTypes.MemoryBarrier
module Vulkan.Core10.Image
-- | vkCreateImage - Create a new image object
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- ImageCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pImage must be a valid pointer to a Image
-- handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Image,
-- ImageCreateInfo
createImage :: forall a io. (Extendss ImageCreateInfo a, PokeChain a, MonadIO io) => Device -> ImageCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Image
-- | A convenience wrapper to make a compatible pair of calls to
-- createImage and destroyImage
--
-- To ensure that destroyImage is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withImage :: forall a io r. (Extendss ImageCreateInfo a, PokeChain a, MonadIO io) => Device -> ImageCreateInfo a -> Maybe AllocationCallbacks -> (io Image -> (Image -> io ()) -> r) -> r
-- | vkDestroyImage - Destroy an image object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to image, either
-- directly or via a ImageView, must have completed
-- execution
--
--
--
-- - If AllocationCallbacks were provided when image
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when image
-- was created, pAllocator must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If image is not NULL_HANDLE, image
-- must be a valid Image handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If image is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to image must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Image
destroyImage :: forall io. MonadIO io => Device -> Image -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkGetImageSubresourceLayout - Retrieve information about an image
-- subresource
--
-- Description
--
-- If the image is linear, then the returned layout is valid for
-- host access.
--
-- If the image’s tiling is IMAGE_TILING_LINEAR and its format is
-- a multi-planar format, then getImageSubresourceLayout
-- describes one format plane of the image. If the image’s tiling
-- is IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then
-- getImageSubresourceLayout describes one memory plane of
-- the image. If the image’s tiling is
-- IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT and the image is
-- non-linear, then the returned layout has an
-- implementation-dependent meaning; the vendor of the image’s DRM
-- format modifier may provide documentation that explains how
-- to interpret the returned layout.
--
-- getImageSubresourceLayout is invariant for the lifetime of a
-- single image. However, the subresource layout of images in Android
-- hardware buffer external memory is not known until the image has been
-- bound to memory, so applications must not call
-- getImageSubresourceLayout for such an image before it has been
-- bound.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - image must be a valid Image handle
-- - pSubresource must be a valid pointer to a valid
-- ImageSubresource structure
-- - pLayout must be a valid pointer to a
-- SubresourceLayout structure
-- - image must have been created, allocated, or
-- retrieved from device
--
--
-- See Also
--
-- Device, Image, ImageSubresource,
-- SubresourceLayout
getImageSubresourceLayout :: forall io. MonadIO io => Device -> Image -> ImageSubresource -> io SubresourceLayout
-- | VkImageCreateInfo - Structure specifying the parameters of a newly
-- created image object
--
-- Description
--
-- Images created with tiling equal to
-- IMAGE_TILING_LINEAR have further restrictions on their limits
-- and capabilities compared to images created with tiling equal
-- to IMAGE_TILING_OPTIMAL. Creation of images with tiling
-- IMAGE_TILING_LINEAR may not be supported unless other
-- parameters meet all of the constraints:
--
--
--
-- Images created with a format from one of those listed in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-requiring-sampler-ycbcr-conversion
-- have further restrictions on their limits and capabilities compared to
-- images created with other formats. Creation of images with a format
-- requiring Y′CBCR conversion may not be supported unless
-- other parameters meet all of the constraints:
--
--
--
-- Implementations may support additional limits and capabilities
-- beyond those listed above.
--
-- To determine the set of valid usage bits for a given format,
-- call getPhysicalDeviceFormatProperties.
--
-- If the size of the resultant image would exceed
-- maxResourceSize, then createImage must fail and
-- return ERROR_OUT_OF_DEVICE_MEMORY. This failure may
-- occur even when all image creation parameters satisfy their valid
-- usage requirements.
--
-- Note
--
-- For images created without IMAGE_CREATE_EXTENDED_USAGE_BIT a
-- usage bit is valid if it is supported for the format the
-- image is created with.
--
-- For images created with IMAGE_CREATE_EXTENDED_USAGE_BIT a
-- usage bit is valid if it is supported for at least one of the
-- formats a ImageView created from the image can have (see
-- Image Views for more detail).
--
-- Valid values for some image creation parameters are limited by a
-- numerical upper bound or by inclusion in a bitset. For example,
-- ImageCreateInfo::arrayLayers is limited by
-- imageCreateMaxArrayLayers, defined below; and
-- ImageCreateInfo::samples is limited by
-- imageCreateSampleCounts, also defined below.
--
-- Several limiting values are defined below, as well as assisting values
-- from which the limiting values are derived. The limiting values are
-- referenced by the relevant valid usage statements of
-- ImageCreateInfo.
--
--
-- - Let uint64_t imageCreateDrmFormatModifiers[] be the set
-- of Linux DRM format modifiers that the resultant image
-- may have.
-- - Let VkBool32 imageCreateMaybeLinear indicate if the
-- resultant image may be linear.
-- - Let VkFormatFeatureFlags imageCreateFormatFeatures be the
-- set of valid format features available during image
-- creation.
-- - Let VkImageFormatProperties2
-- imageCreateImageFormatPropertiesList[] be defined as
-- follows.
- If ImageCreateInfo::pNext contains no
-- ExternalFormatANDROID structure with non-zero
-- externalFormat, then
-- imageCreateImageFormatPropertiesList is the list of
-- structures obtained by calling
-- getPhysicalDeviceImageFormatProperties2, possibly multiple
-- times, as follows:
- The parameters
-- PhysicalDeviceImageFormatInfo2::format,
-- imageType, tiling, usage, and
-- flags must be equal to those in
-- ImageCreateInfo.
- If
-- ImageCreateInfo::pNext contains a
-- ExternalMemoryImageCreateInfo structure whose
-- handleTypes is not 0, then
-- PhysicalDeviceImageFormatInfo2::pNext must
-- contain a PhysicalDeviceExternalImageFormatInfo structure whose
-- handleType is not 0; and
-- getPhysicalDeviceImageFormatProperties2 must be called
-- for each handle type in
-- ExternalMemoryImageCreateInfo::handleTypes,
-- successively setting
-- PhysicalDeviceExternalImageFormatInfo::handleType on
-- each call.
- If ImageCreateInfo::pNext contains
-- no ExternalMemoryImageCreateInfo structure, or contains a
-- structure whose handleTypes is 0, then
-- PhysicalDeviceImageFormatInfo2::pNext must
-- either contain no PhysicalDeviceExternalImageFormatInfo
-- structure, or contain a structure whose handleType is
-- 0.
- If tiling is
-- IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then
-- PhysicalDeviceImageFormatInfo2::pNext must
-- contain a PhysicalDeviceImageDrmFormatModifierInfoEXT structure
-- where sharingMode is equal to
-- ImageCreateInfo::sharingMode; and, if
-- sharingMode is SHARING_MODE_CONCURRENT, then
-- queueFamilyIndexCount and pQueueFamilyIndices
-- must be equal to those in ImageCreateInfo; and, if
-- flags contains IMAGE_CREATE_MUTABLE_FORMAT_BIT, then
-- the ImageFormatListCreateInfo structure included in the
-- pNext chain of PhysicalDeviceImageFormatInfo2
-- must be equivalent to the one included in the pNext
-- chain of ImageCreateInfo; and
-- getPhysicalDeviceImageFormatProperties2 must be called
-- for each modifier in imageCreateDrmFormatModifiers,
-- successively setting
-- PhysicalDeviceImageDrmFormatModifierInfoEXT::drmFormatModifier
-- on each call.
- If tiling is not
-- IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then
-- PhysicalDeviceImageFormatInfo2::pNext must
-- contain no PhysicalDeviceImageDrmFormatModifierInfoEXT
-- structure.
- If any call to
-- getPhysicalDeviceImageFormatProperties2 returns an error, then
-- imageCreateImageFormatPropertiesList is defined to be the
-- empty list.
- If
-- ImageCreateInfo::pNext contains a
-- ExternalFormatANDROID structure with non-zero
-- externalFormat, then
-- imageCreateImageFormatPropertiesList contains a single
-- element
-- where:
-- - Let uint32_t imageCreateMaxMipLevels be the minimum value
-- of ImageFormatProperties::maxMipLevels in
-- imageCreateImageFormatPropertiesList. The value is undefined
-- if imageCreateImageFormatPropertiesList is empty.
-- - Let uint32_t imageCreateMaxArrayLayers be the minimum
-- value of ImageFormatProperties::maxArrayLayers in
-- imageCreateImageFormatPropertiesList. The value is undefined
-- if imageCreateImageFormatPropertiesList is empty.
-- - Let VkExtent3D imageCreateMaxExtent be the component-wise
-- minimum over all ImageFormatProperties::maxExtent
-- values in imageCreateImageFormatPropertiesList. The value is
-- undefined if imageCreateImageFormatPropertiesList is
-- empty.
-- - Let VkSampleCountFlags imageCreateSampleCounts be the
-- intersection of each
-- ImageFormatProperties::sampleCounts in
-- imageCreateImageFormatPropertiesList. The value is undefined
-- if imageCreateImageFormatPropertiesList is empty.
--
--
-- Valid Usage
--
--
-- - Each of the following values (as described in Image Creation
-- Limits) must not be undefined
-- imageCreateMaxMipLevels, imageCreateMaxArrayLayers,
-- imageCreateMaxExtent, and
-- imageCreateSampleCounts
--
--
--
-- - If sharingMode is SHARING_MODE_CONCURRENT,
-- pQueueFamilyIndices must be a valid pointer to an
-- array of queueFamilyIndexCount uint32_t values
-- - If sharingMode is SHARING_MODE_CONCURRENT,
-- queueFamilyIndexCount must be greater than
-- 1
-- - If sharingMode is SHARING_MODE_CONCURRENT, each
-- element of pQueueFamilyIndices must be unique and
-- must be less than pQueueFamilyPropertyCount returned
-- by either getPhysicalDeviceQueueFamilyProperties or
-- getPhysicalDeviceQueueFamilyProperties2 for the
-- physicalDevice that was used to create device
-- - If the pNext chain includes a
-- ExternalFormatANDROID structure, and its
-- externalFormat member is non-zero the format
-- must be FORMAT_UNDEFINED
-- - If the pNext chain does not include a
-- ExternalFormatANDROID structure, or does and its
-- externalFormat member is 0, the format
-- must not be FORMAT_UNDEFINED
-- - extent.width must be greater than 0
-- - extent.height must be greater than 0
-- - extent.depth must be greater than 0
-- - mipLevels must be greater than 0
-- - arrayLayers must be greater than 0
-- - If flags contains
-- IMAGE_CREATE_CUBE_COMPATIBLE_BIT, imageType
-- must be IMAGE_TYPE_2D
-- - If flags contains
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT, imageType
-- must be IMAGE_TYPE_2D
-- - If flags contains
-- IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT, imageType
-- must be IMAGE_TYPE_3D
-- - extent.width must be less than or equal to
-- imageCreateMaxExtent.width (as defined in Image Creation
-- Limits)
-- - extent.height must be less than or equal to
-- imageCreateMaxExtent.height (as defined in Image Creation
-- Limits)
-- - extent.depth must be less than or equal to
-- imageCreateMaxExtent.depth (as defined in Image Creation
-- Limits)
-- - If imageType is IMAGE_TYPE_2D and flags
-- contains IMAGE_CREATE_CUBE_COMPATIBLE_BIT,
-- extent.width and extent.height must be equal
-- and arrayLayers must be greater than or equal to
-- 6
-- - If imageType is IMAGE_TYPE_1D, both
-- extent.height and extent.depth must be
-- 1
-- - If imageType is IMAGE_TYPE_2D,
-- extent.depth must be 1
-- - mipLevels must be less than or equal to the number
-- of levels in the complete mipmap chain based on extent.width,
-- extent.height, and extent.depth
-- - mipLevels must be less than or equal to
-- imageCreateMaxMipLevels (as defined in Image Creation
-- Limits)
-- - arrayLayers must be less than or equal to
-- imageCreateMaxArrayLayers (as defined in Image Creation
-- Limits)
-- - If imageType is IMAGE_TYPE_3D,
-- arrayLayers must be 1
-- - If samples is not SAMPLE_COUNT_1_BIT, then
-- imageType must be IMAGE_TYPE_2D, flags
-- must not contain IMAGE_CREATE_CUBE_COMPATIBLE_BIT,
-- mipLevels must be equal to 1, and
-- imageCreateMaybeLinear (as defined in Image Creation
-- Limits) must be false,
-- - If samples is not SAMPLE_COUNT_1_BIT,
-- usage must not contain
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT
-- - If usage includes
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, then bits other than
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, and
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT must not be set
-- - If usage includes
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT, extent.width
-- must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferWidth
-- - If usage includes
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT,
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT, extent.height
-- must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferHeight
-- - If usage includes
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT, extent.width
-- must be less than or equal to <math>
-- - If usage includes
-- IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT,
-- extent.height must be less than or equal to
-- <math>
-- - If usage includes
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, usage
-- must also contain at least one of
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT
-- - samples must be a bit value that is set in
-- imageCreateSampleCounts (as defined in Image Creation
-- Limits)
-- - If the multisampled storage images feature is not enabled,
-- and usage contains IMAGE_USAGE_STORAGE_BIT,
-- samples must be SAMPLE_COUNT_1_BIT
-- - If the sparse bindings feature is not enabled,
-- flags must not contain
-- IMAGE_CREATE_SPARSE_BINDING_BIT
-- - If the sparse aliased residency feature is not enabled,
-- flags must not contain
-- IMAGE_CREATE_SPARSE_ALIASED_BIT
-- - If imageType is IMAGE_TYPE_1D, flags
-- must not contain IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse residency for 2D images feature is not
-- enabled, and imageType is IMAGE_TYPE_2D,
-- flags must not contain
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse residency for 3D images feature is not
-- enabled, and imageType is IMAGE_TYPE_3D,
-- flags must not contain
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse residency for images with 2 samples feature
-- is not enabled, imageType is IMAGE_TYPE_2D, and
-- samples is SAMPLE_COUNT_2_BIT, flags
-- must not contain IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse residency for images with 4 samples feature
-- is not enabled, imageType is IMAGE_TYPE_2D, and
-- samples is SAMPLE_COUNT_4_BIT, flags
-- must not contain IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse residency for images with 8 samples feature
-- is not enabled, imageType is IMAGE_TYPE_2D, and
-- samples is SAMPLE_COUNT_8_BIT, flags
-- must not contain IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse residency for images with 16 samples feature
-- is not enabled, imageType is IMAGE_TYPE_2D, and
-- samples is SAMPLE_COUNT_16_BIT, flags
-- must not contain IMAGE_CREATE_SPARSE_RESIDENCY_BIT
-- - If flags contains
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT or
-- IMAGE_CREATE_SPARSE_ALIASED_BIT, it must also contain
-- IMAGE_CREATE_SPARSE_BINDING_BIT
-- - If any of the bits IMAGE_CREATE_SPARSE_BINDING_BIT,
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or
-- IMAGE_CREATE_SPARSE_ALIASED_BIT are set,
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT must not also be
-- set
-- - If the protected memory feature is not enabled, flags
-- must not contain IMAGE_CREATE_PROTECTED_BIT
-- - If any of the bits IMAGE_CREATE_SPARSE_BINDING_BIT,
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or
-- IMAGE_CREATE_SPARSE_ALIASED_BIT are set,
-- IMAGE_CREATE_PROTECTED_BIT must not also be set
-- - If the pNext chain includes a
-- ExternalMemoryImageCreateInfoNV structure, it must not
-- contain a ExternalMemoryImageCreateInfo structure
-- - If the pNext chain includes a
-- ExternalMemoryImageCreateInfo structure, its
-- handleTypes member must only contain bits that are
-- also in
-- ExternalImageFormatProperties::externalMemoryProperties.compatibleHandleTypes,
-- as returned by getPhysicalDeviceImageFormatProperties2 with
-- format, imageType, tiling, usage,
-- and flags equal to those in this structure, and with a
-- PhysicalDeviceExternalImageFormatInfo structure included in the
-- pNext chain, with a handleType equal to any one of
-- the handle types specified in
-- ExternalMemoryImageCreateInfo::handleTypes
-- - If the pNext chain includes a
-- ExternalMemoryImageCreateInfoNV structure, its
-- handleTypes member must only contain bits that are
-- also in
-- ExternalImageFormatPropertiesNV::externalMemoryProperties.compatibleHandleTypes,
-- as returned by getPhysicalDeviceExternalImageFormatPropertiesNV
-- with format, imageType, tiling,
-- usage, and flags equal to those in this structure,
-- and with externalHandleType equal to any one of the handle
-- types specified in
-- ExternalMemoryImageCreateInfoNV::handleTypes
-- - If the logical device was created with
-- DeviceGroupDeviceCreateInfo::physicalDeviceCount equal
-- to 1, flags must not contain
-- IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT
-- - If flags contains
-- IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT, then
-- mipLevels must be one, arrayLayers
-- must be one, imageType must be
-- IMAGE_TYPE_2D. and imageCreateMaybeLinear (as defined
-- in Image Creation Limits) must be false
-- - If flags contains
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT, then
-- format must be a block-compressed image format,
-- an ETC compressed image format, or an ASTC compressed image
-- format
-- - If flags contains
-- IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT, then
-- flags must also contain
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT
-- - initialLayout must be
-- IMAGE_LAYOUT_UNDEFINED or
-- IMAGE_LAYOUT_PREINITIALIZED
-- - If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, initialLayout
-- must be IMAGE_LAYOUT_UNDEFINED
-- - If the image 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 mipLevels must be 1
-- - If the image 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,
-- samples must be SAMPLE_COUNT_1_BIT
-- - If the image 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,
-- imageType must be IMAGE_TYPE_2D
-- - If the image 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,
-- and the ycbcrImageArrays feature is not enabled,
-- arrayLayers must be 1
-- - If format is a multi-planar format, and if
-- imageCreateFormatFeatures (as defined in Image Creation
-- Limits) does not contain FORMAT_FEATURE_DISJOINT_BIT, then
-- flags must not contain
-- IMAGE_CREATE_DISJOINT_BIT
-- - If format is not a multi-planar format, and
-- flags does not include IMAGE_CREATE_ALIAS_BIT,
-- flags must not contain
-- IMAGE_CREATE_DISJOINT_BIT
-- - If tiling is IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT,
-- then the pNext chain must include exactly one of
-- ImageDrmFormatModifierListCreateInfoEXT or
-- ImageDrmFormatModifierExplicitCreateInfoEXT structures
-- - If the pNext chain includes a
-- ImageDrmFormatModifierListCreateInfoEXT or
-- ImageDrmFormatModifierExplicitCreateInfoEXT structure, then
-- tiling must be
-- IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
-- - If tiling is IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
-- and flags contains IMAGE_CREATE_MUTABLE_FORMAT_BIT,
-- then the pNext chain must include a
-- ImageFormatListCreateInfo structure with non-zero
-- viewFormatCount
-- - If flags contains
-- IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- format must be a depth or depth/stencil format
-- - If the pNext chain includes a
-- ExternalMemoryImageCreateInfo structure whose
-- handleTypes member includes
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
-- imageType must be IMAGE_TYPE_2D
-- - If the pNext chain includes a
-- ExternalMemoryImageCreateInfo structure whose
-- handleTypes member includes
-- EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID,
-- mipLevels must either be 1 or equal to the
-- number of levels in the complete mipmap chain based on
-- extent.width, extent.height, and
-- extent.depth
-- - If the pNext chain includes a
-- ExternalFormatANDROID structure whose externalFormat
-- member is not 0, flags must not include
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT
-- - If the pNext chain includes a
-- ExternalFormatANDROID structure whose externalFormat
-- member is not 0, usage must not include any
-- usages except IMAGE_USAGE_SAMPLED_BIT
-- - If the pNext chain includes a
-- ExternalFormatANDROID structure whose externalFormat
-- member is not 0, tiling must be
-- IMAGE_TILING_OPTIMAL
-- - If format is a depth-stencil format, usage
-- includes IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, and the
-- pNext chain includes a ImageStencilUsageCreateInfo
-- structure, then its
-- ImageStencilUsageCreateInfo::stencilUsage member
-- must also include
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If format is a depth-stencil format, usage does
-- not include IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, and the
-- pNext chain includes a ImageStencilUsageCreateInfo
-- structure, then its
-- ImageStencilUsageCreateInfo::stencilUsage member
-- must also not include
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If format is a depth-stencil format, usage
-- includes IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, and the
-- pNext chain includes a ImageStencilUsageCreateInfo
-- structure, then its
-- ImageStencilUsageCreateInfo::stencilUsage member
-- must also include
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT
-- - If format is a depth-stencil format, usage does
-- not include IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, and the
-- pNext chain includes a ImageStencilUsageCreateInfo
-- structure, then its
-- ImageStencilUsageCreateInfo::stencilUsage member
-- must also not include
-- IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT
-- - If Format is a depth-stencil format and the pNext
-- chain includes a ImageStencilUsageCreateInfo structure with its
-- stencilUsage member including
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT, extent.width
-- must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferWidth
-- - If format is a depth-stencil format and the
-- pNext chain includes a ImageStencilUsageCreateInfo
-- structure with its stencilUsage member including
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT, extent.height
-- must be less than or equal to
-- PhysicalDeviceLimits::maxFramebufferHeight
-- - If the multisampled storage images feature is not enabled,
-- format is a depth-stencil format and the pNext chain
-- includes a ImageStencilUsageCreateInfo structure with its
-- stencilUsage including IMAGE_USAGE_STORAGE_BIT,
-- samples must be SAMPLE_COUNT_1_BIT
-- - If flags contains
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV, imageType
-- must be IMAGE_TYPE_2D or IMAGE_TYPE_3D
-- - If flags contains
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV, it must not contain
-- IMAGE_CREATE_CUBE_COMPATIBLE_BIT and the format
-- must not be a depth/stencil format
-- - If flags contains
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV and imageType is
-- IMAGE_TYPE_2D, extent.width and extent.height
-- must be greater than 1
-- - If flags contains
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV and imageType is
-- IMAGE_TYPE_3D, extent.width, extent.height,
-- and extent.depth must be greater than 1
-- - If usage includes
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV, imageType
-- must be IMAGE_TYPE_2D
-- - If usage includes
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV, samples
-- must be SAMPLE_COUNT_1_BIT
-- - If usage includes
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV, tiling
-- must be IMAGE_TILING_OPTIMAL
-- - If flags contains IMAGE_CREATE_SUBSAMPLED_BIT_EXT,
-- tiling must be IMAGE_TILING_OPTIMAL
-- - If flags contains IMAGE_CREATE_SUBSAMPLED_BIT_EXT,
-- imageType must be IMAGE_TYPE_2D
-- - If flags contains IMAGE_CREATE_SUBSAMPLED_BIT_EXT,
-- flags must not contain
-- IMAGE_CREATE_CUBE_COMPATIBLE_BIT
-- - If flags contains IMAGE_CREATE_SUBSAMPLED_BIT_EXT,
-- mipLevels must be 1
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- </section> = See Also
--
-- Extent3D, Format, ImageCreateFlags,
-- ImageLayout, ImageTiling, ImageType,
-- ImageUsageFlags, SampleCountFlagBits,
-- SharingMode, StructureType, createImage
data ImageCreateInfo (es :: [Type])
ImageCreateInfo :: Chain es -> ImageCreateFlags -> ImageType -> Format -> Extent3D -> Word32 -> Word32 -> SampleCountFlagBits -> ImageTiling -> ImageUsageFlags -> SharingMode -> Vector Word32 -> ImageLayout -> ImageCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of ImageCreateFlagBits describing
-- additional parameters of the image.
[$sel:flags:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> ImageCreateFlags
-- | imageType is a ImageType value specifying the basic
-- dimensionality of the image. Layers in array textures do not count as
-- a dimension for the purposes of the image type.
[$sel:imageType:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> ImageType
-- | format is a Format describing the format and type of
-- the texel blocks that will be contained in the image.
[$sel:format:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> Format
-- | extent is a Extent3D describing the number of data
-- elements in each dimension of the base level.
[$sel:extent:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> Extent3D
-- | mipLevels describes the number of levels of detail available
-- for minified sampling of the image.
[$sel:mipLevels:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> Word32
-- | arrayLayers is the number of layers in the image.
[$sel:arrayLayers:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> Word32
-- | samples is a SampleCountFlagBits specifying the number
-- of samples per texel.
[$sel:samples:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> SampleCountFlagBits
-- | tiling is a ImageTiling value specifying the tiling
-- arrangement of the texel blocks in memory.
[$sel:tiling:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> ImageTiling
-- | usage is a bitmask of ImageUsageFlagBits describing
-- the intended usage of the image.
[$sel:usage:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> ImageUsageFlags
-- | sharingMode is a SharingMode value specifying the
-- sharing mode of the image when it will be accessed by multiple queue
-- families.
[$sel:sharingMode:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> SharingMode
-- | pQueueFamilyIndices is a list of queue families that will
-- access this image (ignored if sharingMode is not
-- SHARING_MODE_CONCURRENT).
[$sel:queueFamilyIndices:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> Vector Word32
-- | initialLayout is a ImageLayout value specifying the
-- initial ImageLayout of all image subresources of the image. See
-- Image Layouts.
[$sel:initialLayout:ImageCreateInfo] :: ImageCreateInfo (es :: [Type]) -> ImageLayout
-- | VkSubresourceLayout - Structure specifying subresource layout
--
-- Description
--
-- If the image is linear, then rowPitch,
-- arrayPitch and depthPitch describe the layout of the
-- image subresource in linear memory. For uncompressed formats,
-- rowPitch is the number of bytes between texels with the same
-- x coordinate in adjacent rows (y coordinates differ by one).
-- arrayPitch is the number of bytes between texels with the
-- same x and y coordinate in adjacent array layers of the image (array
-- layer values differ by one). depthPitch is the number of
-- bytes between texels with the same x and y coordinate in adjacent
-- slices of a 3D image (z coordinates differ by one). Expressed as an
-- addressing formula, the starting byte of a texel in the image
-- subresource has address:
--
--
-- // (x,y,z,layer) are in texel coordinates
-- address(x,y,z,layer) = layer*arrayPitch + z*depthPitch + y*rowPitch + x*elementSize + offset
--
--
-- For compressed formats, the rowPitch is the number of bytes
-- between compressed texel blocks in adjacent rows. arrayPitch
-- is the number of bytes between compressed texel blocks in adjacent
-- array layers. depthPitch is the number of bytes between
-- compressed texel blocks in adjacent slices of a 3D image.
--
--
-- // (x,y,z,layer) are in compressed texel block coordinates
-- address(x,y,z,layer) = layer*arrayPitch + z*depthPitch + y*rowPitch + x*compressedTexelBlockByteSize + offset;
--
--
-- The value of arrayPitch is undefined for images that were not
-- created as arrays. depthPitch is defined only for 3D images.
--
-- If the image has a single-plane color format and its tiling is
-- IMAGE_TILING_LINEAR , then the aspectMask member of
-- ImageSubresource must be IMAGE_ASPECT_COLOR_BIT.
--
-- If the image has a depth/stencil format and its tiling is
-- IMAGE_TILING_LINEAR , then aspectMask must be
-- either IMAGE_ASPECT_DEPTH_BIT or
-- IMAGE_ASPECT_STENCIL_BIT. On implementations that store depth
-- and stencil aspects separately, querying each of these image
-- subresource layouts will return a different offset and
-- size representing the region of memory used for that aspect.
-- On implementations that store depth and stencil aspects interleaved,
-- the same offset and size are returned and represent
-- the interleaved memory allocation.
--
-- If the image has a multi-planar format and its tiling is
-- IMAGE_TILING_LINEAR , then the aspectMask member of
-- ImageSubresource must be
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, or
-- (for 3-plane formats only) IMAGE_ASPECT_PLANE_2_BIT. Querying
-- each of these image subresource layouts will return a different
-- offset and size representing the region of memory
-- used for that plane. If the image is disjoint, then the
-- offset is relative to the base address of the plane. If the
-- image is non-disjoint, then the offset is relative to
-- the base address of the image.
--
-- If the image’s tiling is IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT,
-- then the aspectMask member of ImageSubresource
-- must be one of VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT,
-- where the maximum allowed plane index i is defined by the
-- DrmFormatModifierPropertiesEXT::drmFormatModifierPlaneCount
-- associated with the image’s ImageCreateInfo::format
-- and modifier. The memory range used by the subresource is
-- described by offset and size. If the image is
-- disjoint, then the offset is relative to the base
-- address of the memory plane. If the image is
-- non-disjoint, then the offset is relative to the base
-- address of the image. If the image is non-linear, then
-- rowPitch, arrayPitch, and depthPitch have
-- an implementation-dependent meaning.
--
-- See Also
--
-- DeviceSize, ImageDrmFormatModifierExplicitCreateInfoEXT,
-- getImageSubresourceLayout
data SubresourceLayout
SubresourceLayout :: DeviceSize -> DeviceSize -> DeviceSize -> DeviceSize -> DeviceSize -> SubresourceLayout
-- | offset is the byte offset from the start of the image or the
-- plane where the image subresource begins.
[$sel:offset:SubresourceLayout] :: SubresourceLayout -> DeviceSize
-- | size is the size in bytes of the image subresource.
-- size includes any extra memory that is required based on
-- rowPitch.
[$sel:size:SubresourceLayout] :: SubresourceLayout -> DeviceSize
-- | rowPitch describes the number of bytes between each row of
-- texels in an image.
[$sel:rowPitch:SubresourceLayout] :: SubresourceLayout -> DeviceSize
-- | arrayPitch describes the number of bytes between each array
-- layer of an image.
[$sel:arrayPitch:SubresourceLayout] :: SubresourceLayout -> DeviceSize
-- | depthPitch describes the number of bytes between each slice
-- of 3D image.
[$sel:depthPitch:SubresourceLayout] :: SubresourceLayout -> DeviceSize
-- | VkImage - Opaque handle to an image object
--
-- See Also
--
-- BindImageMemoryInfo,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImageSparseMemoryRequirementsInfo2, ImageViewCreateInfo,
-- MemoryDedicatedAllocateInfo, SparseImageMemoryBindInfo,
-- SparseImageOpaqueMemoryBindInfo, bindImageMemory,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage, createImage, destroyImage,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements,
-- getImageSparseMemoryRequirements,
-- getImageSubresourceLayout, getSwapchainImagesKHR
newtype Image
Image :: Word64 -> Image
-- | VkImageLayout - Layout of image and image subresources
--
-- Description
--
-- The type(s) of device access supported by each layout are:
--
-- The layout of each image subresource is not a state of the image
-- subresource itself, but is rather a property of how the data in memory
-- is organized, and thus for each mechanism of accessing an image in the
-- API the application must specify a parameter or structure
-- member that indicates which image layout the image subresource(s) are
-- considered to be in when the image will be accessed. For transfer
-- commands, this is a parameter to the command (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#clears
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#copies).
-- For use as a framebuffer attachment, this is a member in the
-- substructures of the RenderPassCreateInfo (see Render
-- Pass). For use in a descriptor set, this is a member in the
-- DescriptorImageInfo structure (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates).
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2,
-- AttachmentDescriptionStencilLayout, AttachmentReference,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- DescriptorImageInfo, ImageCreateInfo,
-- ImageMemoryBarrier, cmdBindShadingRateImageNV,
-- cmdBlitImage, cmdClearColorImage,
-- cmdClearDepthStencilImage, cmdCopyBufferToImage,
-- cmdCopyImage, cmdCopyImageToBuffer,
-- cmdResolveImage
newtype ImageLayout
ImageLayout :: Int32 -> ImageLayout
-- | IMAGE_LAYOUT_UNDEFINED does not support device access. This
-- layout must only be used as the initialLayout member
-- of ImageCreateInfo or AttachmentDescription, or as the
-- oldLayout in an image transition. When transitioning out of
-- this layout, the contents of the memory are not guaranteed to be
-- preserved.
pattern IMAGE_LAYOUT_UNDEFINED :: ImageLayout
-- | IMAGE_LAYOUT_GENERAL supports all types of device access.
pattern IMAGE_LAYOUT_GENERAL :: ImageLayout
-- | IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL must only be used
-- as a color or resolve attachment in a Framebuffer. This layout
-- is valid only for image subresources of images created with the
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL specifies a
-- layout for both the depth and stencil aspects of a depth/stencil
-- format image allowing read and write access as a depth/stencil
-- attachment. It is equivalent to
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL specifies a layout
-- for both the depth and stencil aspects of a depth/stencil format image
-- allowing read only access as a depth/stencil attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL must only be used
-- as a read-only image in a shader (which can be read as a
-- sampled image, combined image/sampler and/or input attachment). This
-- layout is valid only for image subresources of images created with the
-- IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT usage bit enabled.
pattern IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL must only be used as a
-- source image of a transfer command (see the definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_TRANSFER_SRC_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL must only be used as a
-- destination image of a transfer command. This layout is valid only for
-- image subresources of images created with the
-- IMAGE_USAGE_TRANSFER_DST_BIT usage bit enabled.
pattern IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_PREINITIALIZED does not support device access.
-- This layout must only be used as the initialLayout
-- member of ImageCreateInfo or AttachmentDescription, or
-- as the oldLayout in an image transition. When transitioning
-- out of this layout, the contents of the memory are preserved. This
-- layout is intended to be used as the initial layout for an image whose
-- contents are written by the host, and hence the data can be
-- written to memory immediately, without first executing a layout
-- transition. Currently, IMAGE_LAYOUT_PREINITIALIZED is only
-- useful with linear images because there is not a standard
-- layout defined for IMAGE_TILING_OPTIMAL images.
pattern IMAGE_LAYOUT_PREINITIALIZED :: ImageLayout
-- | IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT must only
-- be used as a fragment density map attachment in a RenderPass.
-- This layout is valid only for image subresources of images created
-- with the IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT usage bit
-- enabled.
pattern IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT :: ImageLayout
-- | IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV must only be used
-- as a read-only shading-rate-image. This layout is valid only
-- for image subresources of images created with the
-- IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV usage bit enabled.
pattern IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV :: ImageLayout
-- | IMAGE_LAYOUT_SHARED_PRESENT_KHR is valid only for shared
-- presentable images, and must be used for any usage the image
-- supports.
pattern IMAGE_LAYOUT_SHARED_PRESENT_KHR :: ImageLayout
-- | IMAGE_LAYOUT_PRESENT_SRC_KHR must only be used for
-- presenting a presentable image for display. A swapchain’s image
-- must be transitioned to this layout before calling
-- queuePresentKHR, and must be transitioned away from this
-- layout after calling acquireNextImageKHR.
pattern IMAGE_LAYOUT_PRESENT_SRC_KHR :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read-only
-- access as a stencil attachment or in shaders.
pattern IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL specifies a layout for
-- the stencil aspect of a depth/stencil format image allowing read and
-- write access as a stencil attachment.
pattern IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL specifies a layout for the
-- depth aspect of a depth/stencil format image allowing read-only access
-- as a depth attachment or in shaders.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL specifies a layout for
-- the depth aspect of a depth/stencil format image allowing read and
-- write access as a depth attachment.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the depth aspect as a depth attachment, and read only
-- access to the stencil aspect as a stencil attachment or in shaders. It
-- is equivalent to IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL :: ImageLayout
-- | IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- specifies a layout for depth/stencil format images allowing read and
-- write access to the stencil aspect as a stencil attachment, and read
-- only access to the depth aspect as a depth attachment or in shaders.
-- It is equivalent to IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL and
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL.
pattern IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL :: ImageLayout
instance GHC.Classes.Eq Vulkan.Core10.Image.SubresourceLayout
instance GHC.Generics.Generic (Vulkan.Core10.Image.ImageCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Image.ImageCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.Image.SubresourceLayout
instance GHC.Show.Show Vulkan.Core10.Image.SubresourceLayout
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.Image.SubresourceLayout
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.Image.SubresourceLayout
instance Foreign.Storable.Storable Vulkan.Core10.Image.SubresourceLayout
instance Vulkan.Zero.Zero Vulkan.Core10.Image.SubresourceLayout
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Image.ImageCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Image.ImageCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Image.ImageCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Image.ImageCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Image.ImageCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Image.ImageCreateInfo es)
module Vulkan.Extensions.VK_EXT_image_drm_format_modifier
-- | vkGetImageDrmFormatModifierPropertiesEXT - Returns an image’s DRM
-- format modifier
--
-- Return Codes
--
--
--
-- See Also
--
-- Device, Image,
-- ImageDrmFormatModifierPropertiesEXT
getImageDrmFormatModifierPropertiesEXT :: forall io. MonadIO io => Device -> Image -> io ImageDrmFormatModifierPropertiesEXT
-- | VkDrmFormatModifierPropertiesListEXT - Structure specifying the list
-- of DRM format modifiers supported for a format
--
-- Description
--
-- If pDrmFormatModifierProperties is NULL, then the
-- function returns in drmFormatModifierCount the number of
-- modifiers compatible with the queried format. Otherwise, the
-- application must set drmFormatModifierCount to the
-- length of the array pDrmFormatModifierProperties; the
-- function will write at most drmFormatModifierCount elements
-- to the array, and will return in drmFormatModifierCount the
-- number of elements written.
--
-- Among the elements in array pDrmFormatModifierProperties,
-- each returned drmFormatModifier must be unique.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DrmFormatModifierPropertiesEXT, StructureType
data DrmFormatModifierPropertiesListEXT
DrmFormatModifierPropertiesListEXT :: Word32 -> Ptr DrmFormatModifierPropertiesEXT -> DrmFormatModifierPropertiesListEXT
-- | drmFormatModifierCount is an inout parameter related to the
-- number of modifiers compatible with the format, as described
-- below.
[$sel:drmFormatModifierCount:DrmFormatModifierPropertiesListEXT] :: DrmFormatModifierPropertiesListEXT -> Word32
-- | pDrmFormatModifierProperties is either NULL or an
-- array of DrmFormatModifierPropertiesEXT structures.
[$sel:drmFormatModifierProperties:DrmFormatModifierPropertiesListEXT] :: DrmFormatModifierPropertiesListEXT -> Ptr DrmFormatModifierPropertiesEXT
-- | VkDrmFormatModifierPropertiesEXT - Structure specifying properties of
-- a format when combined with a DRM format modifier
--
-- Description
--
-- The returned drmFormatModifierTilingFeatures must
-- contain at least one bit.
--
-- The implementation must not return
-- DRM_FORMAT_MOD_INVALID in drmFormatModifier.
--
-- An image’s memory planecount (as returned by
-- drmFormatModifierPlaneCount) is distinct from its format
-- planecount (in the sense of multi-planar Y′CBCR formats).
-- In ImageAspectFlags, each
-- VK_IMAGE_ASPECT_MEMORY_PLANE/i_BIT_EXT represents a
-- _memory plane/ and each VK_IMAGE_ASPECT_PLANE/i_BIT a
-- _format plane/.
--
-- An image’s set of format planes is an ordered partition of the
-- image’s content into separable groups of format channels. The
-- ordered partition is encoded in the name of each Format. For
-- example, FORMAT_G8_B8R8_2PLANE_420_UNORM contains two format
-- planes; the first plane contains the green channel and the second
-- plane contains the blue channel and red channel. If the format name
-- does not contain PLANE, then the format contains a single
-- plane; for example, FORMAT_R8G8B8A8_UNORM. Some commands, such
-- as cmdCopyBufferToImage, do not operate on all format channels
-- in the image, but instead operate only on the format planes
-- explicitly chosen by the application and operate on each format
-- plane independently.
--
-- An image’s set of memory planes is an ordered partition of the
-- image’s memory rather than the image’s content. Each
-- memory plane is a contiguous range of memory. The union of an
-- image’s memory planes is not necessarily contiguous.
--
-- If an image is linear, then the partition is the same for
-- memory planes and for /format planes/. Therefore, if the
-- returned drmFormatModifier is DRM_FORMAT_MOD_LINEAR,
-- then drmFormatModifierPlaneCount must equal the
-- format planecount, and drmFormatModifierTilingFeatures
-- must be identical to the
-- FormatProperties2::linearTilingFeatures returned in
-- the same pNext chain.
--
-- If an image is non-linear, then the partition of the image’s
-- memory into memory planes is implementation-specific and
-- may be unrelated to the partition of the image’s content
-- into format planes. For example, consider an image whose
-- format is FORMAT_G8_B8_R8_3PLANE_420_UNORM,
-- tiling is IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, whose
-- drmFormatModifier is not DRM_FORMAT_MOD_LINEAR, and
-- flags lacks IMAGE_CREATE_DISJOINT_BIT. The image has 3
-- format planes, and commands such cmdCopyBufferToImage
-- act on each format plane independently as if the data of each
-- format plane were separable from the data of the other planes.
-- In a straightforward implementation, the implementation may
-- store the image’s content in 3 adjacent memory planes where
-- each memory plane corresponds exactly to a format plane.
-- However, the implementation may also store the image’s content
-- in a single memory plane where all format channels are combined
-- using an implementation-private block-compressed format; or the
-- implementation may store the image’s content in a collection of
-- 7 adjacent memory planes using an implementation-private
-- sharding technique. Because the image is non-linear and non-disjoint,
-- the implementation has much freedom when choosing the image’s
-- placement in memory.
--
-- The memory planecount applies to function parameters and
-- structures only when the API specifies an explicit requirement on
-- drmFormatModifierPlaneCount. In all other cases, the /memory
-- planecount/ is ignored.
--
-- See Also
--
-- DrmFormatModifierPropertiesListEXT, FormatFeatureFlags
data DrmFormatModifierPropertiesEXT
DrmFormatModifierPropertiesEXT :: Word64 -> Word32 -> FormatFeatureFlags -> DrmFormatModifierPropertiesEXT
-- | drmFormatModifier is a Linux DRM format modifier.
[$sel:drmFormatModifier:DrmFormatModifierPropertiesEXT] :: DrmFormatModifierPropertiesEXT -> Word64
-- | drmFormatModifierPlaneCount is the number of memory
-- planes in any image created with format and
-- drmFormatModifier. An image’s /memory planecount is
-- distinct from its format planecount/, as explained below.
[$sel:drmFormatModifierPlaneCount:DrmFormatModifierPropertiesEXT] :: DrmFormatModifierPropertiesEXT -> Word32
-- | drmFormatModifierTilingFeatures is a bitmask of
-- FormatFeatureFlagBits that are supported by any image created
-- with format and drmFormatModifier.
[$sel:drmFormatModifierTilingFeatures:DrmFormatModifierPropertiesEXT] :: DrmFormatModifierPropertiesEXT -> FormatFeatureFlags
-- | VkPhysicalDeviceImageDrmFormatModifierInfoEXT - Structure specifying a
-- DRM format modifier as image creation parameter
--
-- Description
--
-- If the drmFormatModifier is incompatible with the parameters
-- specified in PhysicalDeviceImageFormatInfo2 and its
-- pNext chain, then
-- getPhysicalDeviceImageFormatProperties2 returns
-- ERROR_FORMAT_NOT_SUPPORTED. The implementation must
-- support the query of any drmFormatModifier, including unknown
-- and invalid modifier values.
--
-- Valid Usage
--
--
-- - If sharingMode is SHARING_MODE_CONCURRENT, then
-- pQueueFamilyIndices must be a valid pointer to an
-- array of queueFamilyIndexCount uint32_t values
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- SharingMode, StructureType
data PhysicalDeviceImageDrmFormatModifierInfoEXT
PhysicalDeviceImageDrmFormatModifierInfoEXT :: Word64 -> SharingMode -> Vector Word32 -> PhysicalDeviceImageDrmFormatModifierInfoEXT
-- | drmFormatModifier is the image’s Linux DRM format
-- modifier, corresponding to
-- ImageDrmFormatModifierExplicitCreateInfoEXT::modifier
-- or to
-- ImageDrmFormatModifierListCreateInfoEXT::pModifiers.
[$sel:drmFormatModifier:PhysicalDeviceImageDrmFormatModifierInfoEXT] :: PhysicalDeviceImageDrmFormatModifierInfoEXT -> Word64
-- | sharingMode specifies how the image will be accessed by
-- multiple queue families.
[$sel:sharingMode:PhysicalDeviceImageDrmFormatModifierInfoEXT] :: PhysicalDeviceImageDrmFormatModifierInfoEXT -> SharingMode
-- | pQueueFamilyIndices is a list of queue families that will
-- access the image (ignored if sharingMode is not
-- SHARING_MODE_CONCURRENT).
[$sel:queueFamilyIndices:PhysicalDeviceImageDrmFormatModifierInfoEXT] :: PhysicalDeviceImageDrmFormatModifierInfoEXT -> Vector Word32
-- | VkImageDrmFormatModifierListCreateInfoEXT - Specify that an image must
-- be created with a DRM format modifier from the provided list
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pDrmFormatModifiers must be a valid pointer to an
-- array of drmFormatModifierCount uint64_t values
-- - drmFormatModifierCount must be greater than
-- 0
--
--
-- See Also
--
-- StructureType
data ImageDrmFormatModifierListCreateInfoEXT
ImageDrmFormatModifierListCreateInfoEXT :: Vector Word64 -> ImageDrmFormatModifierListCreateInfoEXT
-- | pDrmFormatModifiers is a pointer to an array of /Linux DRM
-- format modifiers/.
[$sel:drmFormatModifiers:ImageDrmFormatModifierListCreateInfoEXT] :: ImageDrmFormatModifierListCreateInfoEXT -> Vector Word64
-- | VkImageDrmFormatModifierExplicitCreateInfoEXT - Specify that an image
-- be created with the provided DRM format modifier and explicit memory
-- layout
--
-- Description
--
-- The ith member of pPlaneLayouts describes the layout
-- of the image’s ith memory plane (that is,
-- VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT). In each element of
-- pPlaneLayouts, the implementation must ignore
-- size. The implementation calculates the size of each plane,
-- which the application can query with
-- getImageSubresourceLayout.
--
-- When creating an image with
-- ImageDrmFormatModifierExplicitCreateInfoEXT, it is the
-- application’s responsibility to satisfy all valid usage requirements.
-- However, the implementation must validate that the provided
-- pPlaneLayouts, when combined with the provided
-- drmFormatModifier and other creation parameters in
-- ImageCreateInfo and its pNext chain, produce a valid
-- image. (This validation is necessarily implementation-dependent and
-- outside the scope of Vulkan, and therefore not described by valid
-- usage requirements). If this validation fails, then createImage
-- returns ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If drmFormatModifierPlaneCount is not 0,
-- pPlaneLayouts must be a valid pointer to an array of
-- drmFormatModifierPlaneCount SubresourceLayout
-- structures
--
--
-- See Also
--
-- StructureType, SubresourceLayout
data ImageDrmFormatModifierExplicitCreateInfoEXT
ImageDrmFormatModifierExplicitCreateInfoEXT :: Word64 -> Vector SubresourceLayout -> ImageDrmFormatModifierExplicitCreateInfoEXT
-- | drmFormatModifier is the Linux DRM format modifier
-- with which the image will be created.
[$sel:drmFormatModifier:ImageDrmFormatModifierExplicitCreateInfoEXT] :: ImageDrmFormatModifierExplicitCreateInfoEXT -> Word64
-- | pPlaneLayouts is a pointer to an array of
-- SubresourceLayout structures describing the image’s memory
-- planes.
[$sel:planeLayouts:ImageDrmFormatModifierExplicitCreateInfoEXT] :: ImageDrmFormatModifierExplicitCreateInfoEXT -> Vector SubresourceLayout
-- | VkImageDrmFormatModifierPropertiesEXT - Properties of an image’s Linux
-- DRM format modifier
--
-- Description
--
-- If the image was created with
-- ImageDrmFormatModifierListCreateInfoEXT, then the returned
-- drmFormatModifier must belong to the list of modifiers
-- provided at time of image creation in
-- ImageDrmFormatModifierListCreateInfoEXT::pDrmFormatModifiers.
-- If the image was created with
-- ImageDrmFormatModifierExplicitCreateInfoEXT, then the returned
-- drmFormatModifier must be the modifier provided at
-- time of image creation in
-- ImageDrmFormatModifierExplicitCreateInfoEXT::drmFormatModifier.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, getImageDrmFormatModifierPropertiesEXT
data ImageDrmFormatModifierPropertiesEXT
ImageDrmFormatModifierPropertiesEXT :: Word64 -> ImageDrmFormatModifierPropertiesEXT
-- | drmFormatModifier returns the image’s Linux DRM format
-- modifier.
[$sel:drmFormatModifier:ImageDrmFormatModifierPropertiesEXT] :: ImageDrmFormatModifierPropertiesEXT -> Word64
type EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION = 1
pattern EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION :: forall a. Integral a => a
type EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME = "VK_EXT_image_drm_format_modifier"
pattern EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_image_drm_format_modifier.PhysicalDeviceImageDrmFormatModifierInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_image_drm_format_modifier.PhysicalDeviceImageDrmFormatModifierInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierListCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierListCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierExplicitCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierExplicitCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierExplicitCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierExplicitCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierExplicitCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierListCreateInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierListCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_image_drm_format_modifier.ImageDrmFormatModifierListCreateInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.PhysicalDeviceImageDrmFormatModifierInfoEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.PhysicalDeviceImageDrmFormatModifierInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_image_drm_format_modifier.PhysicalDeviceImageDrmFormatModifierInfoEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesListEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_image_drm_format_modifier.DrmFormatModifierPropertiesEXT
module Vulkan.Core10.Fence
-- | vkCreateFence - Create a new fence object
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- FenceCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pFence must be a valid pointer to a Fence
-- handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, Fence,
-- FenceCreateInfo
createFence :: forall a io. (Extendss FenceCreateInfo a, PokeChain a, MonadIO io) => Device -> FenceCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Fence
-- | A convenience wrapper to make a compatible pair of calls to
-- createFence and destroyFence
--
-- To ensure that destroyFence is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withFence :: forall a io r. (Extendss FenceCreateInfo a, PokeChain a, MonadIO io) => Device -> FenceCreateInfo a -> Maybe AllocationCallbacks -> (io Fence -> (Fence -> io ()) -> r) -> r
-- | vkDestroyFence - Destroy a fence object
--
-- Valid Usage
--
--
-- - All queue submission commands that refer to fence
-- must have completed execution
--
--
--
-- - If AllocationCallbacks were provided when fence
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when fence
-- was created, pAllocator must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If fence is not NULL_HANDLE, fence
-- must be a valid Fence handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If fence is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to fence must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device, Fence
destroyFence :: forall io. MonadIO io => Device -> Fence -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkResetFences - Resets one or more fence objects
--
-- Description
--
-- If any member of pFences currently has its payload
-- imported with temporary permanence, that fence’s prior permanent
-- payload is first restored. The remaining operations described
-- therefore operate on the restored payload.
--
-- When resetFences is executed on the host, it defines a /fence
-- unsignal operation/ for each fence, which resets the fence to the
-- unsignaled state.
--
-- If any member of pFences is already in the unsignaled state
-- when resetFences is executed, then resetFences has no
-- effect on that fence.
--
-- Valid Usage
--
--
-- - Each element of pFences must not be currently
-- associated with any queue command that has not yet completed execution
-- on that queue
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pFences must be a valid pointer to an array of
-- fenceCount valid Fence handles
-- - fenceCount must be greater than 0
-- - Each element of pFences must have been created,
-- allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to each member of pFences must be
-- externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Fence
resetFences :: forall io. MonadIO io => Device -> ("fences" ::: Vector Fence) -> io ()
-- | vkGetFenceStatus - Return the status of a fence
--
-- Description
--
-- Upon success, getFenceStatus returns the status of the fence
-- object, with the following return codes:
--
-- TODO: table
--
-- Fence Object Status Codes
--
-- If a queue submission command is pending execution, then the
-- value returned by this command may immediately be out of date.
--
-- If the device has been lost (see Lost Device),
-- getFenceStatus may return any of the above status codes.
-- If the device has been lost and getFenceStatus is called
-- repeatedly, it will eventually return either SUCCESS or
-- ERROR_DEVICE_LOST.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, Fence
getFenceStatus :: forall io. MonadIO io => Device -> Fence -> io Result
-- | vkWaitForFences - Wait for one or more fences to become signaled
--
-- Description
--
-- If the condition is satisfied when waitForFences is called,
-- then waitForFences returns immediately. If the condition is not
-- satisfied at the time waitForFences is called, then
-- waitForFences will block and wait up to timeout
-- nanoseconds for the condition to become satisfied.
--
-- If timeout is zero, then waitForFences does not wait,
-- but simply returns the current state of the fences. TIMEOUT
-- will be returned in this case if the condition is not satisfied, even
-- though no actual wait was performed.
--
-- If the specified timeout period expires before the condition is
-- satisfied, waitForFences returns TIMEOUT. If the
-- condition is satisfied before timeout nanoseconds has
-- expired, waitForFences returns SUCCESS.
--
-- If device loss occurs (see Lost Device) before the timeout has
-- expired, waitForFences must return in finite time with
-- either SUCCESS or ERROR_DEVICE_LOST.
--
-- Note
--
-- While we guarantee that waitForFences must return in
-- finite time, no guarantees are made that it returns immediately upon
-- device loss. However, the client can reasonably expect that the delay
-- will be on the order of seconds and that calling waitForFences
-- will not result in a permanently (or seemingly permanently) dead
-- process.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pFences must be a valid pointer to an array of
-- fenceCount valid Fence handles
-- - fenceCount must be greater than 0
-- - Each element of pFences must have been created,
-- allocated, or retrieved from device
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Bool32, Device, Fence
waitForFences :: forall io. MonadIO io => Device -> ("fences" ::: Vector Fence) -> ("waitAll" ::: Bool) -> ("timeout" ::: Word64) -> io Result
-- | A variant of waitForFences which makes a *safe* FFI call
waitForFencesSafe :: forall io. MonadIO io => Device -> ("fences" ::: Vector Fence) -> ("waitAll" ::: Bool) -> ("timeout" ::: Word64) -> io Result
-- | VkFenceCreateInfo - Structure specifying parameters of a newly created
-- fence
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- FenceCreateFlags, StructureType, createFence
data FenceCreateInfo (es :: [Type])
FenceCreateInfo :: Chain es -> FenceCreateFlags -> FenceCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:FenceCreateInfo] :: FenceCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of FenceCreateFlagBits specifying
-- the initial state and behavior of the fence.
[$sel:flags:FenceCreateInfo] :: FenceCreateInfo (es :: [Type]) -> FenceCreateFlags
-- | VkFence - Opaque handle to a fence object
--
-- See Also
--
-- AcquireNextImageInfoKHR, FenceGetFdInfoKHR,
-- FenceGetWin32HandleInfoKHR, ImportFenceFdInfoKHR,
-- ImportFenceWin32HandleInfoKHR, acquireNextImageKHR,
-- createFence, destroyFence, getFenceStatus,
-- queueBindSparse, queueSubmit,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- resetFences, waitForFences
newtype Fence
Fence :: Word64 -> Fence
-- | VkFenceCreateFlagBits - Bitmask specifying initial state and behavior
-- of a fence
--
-- See Also
--
-- FenceCreateFlags
newtype FenceCreateFlagBits
FenceCreateFlagBits :: Flags -> FenceCreateFlagBits
-- | FENCE_CREATE_SIGNALED_BIT specifies that the fence object is
-- created in the signaled state. Otherwise, it is created in the
-- unsignaled state.
pattern FENCE_CREATE_SIGNALED_BIT :: FenceCreateFlagBits
type FenceCreateFlags = FenceCreateFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Fence.FenceCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Fence.FenceCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Fence.FenceCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Fence.FenceCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Fence.FenceCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Fence.FenceCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Fence.FenceCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Fence.FenceCreateInfo es)
module Vulkan.Core10.DeviceInitialization
-- | vkCreateInstance - Create a new Vulkan instance
--
-- Description
--
-- createInstance verifies that the requested layers exist. If
-- not, createInstance will return ERROR_LAYER_NOT_PRESENT.
-- Next createInstance verifies that the requested extensions are
-- supported (e.g. in the implementation or in any enabled instance
-- layer) and if any requested extension is not supported,
-- createInstance must return
-- ERROR_EXTENSION_NOT_PRESENT. After verifying and enabling the
-- instance layers and extensions the Instance object is created
-- and returned to the application. If a requested extension is only
-- supported by a layer, both the layer and the extension need to be
-- specified at createInstance time for the creation to succeed.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pInstance must be a valid pointer to a
-- Instance handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Instance, InstanceCreateInfo
createInstance :: forall a io. (Extendss InstanceCreateInfo a, PokeChain a, MonadIO io) => InstanceCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Instance
-- | A convenience wrapper to make a compatible pair of calls to
-- createInstance and destroyInstance
--
-- To ensure that destroyInstance is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withInstance :: forall a io r. (Extendss InstanceCreateInfo a, PokeChain a, MonadIO io) => InstanceCreateInfo a -> Maybe AllocationCallbacks -> (io Instance -> (Instance -> io ()) -> r) -> r
-- | vkDestroyInstance - Destroy an instance of Vulkan
--
-- Valid Usage
--
--
-- - All child objects created using instance must have
-- been destroyed prior to destroying instance
--
--
--
-- - If AllocationCallbacks were provided when instance
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when
-- instance was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - If instance is not NULL, instance
-- must be a valid Instance handle
--
--
--
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
--
--
-- Host Synchronization
--
--
-- - Host access to instance must be externally
-- synchronized
--
--
--
-- - Host access to all PhysicalDevice objects enumerated from
-- instance must be externally synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Instance
destroyInstance :: forall io. MonadIO io => Instance -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkEnumeratePhysicalDevices - Enumerates the physical devices
-- accessible to a Vulkan instance
--
-- Description
--
-- If pPhysicalDevices is NULL, then the number of
-- physical devices available is returned in
-- pPhysicalDeviceCount. Otherwise,
-- pPhysicalDeviceCount must point to a variable set by
-- the user to the number of elements in the pPhysicalDevices
-- array, and on return the variable is overwritten with the number of
-- handles actually written to pPhysicalDevices. If
-- pPhysicalDeviceCount is less than the number of physical
-- devices available, at most pPhysicalDeviceCount structures
-- will be written. If pPhysicalDeviceCount is smaller than the
-- number of physical devices available, INCOMPLETE will be
-- returned instead of SUCCESS, to indicate that not all the
-- available physical devices were returned.
--
-- Valid Usage (Implicit)
--
--
-- - instance must be a valid Instance
-- handle
--
--
--
-- - pPhysicalDeviceCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPhysicalDeviceCount is not
-- 0, and pPhysicalDevices is not NULL,
-- pPhysicalDevices must be a valid pointer to an array
-- of pPhysicalDeviceCount PhysicalDevice handles
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Instance, PhysicalDevice
enumeratePhysicalDevices :: forall io. MonadIO io => Instance -> io (Result, "physicalDevices" ::: Vector PhysicalDevice)
-- | vkGetDeviceProcAddr - Return a function pointer for a command
--
-- Parameters
--
-- The table below defines the various use cases for
-- getDeviceProcAddr and expected return value for each case.
--
-- Description
--
-- The returned function pointer is of type PFN_vkVoidFunction,
-- and must be cast to the type of the command being queried
-- before use. The function pointer must only be called with a
-- dispatchable object (the first parameter) that is device or a
-- child of device.
--
-- TODO: table
--
-- getDeviceProcAddr behavior
--
--
-- - 1 "*" means any representable value for the parameter
-- (including valid values, invalid values, and NULL).
-- - 2 The returned function pointer must only be called
-- with a dispatchable object (the first parameter) that is
-- device or a child of device e.g. Device,
-- Queue, or CommandBuffer.
--
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PFN_vkVoidFunction, Device
getDeviceProcAddr :: forall io. MonadIO io => Device -> ("name" ::: ByteString) -> io PFN_vkVoidFunction
-- | vkGetInstanceProcAddr - Return a function pointer for a command
--
-- Description
--
-- getInstanceProcAddr itself is obtained in a platform- and
-- loader- specific manner. Typically, the loader library will export
-- this command as a function symbol, so applications can link
-- against the loader library, or load it dynamically and look up the
-- symbol using platform-specific APIs.
--
-- The table below defines the various use cases for
-- getInstanceProcAddr and expected return value (“fp” is
-- “function pointer”) for each case.
--
-- The returned function pointer is of type PFN_vkVoidFunction,
-- and must be cast to the type of the command being queried
-- before use.
--
-- TODO: table
--
-- getInstanceProcAddr behavior
--
--
-- - 1 "*" means any representable value for the parameter
-- (including valid values, invalid values, and NULL).
-- - 2 The returned function pointer must only be called
-- with a dispatchable object (the first parameter) that is
-- instance or a child of instance, e.g.
-- Instance, PhysicalDevice, Device, Queue,
-- or CommandBuffer.
-- - 3 An “available device extension” is a device extension
-- supported by any physical device enumerated by instance.
-- - 4 Starting with Vulkan 1.2, getInstanceProcAddr can
-- resolve itself with a NULL instance pointer.
--
--
-- Valid Usage (Implicit)
--
--
-- - If instance is not NULL, instance
-- must be a valid Instance handle
--
--
--
-- - pName must be a null-terminated UTF-8 string
--
--
-- See Also
--
-- PFN_vkVoidFunction, Instance
getInstanceProcAddr :: forall io. MonadIO io => Instance -> ("name" ::: ByteString) -> io PFN_vkVoidFunction
-- | vkGetPhysicalDeviceProperties - Returns properties of a physical
-- device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceProperties
getPhysicalDeviceProperties :: forall io. MonadIO io => PhysicalDevice -> io PhysicalDeviceProperties
-- | vkGetPhysicalDeviceQueueFamilyProperties - Reports properties of the
-- queues of the specified physical device
--
-- Description
--
-- If pQueueFamilyProperties is NULL, then the number
-- of queue families available is returned in
-- pQueueFamilyPropertyCount. Implementations must
-- support at least one queue family. Otherwise,
-- pQueueFamilyPropertyCount must point to a variable set
-- by the user to the number of elements in the
-- pQueueFamilyProperties array, and on return the variable is
-- overwritten with the number of structures actually written to
-- pQueueFamilyProperties. If pQueueFamilyPropertyCount
-- is less than the number of queue families available, at most
-- pQueueFamilyPropertyCount structures will be written.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pQueueFamilyPropertyCount must be a valid pointer
-- to a uint32_t value
-- - If the value referenced by pQueueFamilyPropertyCount is
-- not 0, and pQueueFamilyProperties is not
-- NULL, pQueueFamilyProperties must be a valid
-- pointer to an array of pQueueFamilyPropertyCount
-- QueueFamilyProperties structures
--
--
-- See Also
--
-- PhysicalDevice, QueueFamilyProperties
getPhysicalDeviceQueueFamilyProperties :: forall io. MonadIO io => PhysicalDevice -> io ("queueFamilyProperties" ::: Vector QueueFamilyProperties)
-- | vkGetPhysicalDeviceMemoryProperties - Reports memory information for
-- the specified physical device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceMemoryProperties
getPhysicalDeviceMemoryProperties :: forall io. MonadIO io => PhysicalDevice -> io PhysicalDeviceMemoryProperties
-- | vkGetPhysicalDeviceFeatures - Reports capabilities of a physical
-- device
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceFeatures
getPhysicalDeviceFeatures :: forall io. MonadIO io => PhysicalDevice -> io PhysicalDeviceFeatures
-- | vkGetPhysicalDeviceFormatProperties - Lists physical device’s format
-- capabilities
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Format, FormatProperties, PhysicalDevice
getPhysicalDeviceFormatProperties :: forall io. MonadIO io => PhysicalDevice -> Format -> io FormatProperties
-- | vkGetPhysicalDeviceImageFormatProperties - Lists physical device’s
-- image format capabilities
--
-- Description
--
-- The format, type, tiling, usage,
-- and flags parameters correspond to parameters that would be
-- consumed by createImage (as members of ImageCreateInfo).
--
-- If format is not a supported image format, or if the
-- combination of format, type, tiling,
-- usage, and flags is not supported for images, then
-- getPhysicalDeviceImageFormatProperties returns
-- ERROR_FORMAT_NOT_SUPPORTED.
--
-- The limitations on an image format that are reported by
-- getPhysicalDeviceImageFormatProperties have the following
-- property: if usage1 and usage2 of type
-- ImageUsageFlags are such that the bits set in usage1
-- are a subset of the bits set in usage2, and flags1
-- and flags2 of type ImageCreateFlags are such that the
-- bits set in flags1 are a subset of the bits set in
-- flags2, then the limitations for usage1 and
-- flags1 must be no more strict than the limitations for
-- usage2 and flags2, for all values of
-- format, type, and tiling.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Format, ImageCreateFlags, ImageFormatProperties,
-- ImageTiling, ImageType, ImageUsageFlags,
-- PhysicalDevice
getPhysicalDeviceImageFormatProperties :: forall io. MonadIO io => PhysicalDevice -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> io ImageFormatProperties
-- | VkPhysicalDeviceProperties - Structure specifying physical device
-- properties
--
-- Description
--
-- Note
--
-- The value of apiVersion may be different than the
-- version returned by enumerateInstanceVersion; either higher or
-- lower. In such cases, the application must not use
-- functionality that exceeds the version of Vulkan associated with a
-- given object. The pApiVersion parameter returned by
-- enumerateInstanceVersion is the version associated with a
-- Instance and its children, except for a PhysicalDevice
-- and its children. PhysicalDeviceProperties::apiVersion
-- is the version associated with a PhysicalDevice and its
-- children.
--
-- The vendorID and deviceID fields are provided to
-- allow applications to adapt to device characteristics that are not
-- adequately exposed by other Vulkan queries.
--
-- Note
--
-- These may include performance profiles, hardware errata, or
-- other characteristics.
--
-- The vendor identified by vendorID is the entity
-- responsible for the most salient characteristics of the underlying
-- implementation of the PhysicalDevice being queried.
--
-- Note
--
-- For example, in the case of a discrete GPU implementation, this
-- should be the GPU chipset vendor. In the case of a hardware
-- accelerator integrated into a system-on-chip (SoC), this should
-- be the supplier of the silicon IP used to create the accelerator.
--
-- If the vendor has a PCI vendor ID, the low 16 bits of
-- vendorID must contain that PCI vendor ID, and the
-- remaining bits must be set to zero. Otherwise, the value
-- returned must be a valid Khronos vendor ID, obtained as
-- described in the Vulkan Documentation and Extensions: Procedures
-- and Conventions document in the section “Registering a Vendor ID
-- with Khronos”. Khronos vendor IDs are allocated starting at 0x10000,
-- to distinguish them from the PCI vendor ID namespace. Khronos vendor
-- IDs are symbolically defined in the VendorId type.
--
-- The vendor is also responsible for the value returned in
-- deviceID. If the implementation is driven primarily by a
-- PCI device with a PCI device ID, the low 16 bits of
-- deviceID must contain that PCI device ID, and the
-- remaining bits must be set to zero. Otherwise, the choice of
-- what values to return may be dictated by operating system or
-- platform policies - but should uniquely identify both the
-- device version and any major configuration options (for example, core
-- count in the case of multicore devices).
--
-- Note
--
-- The same device ID should be used for all physical
-- implementations of that device version and configuration. For example,
-- all uses of a specific silicon IP GPU version and configuration
-- should use the same device ID, even if those uses occur in
-- different SoCs.
--
-- See Also
--
-- PhysicalDeviceLimits, PhysicalDeviceProperties2,
-- PhysicalDeviceSparseProperties, PhysicalDeviceType,
-- getPhysicalDeviceProperties
data PhysicalDeviceProperties
PhysicalDeviceProperties :: Word32 -> Word32 -> Word32 -> Word32 -> PhysicalDeviceType -> ByteString -> ByteString -> PhysicalDeviceLimits -> PhysicalDeviceSparseProperties -> PhysicalDeviceProperties
-- | apiVersion is the version of Vulkan supported by the device,
-- encoded as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-coreversions-versionnumbers.
[$sel:apiVersion:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> Word32
-- | driverVersion is the vendor-specified version of the driver.
[$sel:driverVersion:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> Word32
-- | vendorID is a unique identifier for the vendor (see
-- below) of the physical device.
[$sel:vendorID:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> Word32
-- | deviceID is a unique identifier for the physical device among
-- devices available from the vendor.
[$sel:deviceID:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> Word32
-- | deviceType is a PhysicalDeviceType specifying the type
-- of device.
[$sel:deviceType:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> PhysicalDeviceType
-- | deviceName is an array of
-- MAX_PHYSICAL_DEVICE_NAME_SIZE char containing a
-- null-terminated UTF-8 string which is the name of the device.
[$sel:deviceName:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> ByteString
-- | pipelineCacheUUID is an array of UUID_SIZE
-- uint8_t values representing a universally unique identifier
-- for the device.
[$sel:pipelineCacheUUID:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> ByteString
-- | limits is the PhysicalDeviceLimits structure
-- specifying device-specific limits of the physical device. See
-- Limits for details.
[$sel:limits:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> PhysicalDeviceLimits
-- | sparseProperties is the PhysicalDeviceSparseProperties
-- structure specifying various sparse related properties of the physical
-- device. See Sparse Properties for details.
[$sel:sparseProperties:PhysicalDeviceProperties] :: PhysicalDeviceProperties -> PhysicalDeviceSparseProperties
-- | VkApplicationInfo - Structure specifying application info
--
-- Description
--
-- Vulkan 1.0 implementations were required to return
-- ERROR_INCOMPATIBLE_DRIVER if apiVersion was larger
-- than 1.0. Implementations that support Vulkan 1.1 or later must
-- not return ERROR_INCOMPATIBLE_DRIVER for any value of
-- apiVersion.
--
-- Note
--
-- Because Vulkan 1.0 implementations may fail with
-- ERROR_INCOMPATIBLE_DRIVER, applications should determine
-- the version of Vulkan available before calling createInstance.
-- If the getInstanceProcAddr returns NULL for
-- enumerateInstanceVersion, it is a Vulkan 1.0 implementation.
-- Otherwise, the application can call
-- enumerateInstanceVersion to determine the version of Vulkan.
--
-- As long as the instance supports at least Vulkan 1.1, an application
-- can use different versions of Vulkan with an instance than it
-- does with a device or physical device.
--
-- Note
--
-- The Khronos validation layers will treat apiVersion as the
-- highest API version the application targets, and will validate API
-- usage against the minimum of that version and the implementation
-- version (instance or device, depending on context). If an application
-- tries to use functionality from a greater version than this, a
-- validation error will be triggered.
--
-- For example, if the instance supports Vulkan 1.1 and three physical
-- devices support Vulkan 1.0, Vulkan 1.1, and Vulkan 1.2, respectively,
-- and if the application sets apiVersion to 1.2, the
-- application can use the following versions of Vulkan:
--
--
-- - Vulkan 1.0 can be used with the instance and with all
-- physical devices.
-- - Vulkan 1.1 can be used with the instance and with the
-- physical devices that support Vulkan 1.1 and Vulkan 1.2.
-- - Vulkan 1.2 can be used with the physical device that
-- supports Vulkan 1.2.
--
--
-- If we modify the above example so that the application sets
-- apiVersion to 1.1, then the application must not use
-- Vulkan 1.2 functionality on the physical device that supports Vulkan
-- 1.2.
--
-- Implicit layers must be disabled if they do not support a
-- version at least as high as apiVersion. See the Vulkan
-- Loader Specification and Architecture Overview document for
-- additional information.
--
-- Note
--
-- Providing a NULL
-- InstanceCreateInfo::pApplicationInfo or providing an
-- apiVersion of 0 is equivalent to providing an
-- apiVersion of VK_MAKE_VERSION(1,0,0).
--
-- Valid Usage
--
--
-- - If apiVersion is not 0, then it must be
-- greater or equal to API_VERSION_1_0
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - If pApplicationName is not NULL,
-- pApplicationName must be a null-terminated UTF-8
-- string
-- - If pEngineName is not NULL, pEngineName
-- must be a null-terminated UTF-8 string
--
--
-- See Also
--
-- InstanceCreateInfo, StructureType
data ApplicationInfo
ApplicationInfo :: Maybe ByteString -> Word32 -> Maybe ByteString -> Word32 -> Word32 -> ApplicationInfo
-- | pApplicationName is NULL or is a pointer to a
-- null-terminated UTF-8 string containing the name of the application.
[$sel:applicationName:ApplicationInfo] :: ApplicationInfo -> Maybe ByteString
-- | applicationVersion is an unsigned integer variable containing
-- the developer-supplied version number of the application.
[$sel:applicationVersion:ApplicationInfo] :: ApplicationInfo -> Word32
-- | pEngineName is NULL or is a pointer to a
-- null-terminated UTF-8 string containing the name of the engine (if
-- any) used to create the application.
[$sel:engineName:ApplicationInfo] :: ApplicationInfo -> Maybe ByteString
-- | engineVersion is an unsigned integer variable containing the
-- developer-supplied version number of the engine used to create the
-- application.
[$sel:engineVersion:ApplicationInfo] :: ApplicationInfo -> Word32
-- | apiVersion must be the highest version of Vulkan that
-- the application is designed to use, encoded as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-coreversions-versionnumbers.
-- The patch version number specified in apiVersion is ignored
-- when creating an instance object. Only the major and minor versions of
-- the instance must match those requested in apiVersion.
[$sel:apiVersion:ApplicationInfo] :: ApplicationInfo -> Word32
-- | VkInstanceCreateInfo - Structure specifying parameters of a newly
-- created instance
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- DebugReportCallbackCreateInfoEXT,
-- DebugUtilsMessengerCreateInfoEXT, ValidationFeaturesEXT,
-- or ValidationFlagsEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be 0
-- - If pApplicationInfo is not NULL,
-- pApplicationInfo must be a valid pointer to a valid
-- ApplicationInfo structure
-- - If enabledLayerCount is not 0,
-- ppEnabledLayerNames must be a valid pointer to an
-- array of enabledLayerCount null-terminated UTF-8 strings
-- - If enabledExtensionCount is not 0,
-- ppEnabledExtensionNames must be a valid pointer to an
-- array of enabledExtensionCount null-terminated UTF-8
-- strings
--
--
-- See Also
--
-- ApplicationInfo, InstanceCreateFlags,
-- StructureType, createInstance
data InstanceCreateInfo (es :: [Type])
InstanceCreateInfo :: Chain es -> InstanceCreateFlags -> Maybe ApplicationInfo -> Vector ByteString -> Vector ByteString -> InstanceCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:InstanceCreateInfo] :: InstanceCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:InstanceCreateInfo] :: InstanceCreateInfo (es :: [Type]) -> InstanceCreateFlags
-- | pApplicationInfo is NULL or a pointer to a
-- ApplicationInfo structure. If not NULL, this
-- information helps implementations recognize behavior inherent to
-- classes of applications. ApplicationInfo is defined in detail
-- below.
[$sel:applicationInfo:InstanceCreateInfo] :: InstanceCreateInfo (es :: [Type]) -> Maybe ApplicationInfo
-- | ppEnabledLayerNames is a pointer to an array of
-- enabledLayerCount null-terminated UTF-8 strings containing
-- the names of layers to enable for the created instance. The layers are
-- loaded in the order they are listed in this array, with the first
-- array element being the closest to the application, and the last array
-- element being the closest to the driver. See the
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-layers
-- section for further details.
[$sel:enabledLayerNames:InstanceCreateInfo] :: InstanceCreateInfo (es :: [Type]) -> Vector ByteString
-- | ppEnabledExtensionNames is a pointer to an array of
-- enabledExtensionCount null-terminated UTF-8 strings
-- containing the names of extensions to enable.
[$sel:enabledExtensionNames:InstanceCreateInfo] :: InstanceCreateInfo (es :: [Type]) -> Vector ByteString
-- | VkQueueFamilyProperties - Structure providing information about a
-- queue family
--
-- Description
--
-- The value returned in minImageTransferGranularity has a unit
-- of compressed texel blocks for images having a block-compressed
-- format, and a unit of texels otherwise.
--
-- Possible values of minImageTransferGranularity are:
--
--
-- - (0,0,0) which indicates that only whole mip levels must be
-- transferred using the image transfer operations on the corresponding
-- queues. In this case, the following restrictions apply to all offset
-- and extent parameters of image transfer operations:
- The
-- x, y, and z members of a Offset3D
-- parameter must always be zero.
- The width,
-- height, and depth members of a Extent3D
-- parameter must always match the width, height, and depth of the
-- image subresource corresponding to the parameter,
-- respectively.
-- - (Ax, Ay, Az) where Ax, Ay, and Az are all integer powers of two.
-- In this case the following restrictions apply to all image transfer
-- operations:
- x, y, and z of a
-- Offset3D parameter must be integer multiples of Ax, Ay,
-- and Az, respectively.
- width of a Extent3D
-- parameter must be an integer multiple of Ax, or else x
-- + width must equal the width of the image subresource
-- corresponding to the parameter.
- height of a
-- Extent3D parameter must be an integer multiple of Ay, or
-- else y + height must equal the height of the
-- image subresource corresponding to the
-- parameter.
- depth of a Extent3D parameter
-- must be an integer multiple of Az, or else z +
-- depth must equal the depth of the image subresource
-- corresponding to the parameter.
- If the format of the image
-- corresponding to the parameters is one of the block-compressed formats
-- then for the purposes of the above calculations the granularity
-- must be scaled up by the compressed texel block
-- dimensions.
--
--
-- Queues supporting graphics and/or compute operations must
-- report (1,1,1) in minImageTransferGranularity, meaning that
-- there are no additional restrictions on the granularity of image
-- transfer operations for these queues. Other queues supporting image
-- transfer operations are only required to support whole mip
-- level transfers, thus minImageTransferGranularity for queues
-- belonging to such queue families may be (0,0,0).
--
-- The Device Memory section describes memory properties queried
-- from the physical device.
--
-- For physical device feature queries see the Features chapter.
--
-- See Also
--
-- Extent3D, QueueFamilyProperties2, QueueFlags,
-- getPhysicalDeviceQueueFamilyProperties
data QueueFamilyProperties
QueueFamilyProperties :: QueueFlags -> Word32 -> Word32 -> Extent3D -> QueueFamilyProperties
-- | queueFlags is a bitmask of QueueFlagBits indicating
-- capabilities of the queues in this queue family.
[$sel:queueFlags:QueueFamilyProperties] :: QueueFamilyProperties -> QueueFlags
-- | queueCount is the unsigned integer count of queues in this
-- queue family. Each queue family must support at least one
-- queue.
[$sel:queueCount:QueueFamilyProperties] :: QueueFamilyProperties -> Word32
-- | timestampValidBits is the unsigned integer count of
-- meaningful bits in the timestamps written via
-- cmdWriteTimestamp. The valid range for the count is 36..64
-- bits, or a value of 0, indicating no support for timestamps. Bits
-- outside the valid range are guaranteed to be zeros.
[$sel:timestampValidBits:QueueFamilyProperties] :: QueueFamilyProperties -> Word32
-- | minImageTransferGranularity is the minimum granularity
-- supported for image transfer operations on the queues in this queue
-- family.
[$sel:minImageTransferGranularity:QueueFamilyProperties] :: QueueFamilyProperties -> Extent3D
-- | VkPhysicalDeviceMemoryProperties - Structure specifying physical
-- device memory properties
--
-- Description
--
-- The PhysicalDeviceMemoryProperties structure describes a number
-- of memory heaps as well as a number of memory types that
-- can be used to access memory allocated in those heaps. Each
-- heap describes a memory resource of a particular size, and each memory
-- type describes a set of memory properties (e.g. host cached vs
-- uncached) that can be used with a given memory heap.
-- Allocations using a particular memory type will consume resources from
-- the heap indicated by that memory type’s heap index. More than one
-- memory type may share each heap, and the heaps and memory types
-- provide a mechanism to advertise an accurate size of the physical
-- memory resources while allowing the memory to be used with a variety
-- of different properties.
--
-- The number of memory heaps is given by memoryHeapCount and is
-- less than or equal to MAX_MEMORY_HEAPS. Each heap is described
-- by an element of the memoryHeaps array as a MemoryHeap
-- structure. The number of memory types available across all memory
-- heaps is given by memoryTypeCount and is less than or equal
-- to MAX_MEMORY_TYPES. Each memory type is described by an
-- element of the memoryTypes array as a MemoryType
-- structure.
--
-- At least one heap must include
-- MEMORY_HEAP_DEVICE_LOCAL_BIT in
-- MemoryHeap::flags. If there are multiple heaps that
-- all have similar performance characteristics, they may all
-- include MEMORY_HEAP_DEVICE_LOCAL_BIT. In a unified memory
-- architecture (UMA) system there is often only a single memory heap
-- which is considered to be equally “local” to the host and to the
-- device, and such an implementation must advertise the heap as
-- device-local.
--
-- Each memory type returned by getPhysicalDeviceMemoryProperties
-- must have its propertyFlags set to one of the
-- following values:
--
--
--
-- There must be at least one memory type with both the
-- MEMORY_PROPERTY_HOST_VISIBLE_BIT and
-- MEMORY_PROPERTY_HOST_COHERENT_BIT bits set in its
-- propertyFlags. There must be at least one memory type
-- with the MEMORY_PROPERTY_DEVICE_LOCAL_BIT bit set in its
-- propertyFlags. If the deviceCoherentMemory feature is
-- enabled, there must be at least one memory type with the
-- MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD bit set in its
-- propertyFlags.
--
-- For each pair of elements X and Y returned in
-- memoryTypes, X must be placed at a lower index
-- position than Y if:
--
--
-- - the set of bit flags returned in the propertyFlags member
-- of X is a strict subset of the set of bit flags returned in the
-- propertyFlags member of Y; or
-- - the propertyFlags members of X and Y are
-- equal, and X belongs to a memory heap with greater performance
-- (as determined in an implementation-specific manner) ; or
-- - the propertyFlags members of Y includes
-- MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD or
-- MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD and X does
-- not
--
--
-- Note
--
-- There is no ordering requirement between X and Y
-- elements for the case their propertyFlags members are not in
-- a subset relation. That potentially allows more than one possible way
-- to order the same set of memory types. Notice that the list of all
-- allowed memory property flag combinations is written in a valid
-- order. But if instead MEMORY_PROPERTY_DEVICE_LOCAL_BIT was
-- before MEMORY_PROPERTY_HOST_VISIBLE_BIT |
-- MEMORY_PROPERTY_HOST_COHERENT_BIT, the list would still be in a
-- valid order.
--
-- There may be a performance penalty for using device coherent or
-- uncached device memory types, and using these accidentally is
-- undesirable. In order to avoid this, memory types with these
-- properties always appear at the end of the list; but are subject to
-- the same rules otherwise.
--
-- This ordering requirement enables applications to use a simple search
-- loop to select the desired memory type along the lines of:
--
--
-- // Find a memory in `memoryTypeBitsRequirement` that includes all of `requiredProperties`
-- int32_t findProperties(const VkPhysicalDeviceMemoryProperties* pMemoryProperties,
-- uint32_t memoryTypeBitsRequirement,
-- VkMemoryPropertyFlags requiredProperties) {
-- const uint32_t memoryCount = pMemoryProperties->memoryTypeCount;
-- for (uint32_t memoryIndex = 0; memoryIndex < memoryCount; ++memoryIndex) {
-- const uint32_t memoryTypeBits = (1 << memoryIndex);
-- const bool isRequiredMemoryType = memoryTypeBitsRequirement & memoryTypeBits;
--
-- const VkMemoryPropertyFlags properties =
-- pMemoryProperties->memoryTypes[memoryIndex].propertyFlags;
-- const bool hasRequiredProperties =
-- (properties & requiredProperties) == requiredProperties;
--
-- if (isRequiredMemoryType && hasRequiredProperties)
-- return static_cast<int32_t>(memoryIndex);
-- }
--
-- // failed to find memory type
-- return -1;
-- }
--
-- // Try to find an optimal memory type, or if it does not exist try fallback memory type
-- // `device` is the VkDevice
-- // `image` is the VkImage that requires memory to be bound
-- // `memoryProperties` properties as returned by vkGetPhysicalDeviceMemoryProperties
-- // `requiredProperties` are the property flags that must be present
-- // `optimalProperties` are the property flags that are preferred by the application
-- VkMemoryRequirements memoryRequirements;
-- vkGetImageMemoryRequirements(device, image, &memoryRequirements);
-- int32_t memoryType =
-- findProperties(&memoryProperties, memoryRequirements.memoryTypeBits, optimalProperties);
-- if (memoryType == -1) // not found; try fallback properties
-- memoryType =
-- findProperties(&memoryProperties, memoryRequirements.memoryTypeBits, requiredProperties);
--
--
-- See Also
--
-- MemoryHeap, MemoryType,
-- PhysicalDeviceMemoryProperties2,
-- getPhysicalDeviceMemoryProperties
data PhysicalDeviceMemoryProperties
PhysicalDeviceMemoryProperties :: Word32 -> Vector MemoryType -> Word32 -> Vector MemoryHeap -> PhysicalDeviceMemoryProperties
-- | memoryTypeCount is the number of valid elements in the
-- memoryTypes array.
[$sel:memoryTypeCount:PhysicalDeviceMemoryProperties] :: PhysicalDeviceMemoryProperties -> Word32
-- | memoryTypes is an array of MAX_MEMORY_TYPES
-- MemoryType structures describing the memory types that
-- can be used to access memory allocated from the heaps specified
-- by memoryHeaps.
[$sel:memoryTypes:PhysicalDeviceMemoryProperties] :: PhysicalDeviceMemoryProperties -> Vector MemoryType
-- | memoryHeapCount is the number of valid elements in the
-- memoryHeaps array.
[$sel:memoryHeapCount:PhysicalDeviceMemoryProperties] :: PhysicalDeviceMemoryProperties -> Word32
-- | memoryHeaps is an array of MAX_MEMORY_HEAPS
-- MemoryHeap structures describing the memory heaps from
-- which memory can be allocated.
[$sel:memoryHeaps:PhysicalDeviceMemoryProperties] :: PhysicalDeviceMemoryProperties -> Vector MemoryHeap
-- | VkMemoryType - Structure specifying memory type
--
-- See Also
--
-- MemoryPropertyFlags, PhysicalDeviceMemoryProperties
data MemoryType
MemoryType :: MemoryPropertyFlags -> Word32 -> MemoryType
-- | propertyFlags is a bitmask of MemoryPropertyFlagBits
-- of properties for this memory type.
[$sel:propertyFlags:MemoryType] :: MemoryType -> MemoryPropertyFlags
-- | heapIndex describes which memory heap this memory type
-- corresponds to, and must be less than memoryHeapCount
-- from the PhysicalDeviceMemoryProperties structure.
[$sel:heapIndex:MemoryType] :: MemoryType -> Word32
-- | VkMemoryHeap - Structure specifying a memory heap
--
-- See Also
--
-- DeviceSize, MemoryHeapFlags,
-- PhysicalDeviceMemoryProperties
data MemoryHeap
MemoryHeap :: DeviceSize -> MemoryHeapFlags -> MemoryHeap
-- | size is the total memory size in bytes in the heap.
[$sel:size:MemoryHeap] :: MemoryHeap -> DeviceSize
-- | flags is a bitmask of MemoryHeapFlagBits specifying
-- attribute flags for the heap.
[$sel:flags:MemoryHeap] :: MemoryHeap -> MemoryHeapFlags
-- | VkFormatProperties - Structure specifying image format properties
--
-- Description
--
-- Note
--
-- If no format feature flags are supported, the format itself is not
-- supported, and images of that format cannot be created.
--
-- If format is a block-compressed format, then
-- bufferFeatures must not support any features for the
-- format.
--
-- If format is not a multi-plane format then
-- linearTilingFeatures and optimalTilingFeatures
-- must not contain FORMAT_FEATURE_DISJOINT_BIT.
--
-- See Also
--
-- FormatFeatureFlags, FormatProperties2,
-- getPhysicalDeviceFormatProperties
data FormatProperties
FormatProperties :: FormatFeatureFlags -> FormatFeatureFlags -> FormatFeatureFlags -> FormatProperties
-- | linearTilingFeatures is a bitmask of
-- FormatFeatureFlagBits specifying features supported by images
-- created with a tiling parameter of
-- IMAGE_TILING_LINEAR.
[$sel:linearTilingFeatures:FormatProperties] :: FormatProperties -> FormatFeatureFlags
-- | optimalTilingFeatures is a bitmask of
-- FormatFeatureFlagBits specifying features supported by images
-- created with a tiling parameter of
-- IMAGE_TILING_OPTIMAL.
[$sel:optimalTilingFeatures:FormatProperties] :: FormatProperties -> FormatFeatureFlags
-- | bufferFeatures is a bitmask of FormatFeatureFlagBits
-- specifying features supported by buffers.
[$sel:bufferFeatures:FormatProperties] :: FormatProperties -> FormatFeatureFlags
-- | VkImageFormatProperties - Structure specifying an image format
-- properties
--
-- Members
--
--
-- - maxExtent are the maximum image dimensions. See the
-- Allowed Extent Values section below for how these values are
-- constrained by type.
--
--
--
-- - maxMipLevels is the maximum number of mipmap levels.
-- maxMipLevels must be equal to the number of levels in
-- the complete mipmap chain based on the maxExtent.width,
-- maxExtent.height, and maxExtent.depth, except when
-- one of the following conditions is true, in which case it may
-- instead be
-- 1:
-- - maxArrayLayers is the maximum number of array layers.
-- maxArrayLayers must be no less than
-- PhysicalDeviceLimits::maxImageArrayLayers, except when
-- one of the following conditions is true, in which case it may
-- instead be 1:
-- - If tiling is IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT,
-- then maxArrayLayers must not be 0.
-- - sampleCounts is a bitmask of SampleCountFlagBits
-- specifying all the supported sample counts for this image as described
-- below.
-- - maxResourceSize is an upper bound on the total image size
-- in bytes, inclusive of all image subresources. Implementations
-- may have an address space limit on total size of a resource,
-- which is advertised by this property. maxResourceSize
-- must be at least 231.
--
--
-- Description
--
-- Note
--
-- There is no mechanism to query the size of an image before creating
-- it, to compare that size against maxResourceSize. If an
-- application attempts to create an image that exceeds this limit, the
-- creation will fail and createImage will return
-- ERROR_OUT_OF_DEVICE_MEMORY. While the advertised limit
-- must be at least 231, it may not be possible to create
-- an image that approaches that size, particularly for
-- IMAGE_TYPE_1D.
--
-- If the combination of parameters to
-- getPhysicalDeviceImageFormatProperties is not supported by the
-- implementation for use in createImage, then all members of
-- ImageFormatProperties will be filled with zero.
--
-- Note
--
-- Filling ImageFormatProperties with zero for unsupported formats
-- is an exception to the usual rule that output structures have
-- undefined contents on error. This exception was unintentional, but is
-- preserved for backwards compatibility.
--
-- See Also
--
-- DeviceSize, Extent3D,
-- ExternalImageFormatPropertiesNV, ImageFormatProperties2,
-- SampleCountFlags, getPhysicalDeviceImageFormatProperties
data ImageFormatProperties
ImageFormatProperties :: Extent3D -> Word32 -> Word32 -> SampleCountFlags -> DeviceSize -> ImageFormatProperties
[$sel:maxExtent:ImageFormatProperties] :: ImageFormatProperties -> Extent3D
[$sel:maxMipLevels:ImageFormatProperties] :: ImageFormatProperties -> Word32
[$sel:maxArrayLayers:ImageFormatProperties] :: ImageFormatProperties -> Word32
[$sel:sampleCounts:ImageFormatProperties] :: ImageFormatProperties -> SampleCountFlags
[$sel:maxResourceSize:ImageFormatProperties] :: ImageFormatProperties -> DeviceSize
-- | VkPhysicalDeviceFeatures - Structure describing the fine-grained
-- features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceFeatures structure describe
-- the following features:
--
-- See Also
--
-- Bool32, DeviceCreateInfo,
-- PhysicalDeviceFeatures2, getPhysicalDeviceFeatures
data PhysicalDeviceFeatures
PhysicalDeviceFeatures :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceFeatures
-- | robustBufferAccess specifies that accesses to buffers are
-- bounds-checked against the range of the buffer descriptor (as
-- determined by DescriptorBufferInfo::range,
-- BufferViewCreateInfo::range, or the size of the
-- buffer). Out of bounds accesses must not cause application
-- termination, and the effects of shader loads, stores, and atomics
-- must conform to an implementation-dependent behavior as
-- described below.
--
--
-- - A buffer access is considered to be out of bounds if any of the
-- following are true:
- The pointer was formed by
-- OpImageTexelPointer and the coordinate is less than zero or
-- greater than or equal to the number of whole elements in the bound
-- range.
- The pointer was not formed by
-- OpImageTexelPointer and the object pointed to is not wholly
-- contained within the bound range. This includes accesses performed via
-- variable pointers where the buffer descriptor being accessed
-- cannot be statically determined. Uninitialized pointers and pointers
-- equal to OpConstantNull are treated as pointing to a
-- zero-sized object, so all accesses through such pointers are
-- considered to be out of bounds. Buffer accesses through buffer device
-- addresses are not bounds-checked. If the
-- cooperativeMatrixRobustBufferAccess feature is not enabled,
-- then accesses using OpCooperativeMatrixLoadNV and
-- OpCooperativeMatrixStoreNV may not be
-- bounds-checked.NoteIf a SPIR-V OpLoad instruction loads a
-- structure and the tail end of the structure is out of bounds, then all
-- members of the structure are considered out of bounds even if the
-- members at the end are not statically used.
- If
-- robustBufferAccess2 is not enabled and any buffer access is
-- determined to be out of bounds, then any other access of the same type
-- (load, store, or atomic) to the same buffer that accesses an address
-- less than 16 bytes away from the out of bounds address may also
-- be considered out of bounds.
- If the access is a load that
-- reads from the same memory locations as a prior store in the same
-- shader invocation, with no other intervening accesses to the same
-- memory locations in that shader invocation, then the result of the
-- load may be the value stored by the store instruction, even if
-- the access is out of bounds. If the load is Volatile, then an
-- out of bounds load must return the appropriate out of bounds
-- value.
-- - Accesses to descriptors written with a NULL_HANDLE resource
-- or view are not considered to be out of bounds. Instead, each type of
-- descriptor access defines a specific behavior for accesses to a null
-- descriptor.
-- - Out-of-bounds buffer loads will return any of the following
-- values:
- If the access is to a uniform buffer and
-- robustBufferAccess2 is enabled, loads of offsets between the
-- end of the descriptor range and the end of the descriptor range
-- rounded up to a multiple of
-- robustUniformBufferAccessSizeAlignment bytes must return
-- either zero values or the contents of the memory at the offset being
-- loaded. Loads of offsets past the descriptor range rounded up to a
-- multiple of robustUniformBufferAccessSizeAlignment bytes
-- must return zero values.
- If the access is to a storage
-- buffer and robustBufferAccess2 is enabled, loads of offsets
-- between the end of the descriptor range and the end of the descriptor
-- range rounded up to a multiple of
-- robustStorageBufferAccessSizeAlignment bytes must return
-- either zero values or the contents of the memory at the offset being
-- loaded. Loads of offsets past the descriptor range rounded up to a
-- multiple of robustStorageBufferAccessSizeAlignment bytes
-- must return zero values. Similarly, stores to addresses between
-- the end of the descriptor range and the end of the descriptor range
-- rounded up to a multiple of
-- robustStorageBufferAccessSizeAlignment bytes may be
-- discarded.
- Non-atomic accesses to storage buffers that are a
-- multiple of 32 bits may be decomposed into 32-bit accesses that
-- are individually bounds-checked.
- If the access is to an index
-- buffer and robustBufferAccess2 is enabled, zero values
-- must be returned.
- If the access is to a uniform texel
-- buffer or storage texel buffer and robustBufferAccess2 is
-- enabled, zero values must be returned, and then Conversion
-- to RGBA is applied based on the buffer view’s
-- format.
- Values from anywhere within the memory range(s) bound
-- to the buffer (possibly including bytes of memory past the end of the
-- buffer, up to the end of the bound range).
- Zero values, or
-- (0,0,0,x) vectors for vector reads where x is a valid value
-- represented in the type of the vector components and may be any
-- of:
- 0, 1, or the maximum representable positive integer value,
-- for signed or unsigned integer components
- 0.0 or 1.0, for
-- floating-point components
-- - Out-of-bounds writes may modify values within the memory
-- range(s) bound to the buffer, but must not modify any other
-- memory.
-- - Out-of-bounds atomics may modify values within the memory
-- range(s) bound to the buffer, but must not modify any other
-- memory, and return an undefined value.
- If
-- robustBufferAccess2 is enabled, out of bounds atomics
-- must not modify any memory, and return an undefined
-- value.
-- - If robustBufferAccess2 is disabled, vertex input attributes
-- are considered out of bounds if the offset of the attribute in the
-- bound vertex buffer range plus the size of the attribute is greater
-- than either:
- vertexBufferRangeSize, if
-- bindingStride == 0;
-- or
- (vertexBufferRangeSize -
-- (vertexBufferRangeSize %
-- bindingStride))
where vertexBufferRangeSize
-- is the byte size of the memory range bound to the vertex buffer
-- binding and bindingStride is the byte stride of the
-- corresponding vertex input binding. Further, if any vertex input
-- attribute using a specific vertex input binding is out of bounds, then
-- all vertex input attributes using that vertex input binding for that
-- vertex shader invocation are considered out of bounds.- If a
-- vertex input attribute is out of bounds, it will be assigned one of
-- the following values:
- Values from anywhere within the memory
-- range(s) bound to the buffer, converted according to the format of the
-- attribute.
- Zero values, format converted according to the
-- format of the attribute.
- Zero values, or (0,0,0,x) vectors, as
-- described above.
-- - If robustBufferAccess2 is enabled, vertex input attributes
-- are considered out of bounds if the offset of the attribute in the
-- bound vertex buffer range plus the size of the attribute is greater
-- than the byte size of the memory range bound to the vertex buffer
-- binding.
- If a vertex input attribute is out of bounds, the
-- raw data extracted are zero values, and missing G, B, or A
-- components are filled with (0,0,1).
-- - If robustBufferAccess is not enabled, applications
-- must not perform out of bounds accesses.
--
[$sel:robustBufferAccess:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | fullDrawIndexUint32 specifies the full 32-bit range of
-- indices is supported for indexed draw calls when using a
-- IndexType of INDEX_TYPE_UINT32.
-- maxDrawIndexedIndexValue is the maximum index value that
-- may be used (aside from the primitive restart index, which is
-- always 232-1 when the IndexType is INDEX_TYPE_UINT32).
-- If this feature is supported, maxDrawIndexedIndexValue
-- must be 232-1; otherwise it must be no smaller than
-- 224-1. See maxDrawIndexedIndexValue.
[$sel:fullDrawIndexUint32:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | imageCubeArray specifies whether image views with a
-- ImageViewType of IMAGE_VIEW_TYPE_CUBE_ARRAY can
-- be created, and that the corresponding SampledCubeArray and
-- ImageCubeArray SPIR-V capabilities can be used in
-- shader code.
[$sel:imageCubeArray:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | independentBlend specifies whether the
-- PipelineColorBlendAttachmentState settings are controlled
-- independently per-attachment. If this feature is not enabled, the
-- PipelineColorBlendAttachmentState settings for all color
-- attachments must be identical. Otherwise, a different
-- PipelineColorBlendAttachmentState can be provided for
-- each bound color attachment.
[$sel:independentBlend:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | geometryShader specifies whether geometry shaders are
-- supported. If this feature is not enabled, the
-- SHADER_STAGE_GEOMETRY_BIT and
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT enum values must not
-- be used. This also specifies whether shader modules can declare
-- the Geometry capability.
[$sel:geometryShader:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | tessellationShader specifies whether tessellation control and
-- evaluation shaders are supported. If this feature is not enabled, the
-- SHADER_STAGE_TESSELLATION_CONTROL_BIT,
-- SHADER_STAGE_TESSELLATION_EVALUATION_BIT,
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT,
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, and
-- STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO enum
-- values must not be used. This also specifies whether shader
-- modules can declare the Tessellation capability.
[$sel:tessellationShader:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sampleRateShading specifies whether Sample Shading and
-- multisample interpolation are supported. If this feature is not
-- enabled, the sampleShadingEnable member of the
-- PipelineMultisampleStateCreateInfo structure must be set
-- to FALSE and the minSampleShading member is ignored.
-- This also specifies whether shader modules can declare the
-- SampleRateShading capability.
[$sel:sampleRateShading:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | dualSrcBlend specifies whether blend operations which take
-- two sources are supported. If this feature is not enabled, the
-- BLEND_FACTOR_SRC1_COLOR,
-- BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,
-- BLEND_FACTOR_SRC1_ALPHA, and
-- BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA enum values must not
-- be used as source or destination blending factors. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-dsb.
[$sel:dualSrcBlend:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | logicOp specifies whether logic operations are supported. If
-- this feature is not enabled, the logicOpEnable member of the
-- PipelineColorBlendStateCreateInfo structure must be set
-- to FALSE, and the logicOp member is ignored.
[$sel:logicOp:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | multiDrawIndirect specifies whether multiple draw indirect is
-- supported. If this feature is not enabled, the drawCount
-- parameter to the cmdDrawIndirect and
-- cmdDrawIndexedIndirect commands must be 0 or 1. The
-- maxDrawIndirectCount member of the
-- PhysicalDeviceLimits structure must also be 1 if this
-- feature is not supported. See maxDrawIndirectCount.
[$sel:multiDrawIndirect:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | drawIndirectFirstInstance specifies whether indirect draw
-- calls support the firstInstance parameter. If this feature is
-- not enabled, the firstInstance member of all
-- DrawIndirectCommand and DrawIndexedIndirectCommand
-- structures that are provided to the cmdDrawIndirect and
-- cmdDrawIndexedIndirect commands must be 0.
[$sel:drawIndirectFirstInstance:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | depthClamp specifies whether depth clamping is supported. If
-- this feature is not enabled, the depthClampEnable member of
-- the PipelineRasterizationStateCreateInfo structure must
-- be set to FALSE. Otherwise, setting depthClampEnable
-- to TRUE will enable depth clamping.
[$sel:depthClamp:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | depthBiasClamp specifies whether depth bias clamping is
-- supported. If this feature is not enabled, the depthBiasClamp
-- member of the PipelineRasterizationStateCreateInfo structure
-- must be set to 0.0 unless the DYNAMIC_STATE_DEPTH_BIAS
-- dynamic state is enabled, and the depthBiasClamp parameter to
-- cmdSetDepthBias must be set to 0.0.
[$sel:depthBiasClamp:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | fillModeNonSolid specifies whether point and wireframe fill
-- modes are supported. If this feature is not enabled, the
-- POLYGON_MODE_POINT and POLYGON_MODE_LINE enum values
-- must not be used.
[$sel:fillModeNonSolid:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | depthBounds specifies whether depth bounds tests are
-- supported. If this feature is not enabled, the
-- depthBoundsTestEnable member of the
-- PipelineDepthStencilStateCreateInfo structure must be
-- set to FALSE. When depthBoundsTestEnable is set to
-- FALSE, the minDepthBounds and maxDepthBounds
-- members of the PipelineDepthStencilStateCreateInfo structure
-- are ignored.
[$sel:depthBounds:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | wideLines specifies whether lines with width other than 1.0
-- are supported. If this feature is not enabled, the lineWidth
-- member of the PipelineRasterizationStateCreateInfo structure
-- must be set to 1.0 unless the DYNAMIC_STATE_LINE_WIDTH
-- dynamic state is enabled, and the lineWidth parameter to
-- cmdSetLineWidth must be set to 1.0. When this feature is
-- supported, the range and granularity of supported line widths are
-- indicated by the lineWidthRange and
-- lineWidthGranularity members of the
-- PhysicalDeviceLimits structure, respectively.
[$sel:wideLines:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | largePoints specifies whether points with size greater than
-- 1.0 are supported. If this feature is not enabled, only a point size
-- of 1.0 written by a shader is supported. The range and granularity of
-- supported point sizes are indicated by the pointSizeRange and
-- pointSizeGranularity members of the
-- PhysicalDeviceLimits structure, respectively.
[$sel:largePoints:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | alphaToOne specifies whether the implementation is able to
-- replace the alpha value of the color fragment output from the fragment
-- shader with the maximum representable alpha value for fixed-point
-- colors or 1.0 for floating-point colors. If this feature is not
-- enabled, then the alphaToOneEnable member of the
-- PipelineMultisampleStateCreateInfo structure must be set
-- to FALSE. Otherwise setting alphaToOneEnable to
-- TRUE will enable alpha-to-one behavior.
[$sel:alphaToOne:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | multiViewport specifies whether more than one viewport is
-- supported. If this feature is not enabled:
--
--
[$sel:multiViewport:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | samplerAnisotropy specifies whether anisotropic filtering is
-- supported. If this feature is not enabled, the
-- anisotropyEnable member of the SamplerCreateInfo
-- structure must be FALSE.
[$sel:samplerAnisotropy:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | textureCompressionETC2 specifies whether all of the ETC2 and
-- EAC compressed texture formats are supported. If this feature is
-- enabled, then the FORMAT_FEATURE_SAMPLED_IMAGE_BIT,
-- FORMAT_FEATURE_BLIT_SRC_BIT and
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT features
-- must be supported in optimalTilingFeatures for the
-- following formats:
--
--
--
-- To query for additional properties, or if the feature is not enabled,
-- getPhysicalDeviceFormatProperties and
-- getPhysicalDeviceImageFormatProperties can be used to
-- check for supported properties of individual formats as normal.
[$sel:textureCompressionETC2:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | textureCompressionASTC_LDR specifies whether all of the ASTC
-- LDR compressed texture formats are supported. If this feature is
-- enabled, then the FORMAT_FEATURE_SAMPLED_IMAGE_BIT,
-- FORMAT_FEATURE_BLIT_SRC_BIT and
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT features
-- must be supported in optimalTilingFeatures for the
-- following formats:
--
--
--
-- To query for additional properties, or if the feature is not enabled,
-- getPhysicalDeviceFormatProperties and
-- getPhysicalDeviceImageFormatProperties can be used to
-- check for supported properties of individual formats as normal.
[$sel:textureCompressionASTC_LDR:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | textureCompressionBC specifies whether all of the BC
-- compressed texture formats are supported. If this feature is enabled,
-- then the FORMAT_FEATURE_SAMPLED_IMAGE_BIT,
-- FORMAT_FEATURE_BLIT_SRC_BIT and
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT features
-- must be supported in optimalTilingFeatures for the
-- following formats:
--
--
--
-- To query for additional properties, or if the feature is not enabled,
-- getPhysicalDeviceFormatProperties and
-- getPhysicalDeviceImageFormatProperties can be used to
-- check for supported properties of individual formats as normal.
[$sel:textureCompressionBC:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | occlusionQueryPrecise specifies whether occlusion queries
-- returning actual sample counts are supported. Occlusion queries are
-- created in a QueryPool by specifying the queryType of
-- QUERY_TYPE_OCCLUSION in the QueryPoolCreateInfo
-- structure which is passed to createQueryPool. If this feature
-- is enabled, queries of this type can enable
-- QUERY_CONTROL_PRECISE_BIT in the flags parameter to
-- cmdBeginQuery. If this feature is not supported, the
-- implementation supports only boolean occlusion queries. When any
-- samples are passed, boolean queries will return a non-zero result
-- value, otherwise a result value of zero is returned. When this feature
-- is enabled and QUERY_CONTROL_PRECISE_BIT is set, occlusion
-- queries will report the actual number of samples passed.
[$sel:occlusionQueryPrecise:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | pipelineStatisticsQuery specifies whether the pipeline
-- statistics queries are supported. If this feature is not enabled,
-- queries of type QUERY_TYPE_PIPELINE_STATISTICS cannot be
-- created, and none of the QueryPipelineStatisticFlagBits bits
-- can be set in the pipelineStatistics member of the
-- QueryPoolCreateInfo structure.
[$sel:pipelineStatisticsQuery:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | vertexPipelineStoresAndAtomics specifies whether storage
-- buffers and images support stores and atomic operations in the vertex,
-- tessellation, and geometry shader stages. If this feature is not
-- enabled, all storage image, storage texel buffers, and storage buffer
-- variables used by these stages in shader modules must be
-- decorated with the NonWritable decoration (or the
-- readonly memory qualifier in GLSL).
[$sel:vertexPipelineStoresAndAtomics:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | fragmentStoresAndAtomics specifies whether storage buffers
-- and images support stores and atomic operations in the fragment shader
-- stage. If this feature is not enabled, all storage image, storage
-- texel buffers, and storage buffer variables used by the fragment stage
-- in shader modules must be decorated with the
-- NonWritable decoration (or the readonly memory
-- qualifier in GLSL).
[$sel:fragmentStoresAndAtomics:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderTessellationAndGeometryPointSize specifies whether the
-- PointSize built-in decoration is available in the
-- tessellation control, tessellation evaluation, and geometry shader
-- stages. If this feature is not enabled, members decorated with the
-- PointSize built-in decoration must not be read from or
-- written to and all points written from a tessellation or geometry
-- shader will have a size of 1.0. This also specifies whether shader
-- modules can declare the TessellationPointSize
-- capability for tessellation control and evaluation shaders, or if the
-- shader modules can declare the GeometryPointSize
-- capability for geometry shaders. An implementation supporting this
-- feature must also support one or both of the
-- tessellationShader or geometryShader features.
[$sel:shaderTessellationAndGeometryPointSize:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderImageGatherExtended specifies whether the extended set
-- of image gather instructions are available in shader code. If this
-- feature is not enabled, the OpImage*Gather
-- instructions do not support the Offset and
-- ConstOffsets operands. This also specifies whether shader
-- modules can declare the ImageGatherExtended
-- capability.
[$sel:shaderImageGatherExtended:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderStorageImageExtendedFormats specifies whether all the
-- “storage image extended formats” below are supported; if this feature
-- is supported, then the FORMAT_FEATURE_STORAGE_IMAGE_BIT
-- must be supported in optimalTilingFeatures for the
-- following formats:
--
--
--
-- Note
--
-- shaderStorageImageExtendedFormats feature only adds a
-- guarantee of format support, which is specified for the whole physical
-- device. Therefore enabling or disabling the feature via
-- createDevice has no practical effect.
--
-- To query for additional properties, or if the feature is not
-- supported, getPhysicalDeviceFormatProperties and
-- getPhysicalDeviceImageFormatProperties can be used to
-- check for supported properties of individual formats, as usual rules
-- allow.
--
-- FORMAT_R32G32_UINT, FORMAT_R32G32_SINT, and
-- FORMAT_R32G32_SFLOAT from StorageImageExtendedFormats
-- SPIR-V capability, are already covered by core Vulkan mandatory
-- format support.
[$sel:shaderStorageImageExtendedFormats:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderStorageImageMultisample specifies whether multisampled
-- storage images are supported. If this feature is not enabled, images
-- that are created with a usage that includes
-- IMAGE_USAGE_STORAGE_BIT must be created with
-- samples equal to SAMPLE_COUNT_1_BIT. This also
-- specifies whether shader modules can declare the
-- StorageImageMultisample capability.
[$sel:shaderStorageImageMultisample:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderStorageImageReadWithoutFormat specifies whether storage
-- images require a format qualifier to be specified when reading from
-- storage images. If this feature is not enabled, the
-- OpImageRead instruction must not have an
-- OpTypeImage of Unknown. This also specifies whether
-- shader modules can declare the
-- StorageImageReadWithoutFormat capability.
[$sel:shaderStorageImageReadWithoutFormat:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderStorageImageWriteWithoutFormat specifies whether
-- storage images require a format qualifier to be specified when writing
-- to storage images. If this feature is not enabled, the
-- OpImageWrite instruction must not have an
-- OpTypeImage of Unknown. This also specifies whether
-- shader modules can declare the
-- StorageImageWriteWithoutFormat capability.
[$sel:shaderStorageImageWriteWithoutFormat:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderUniformBufferArrayDynamicIndexing specifies whether
-- arrays of uniform buffers can be indexed by dynamically
-- uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC must be indexed
-- only by constant integral expressions when aggregated into arrays in
-- shader code. This also specifies whether shader modules can
-- declare the UniformBufferArrayDynamicIndexing capability.
[$sel:shaderUniformBufferArrayDynamicIndexing:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderSampledImageArrayDynamicIndexing specifies whether
-- arrays of samplers or sampled images can be indexed by
-- dynamically uniform integer expressions in shader code. If this
-- feature is not enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE must be indexed only by
-- constant integral expressions when aggregated into arrays in shader
-- code. This also specifies whether shader modules can declare
-- the SampledImageArrayDynamicIndexing capability.
[$sel:shaderSampledImageArrayDynamicIndexing:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderStorageBufferArrayDynamicIndexing specifies whether
-- arrays of storage buffers can be indexed by dynamically uniform
-- integer expressions in shader code. If this feature is not enabled,
-- resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must be indexed
-- only by constant integral expressions when aggregated into arrays in
-- shader code. This also specifies whether shader modules can
-- declare the StorageBufferArrayDynamicIndexing capability.
[$sel:shaderStorageBufferArrayDynamicIndexing:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderStorageImageArrayDynamicIndexing specifies whether
-- arrays of storage images can be indexed by dynamically uniform
-- integer expressions in shader code. If this feature is not enabled,
-- resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_IMAGE must be indexed only by
-- constant integral expressions when aggregated into arrays in shader
-- code. This also specifies whether shader modules can declare
-- the StorageImageArrayDynamicIndexing capability.
[$sel:shaderStorageImageArrayDynamicIndexing:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderClipDistance specifies whether clip distances are
-- supported in shader code. If this feature is not enabled, any members
-- decorated with the ClipDistance built-in decoration
-- must not be read from or written to in shader modules. This
-- also specifies whether shader modules can declare the
-- ClipDistance capability.
[$sel:shaderClipDistance:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderCullDistance specifies whether cull distances are
-- supported in shader code. If this feature is not enabled, any members
-- decorated with the CullDistance built-in decoration
-- must not be read from or written to in shader modules. This
-- also specifies whether shader modules can declare the
-- CullDistance capability.
[$sel:shaderCullDistance:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderFloat64 specifies whether 64-bit floats (doubles) are
-- supported in shader code. If this feature is not enabled, 64-bit
-- floating-point types must not be used in shader code. This also
-- specifies whether shader modules can declare the
-- Float64 capability. Declaring and using 64-bit floats is
-- enabled for all storage classes that SPIR-V allows with the
-- Float64 capability.
[$sel:shaderFloat64:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderInt64 specifies whether 64-bit integers (signed and
-- unsigned) are supported in shader code. If this feature is not
-- enabled, 64-bit integer types must not be used in shader code.
-- This also specifies whether shader modules can declare the
-- Int64 capability. Declaring and using 64-bit integers is
-- enabled for all storage classes that SPIR-V allows with the
-- Int64 capability.
[$sel:shaderInt64:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderInt16 specifies whether 16-bit integers (signed and
-- unsigned) are supported in shader code. If this feature is not
-- enabled, 16-bit integer types must not be used in shader code.
-- This also specifies whether shader modules can declare the
-- Int16 capability. However, this only enables a subset of the
-- storage classes that SPIR-V allows for the Int16 SPIR-V
-- capability: Declaring and using 16-bit integers in the
-- Private, Workgroup, and Function storage
-- classes is enabled, while declaring them in the interface storage
-- classes (e.g., UniformConstant, Uniform,
-- StorageBuffer, Input, Output, and
-- PushConstant) is not enabled.
[$sel:shaderInt16:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderResourceResidency specifies whether image operations
-- that return resource residency information are supported in shader
-- code. If this feature is not enabled, the OpImageSparse*
-- instructions must not be used in shader code. This also
-- specifies whether shader modules can declare the
-- SparseResidency capability. The feature requires at least one
-- of the sparseResidency* features to be supported.
[$sel:shaderResourceResidency:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | shaderResourceMinLod specifies whether image operations
-- specifying the minimum resource LOD are supported in shader code. If
-- this feature is not enabled, the MinLod image operand
-- must not be used in shader code. This also specifies whether
-- shader modules can declare the MinLod capability.
[$sel:shaderResourceMinLod:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseBinding specifies whether resource memory can be
-- managed at opaque sparse block level instead of at the object level.
-- If this feature is not enabled, resource memory must be bound
-- only on a per-object basis using the bindBufferMemory and
-- bindImageMemory commands. In this case, buffers and images
-- must not be created with
-- BUFFER_CREATE_SPARSE_BINDING_BIT and
-- IMAGE_CREATE_SPARSE_BINDING_BIT set in the flags
-- member of the BufferCreateInfo and ImageCreateInfo
-- structures, respectively. Otherwise resource memory can be
-- managed as described in Sparse Resource Features.
[$sel:sparseBinding:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidencyBuffer specifies whether the device can
-- access partially resident buffers. If this feature is not enabled,
-- buffers must not be created with
-- BUFFER_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the BufferCreateInfo structure.
[$sel:sparseResidencyBuffer:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidencyImage2D specifies whether the device
-- can access partially resident 2D images with 1 sample per
-- pixel. If this feature is not enabled, images with an
-- imageType of IMAGE_TYPE_2D and samples set to
-- SAMPLE_COUNT_1_BIT must not be created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the ImageCreateInfo structure.
[$sel:sparseResidencyImage2D:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidencyImage3D specifies whether the device
-- can access partially resident 3D images. If this feature is not
-- enabled, images with an imageType of IMAGE_TYPE_3D
-- must not be created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the ImageCreateInfo structure.
[$sel:sparseResidencyImage3D:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidency2Samples specifies whether the physical device
-- can access partially resident 2D images with 2 samples per
-- pixel. If this feature is not enabled, images with an
-- imageType of IMAGE_TYPE_2D and samples set to
-- SAMPLE_COUNT_2_BIT must not be created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the ImageCreateInfo structure.
[$sel:sparseResidency2Samples:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidency4Samples specifies whether the physical device
-- can access partially resident 2D images with 4 samples per
-- pixel. If this feature is not enabled, images with an
-- imageType of IMAGE_TYPE_2D and samples set to
-- SAMPLE_COUNT_4_BIT must not be created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the ImageCreateInfo structure.
[$sel:sparseResidency4Samples:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidency8Samples specifies whether the physical device
-- can access partially resident 2D images with 8 samples per
-- pixel. If this feature is not enabled, images with an
-- imageType of IMAGE_TYPE_2D and samples set to
-- SAMPLE_COUNT_8_BIT must not be created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the ImageCreateInfo structure.
[$sel:sparseResidency8Samples:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidency16Samples specifies whether the physical
-- device can access partially resident 2D images with 16 samples
-- per pixel. If this feature is not enabled, images with an
-- imageType of IMAGE_TYPE_2D and samples set to
-- SAMPLE_COUNT_16_BIT must not be created with
-- IMAGE_CREATE_SPARSE_RESIDENCY_BIT set in the flags
-- member of the ImageCreateInfo structure.
[$sel:sparseResidency16Samples:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | sparseResidencyAliased specifies whether the physical device
-- can correctly access data aliased into multiple locations. If
-- this feature is not enabled, the
-- BUFFER_CREATE_SPARSE_ALIASED_BIT and
-- IMAGE_CREATE_SPARSE_ALIASED_BIT enum values must not be
-- used in flags members of the BufferCreateInfo and
-- ImageCreateInfo structures, respectively.
[$sel:sparseResidencyAliased:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | variableMultisampleRate specifies whether all pipelines that
-- will be bound to a command buffer during a subpass which uses no
-- attachments must have the same value for
-- PipelineMultisampleStateCreateInfo::rasterizationSamples.
-- If set to TRUE, the implementation supports variable
-- multisample rates in a subpass which uses no attachments. If set to
-- FALSE, then all pipelines bound in such a subpass must
-- have the same multisample rate. This has no effect in situations where
-- a subpass uses any attachments.
[$sel:variableMultisampleRate:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | inheritedQueries specifies whether a secondary command buffer
-- may be executed while a query is active.
[$sel:inheritedQueries:PhysicalDeviceFeatures] :: PhysicalDeviceFeatures -> Bool
-- | VkPhysicalDeviceSparseProperties - Structure specifying physical
-- device sparse memory properties
--
-- See Also
--
-- Bool32, PhysicalDeviceProperties
data PhysicalDeviceSparseProperties
PhysicalDeviceSparseProperties :: Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceSparseProperties
-- | residencyStandard2DBlockShape is TRUE if the physical
-- device will access all single-sample 2D sparse resources using the
-- standard sparse image block shapes (based on image format), as
-- described in the Standard Sparse Image Block Shapes (Single
-- Sample) table. If this property is not supported the value
-- returned in the imageGranularity member of the
-- SparseImageFormatProperties structure for single-sample 2D
-- images is not required to match the standard sparse image block
-- dimensions listed in the table.
[$sel:residencyStandard2DBlockShape:PhysicalDeviceSparseProperties] :: PhysicalDeviceSparseProperties -> Bool
-- | residencyStandard2DMultisampleBlockShape is TRUE if
-- the physical device will access all multisample 2D sparse resources
-- using the standard sparse image block shapes (based on image format),
-- as described in the Standard Sparse Image Block Shapes (MSAA)
-- table. If this property is not supported, the value returned in the
-- imageGranularity member of the
-- SparseImageFormatProperties structure for multisample 2D images
-- is not required to match the standard sparse image block
-- dimensions listed in the table.
[$sel:residencyStandard2DMultisampleBlockShape:PhysicalDeviceSparseProperties] :: PhysicalDeviceSparseProperties -> Bool
-- | residencyStandard3DBlockShape is TRUE if the physical
-- device will access all 3D sparse resources using the standard sparse
-- image block shapes (based on image format), as described in the
-- Standard Sparse Image Block Shapes (Single Sample) table. If
-- this property is not supported, the value returned in the
-- imageGranularity member of the
-- SparseImageFormatProperties structure for 3D images is not
-- required to match the standard sparse image block dimensions
-- listed in the table.
[$sel:residencyStandard3DBlockShape:PhysicalDeviceSparseProperties] :: PhysicalDeviceSparseProperties -> Bool
-- | residencyAlignedMipSize is TRUE if images with mip
-- level dimensions that are not integer multiples of the corresponding
-- dimensions of the sparse image block may be placed in the mip
-- tail. If this property is not reported, only mip levels with
-- dimensions smaller than the imageGranularity member of the
-- SparseImageFormatProperties structure will be placed in the mip
-- tail. If this property is reported the implementation is allowed to
-- return SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT in the
-- flags member of SparseImageFormatProperties,
-- indicating that mip level dimensions that are not integer multiples of
-- the corresponding dimensions of the sparse image block will be placed
-- in the mip tail.
[$sel:residencyAlignedMipSize:PhysicalDeviceSparseProperties] :: PhysicalDeviceSparseProperties -> Bool
-- | residencyNonResidentStrict specifies whether the physical
-- device can consistently access non-resident regions of a
-- resource. If this property is TRUE, access to non-resident
-- regions of resources will be guaranteed to return values as if the
-- resource were populated with 0; writes to non-resident regions will be
-- discarded.
[$sel:residencyNonResidentStrict:PhysicalDeviceSparseProperties] :: PhysicalDeviceSparseProperties -> Bool
-- | VkPhysicalDeviceLimits - Structure reporting implementation-dependent
-- physical device limits
--
-- Members
--
-- The PhysicalDeviceLimits are properties of the physical device.
-- These are available in the limits member of the
-- PhysicalDeviceProperties structure which is returned from
-- getPhysicalDeviceProperties.
--
-- Description
--
--
--
-- See Also
--
-- Bool32, DeviceSize, PhysicalDeviceProperties,
-- SampleCountFlags
data PhysicalDeviceLimits
PhysicalDeviceLimits :: Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> DeviceSize -> DeviceSize -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> (Word32, Word32, Word32) -> Word32 -> (Word32, Word32, Word32) -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Float -> Float -> Word32 -> (Word32, Word32) -> (Float, Float) -> Word32 -> Word64 -> DeviceSize -> DeviceSize -> DeviceSize -> Int32 -> Word32 -> Int32 -> Word32 -> Float -> Float -> Word32 -> Word32 -> Word32 -> Word32 -> SampleCountFlags -> SampleCountFlags -> SampleCountFlags -> SampleCountFlags -> Word32 -> SampleCountFlags -> SampleCountFlags -> SampleCountFlags -> SampleCountFlags -> SampleCountFlags -> Word32 -> Bool -> Float -> Word32 -> Word32 -> Word32 -> Word32 -> (Float, Float) -> (Float, Float) -> Float -> Float -> Bool -> Bool -> DeviceSize -> DeviceSize -> DeviceSize -> PhysicalDeviceLimits
-- | maxImageDimension1D is the maximum dimension (width)
-- supported for all images created with an imageType of
-- IMAGE_TYPE_1D.
[$sel:maxImageDimension1D:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxImageDimension2D is the maximum dimension (width
-- or height) supported for all images created with an
-- imageType of IMAGE_TYPE_2D and without
-- IMAGE_CREATE_CUBE_COMPATIBLE_BIT set in flags.
[$sel:maxImageDimension2D:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxImageDimension3D is the maximum dimension (width,
-- height, or depth) supported for all images created
-- with an imageType of IMAGE_TYPE_3D.
[$sel:maxImageDimension3D:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxImageDimensionCube is the maximum dimension
-- (width or height) supported for all images created
-- with an imageType of IMAGE_TYPE_2D and with
-- IMAGE_CREATE_CUBE_COMPATIBLE_BIT set in flags.
[$sel:maxImageDimensionCube:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxImageArrayLayers is the maximum number of layers
-- (arrayLayers) for an image.
[$sel:maxImageArrayLayers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTexelBufferElements is the maximum number of addressable
-- texels for a buffer view created on a buffer which was created with
-- the BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT or
-- BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT set in the usage
-- member of the BufferCreateInfo structure.
[$sel:maxTexelBufferElements:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxUniformBufferRange is the maximum value that can be
-- specified in the range member of any
-- DescriptorBufferInfo structures passed to a call to
-- updateDescriptorSets for descriptors of type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.
[$sel:maxUniformBufferRange:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxStorageBufferRange is the maximum value that can be
-- specified in the range member of any
-- DescriptorBufferInfo structures passed to a call to
-- updateDescriptorSets for descriptors of type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.
[$sel:maxStorageBufferRange:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPushConstantsSize is the maximum size, in bytes, of the
-- pool of push constant memory. For each of the push constant ranges
-- indicated by the pPushConstantRanges member of the
-- PipelineLayoutCreateInfo structure, (offset +
-- size) must be less than or equal to this limit.
[$sel:maxPushConstantsSize:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxMemoryAllocationCount is the maximum number of device
-- memory allocations, as created by allocateMemory, which
-- can simultaneously exist.
[$sel:maxMemoryAllocationCount:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxSamplerAllocationCount is the maximum number of sampler
-- objects, as created by createSampler, which can
-- simultaneously exist on a device.
[$sel:maxSamplerAllocationCount:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | bufferImageGranularity is the granularity, in bytes, at which
-- buffer or linear image resources, and optimal image resources
-- can be bound to adjacent offsets in the same
-- DeviceMemory object without aliasing. See Buffer-Image
-- Granularity for more details.
[$sel:bufferImageGranularity:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | sparseAddressSpaceSize is the total amount of address space
-- available, in bytes, for sparse memory resources. This is an upper
-- bound on the sum of the size of all sparse resources, regardless of
-- whether any memory is bound to them.
[$sel:sparseAddressSpaceSize:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | maxBoundDescriptorSets is the maximum number of descriptor
-- sets that can be simultaneously used by a pipeline. All
-- DescriptorSet decorations in shader modules must have a
-- value less than maxBoundDescriptorSets. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sets.
[$sel:maxBoundDescriptorSets:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageDescriptorSamplers is the maximum number of
-- samplers that can be accessible to a single shader stage in a
-- pipeline layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_SAMPLER or
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. A descriptor is accessible to a shader stage
-- when the stageFlags member of the
-- DescriptorSetLayoutBinding structure has the bit for that
-- shader stage set. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sampler
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-combinedimagesampler.
[$sel:maxPerStageDescriptorSamplers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageDescriptorUniformBuffers is the maximum number of
-- uniform buffers that can be accessible to a single shader stage
-- in a pipeline layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. A descriptor is accessible to a shader stage
-- when the stageFlags member of the
-- DescriptorSetLayoutBinding structure has the bit for that
-- shader stage set. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbuffer
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbufferdynamic.
[$sel:maxPerStageDescriptorUniformBuffers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageDescriptorStorageBuffers is the maximum number of
-- storage buffers that can be accessible to a single shader stage
-- in a pipeline layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. A descriptor is accessible to a pipeline
-- shader stage when the stageFlags member of the
-- DescriptorSetLayoutBinding structure has the bit for that
-- shader stage set. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebuffer
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebufferdynamic.
[$sel:maxPerStageDescriptorStorageBuffers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageDescriptorSampledImages is the maximum number of
-- sampled images that can be accessible to a single shader stage
-- in a pipeline layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, or
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER count against this limit.
-- Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. A descriptor is accessible to a pipeline
-- shader stage when the stageFlags member of the
-- DescriptorSetLayoutBinding structure has the bit for that
-- shader stage set. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-combinedimagesampler,
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sampledimage,
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformtexelbuffer.
[$sel:maxPerStageDescriptorSampledImages:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageDescriptorStorageImages is the maximum number of
-- storage images that can be accessible to a single shader stage
-- in a pipeline layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER count against this limit.
-- Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. A descriptor is accessible to a pipeline
-- shader stage when the stageFlags member of the
-- DescriptorSetLayoutBinding structure has the bit for that
-- shader stage set. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storageimage,
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagetexelbuffer.
[$sel:maxPerStageDescriptorStorageImages:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageDescriptorInputAttachments is the maximum number
-- of input attachments that can be accessible to a single shader
-- stage in a pipeline layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only
-- descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. A descriptor is accessible to a pipeline
-- shader stage when the stageFlags member of the
-- DescriptorSetLayoutBinding structure has the bit for that
-- shader stage set. These are only supported for the fragment stage. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-inputattachment.
[$sel:maxPerStageDescriptorInputAttachments:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxPerStageResources is the maximum number of resources that
-- can be accessible to a single shader stage in a pipeline
-- layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE,
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER,
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER,
-- DESCRIPTOR_TYPE_STORAGE_BUFFER,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC,
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, or
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only
-- descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. For the fragment shader stage the
-- framebuffer color attachments also count against this limit.
[$sel:maxPerStageResources:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetSamplers is the maximum number of samplers
-- that can be included in a pipeline layout. Descriptors with a
-- type of DESCRIPTOR_TYPE_SAMPLER or
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sampler
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-combinedimagesampler.
[$sel:maxDescriptorSetSamplers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetUniformBuffers is the maximum number of
-- uniform buffers that can be included in a pipeline layout.
-- Descriptors with a type of DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbuffer
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbufferdynamic.
[$sel:maxDescriptorSetUniformBuffers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetUniformBuffersDynamic is the maximum number
-- of dynamic uniform buffers that can be included in a pipeline
-- layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformbufferdynamic.
[$sel:maxDescriptorSetUniformBuffersDynamic:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetStorageBuffers is the maximum number of
-- storage buffers that can be included in a pipeline layout.
-- Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebuffer
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebufferdynamic.
[$sel:maxDescriptorSetStorageBuffers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetStorageBuffersDynamic is the maximum number
-- of dynamic storage buffers that can be included in a pipeline
-- layout. Descriptors with a type of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this
-- limit. Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagebufferdynamic.
[$sel:maxDescriptorSetStorageBuffersDynamic:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetSampledImages is the maximum number of
-- sampled images that can be included in a pipeline layout.
-- Descriptors with a type of
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, or
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER count against this limit.
-- Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-combinedimagesampler,
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-sampledimage,
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-uniformtexelbuffer.
[$sel:maxDescriptorSetSampledImages:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetStorageImages is the maximum number of
-- storage images that can be included in a pipeline layout.
-- Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER count against this limit.
-- Only descriptors in descriptor set layouts created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storageimage,
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-storagetexelbuffer.
[$sel:maxDescriptorSetStorageImages:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDescriptorSetInputAttachments is the maximum number of
-- input attachments that can be included in a pipeline layout.
-- Descriptors with a type of DESCRIPTOR_TYPE_INPUT_ATTACHMENT
-- count against this limit. Only descriptors in descriptor set layouts
-- created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
-- count against this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-inputattachment.
[$sel:maxDescriptorSetInputAttachments:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxVertexInputAttributes is the maximum number of vertex
-- input attributes that can be specified for a graphics pipeline.
-- These are described in the array of
-- VertexInputAttributeDescription structures that are provided at
-- graphics pipeline creation time via the
-- pVertexAttributeDescriptions member of the
-- PipelineVertexInputStateCreateInfo structure. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fxvertex-attrib
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fxvertex-input.
[$sel:maxVertexInputAttributes:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxVertexInputBindings is the maximum number of vertex
-- buffers that can be specified for providing vertex attributes
-- to a graphics pipeline. These are described in the array of
-- VertexInputBindingDescription structures that are provided at
-- graphics pipeline creation time via the
-- pVertexBindingDescriptions member of the
-- PipelineVertexInputStateCreateInfo structure. The
-- binding member of VertexInputBindingDescription
-- must be less than this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fxvertex-input.
[$sel:maxVertexInputBindings:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxVertexInputAttributeOffset is the maximum vertex input
-- attribute offset that can be added to the vertex input binding
-- stride. The offset member of the
-- VertexInputAttributeDescription structure must be less
-- than or equal to this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fxvertex-input.
[$sel:maxVertexInputAttributeOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxVertexInputBindingStride is the maximum vertex input
-- binding stride that can be specified in a vertex input binding.
-- The stride member of the VertexInputBindingDescription
-- structure must be less than or equal to this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fxvertex-input.
[$sel:maxVertexInputBindingStride:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxVertexOutputComponents is the maximum number of components
-- of output variables which can be output by a vertex shader. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#shaders-vertex.
[$sel:maxVertexOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationGenerationLevel is the maximum tessellation
-- generation level supported by the fixed-function tessellation
-- primitive generator. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#tessellation.
[$sel:maxTessellationGenerationLevel:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationPatchSize is the maximum patch size, in
-- vertices, of patches that can be processed by the tessellation
-- control shader and tessellation primitive generator. The
-- patchControlPoints member of the
-- PipelineTessellationStateCreateInfo structure specified at
-- pipeline creation time and the value provided in the
-- OutputVertices execution mode of shader modules must
-- be less than or equal to this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#tessellation.
[$sel:maxTessellationPatchSize:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationControlPerVertexInputComponents is the maximum
-- number of components of input variables which can be provided
-- as per-vertex inputs to the tessellation control shader stage.
[$sel:maxTessellationControlPerVertexInputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationControlPerVertexOutputComponents is the
-- maximum number of components of per-vertex output variables which
-- can be output from the tessellation control shader stage.
[$sel:maxTessellationControlPerVertexOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationControlPerPatchOutputComponents is the maximum
-- number of components of per-patch output variables which can be
-- output from the tessellation control shader stage.
[$sel:maxTessellationControlPerPatchOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationControlTotalOutputComponents is the maximum
-- total number of components of per-vertex and per-patch output
-- variables which can be output from the tessellation control
-- shader stage.
[$sel:maxTessellationControlTotalOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationEvaluationInputComponents is the maximum
-- number of components of input variables which can be provided
-- as per-vertex inputs to the tessellation evaluation shader stage.
[$sel:maxTessellationEvaluationInputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxTessellationEvaluationOutputComponents is the maximum
-- number of components of per-vertex output variables which can
-- be output from the tessellation evaluation shader stage.
[$sel:maxTessellationEvaluationOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxGeometryShaderInvocations is the maximum invocation count
-- supported for instanced geometry shaders. The value provided in the
-- Invocations execution mode of shader modules must be
-- less than or equal to this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#geometry.
[$sel:maxGeometryShaderInvocations:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxGeometryInputComponents is the maximum number of
-- components of input variables which can be provided as inputs
-- to the geometry shader stage.
[$sel:maxGeometryInputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxGeometryOutputComponents is the maximum number of
-- components of output variables which can be output from the
-- geometry shader stage.
[$sel:maxGeometryOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxGeometryOutputVertices is the maximum number of vertices
-- which can be emitted by any geometry shader.
[$sel:maxGeometryOutputVertices:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxGeometryTotalOutputComponents is the maximum total number
-- of components of output, across all emitted vertices, which can
-- be output from the geometry shader stage.
[$sel:maxGeometryTotalOutputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFragmentInputComponents is the maximum number of
-- components of input variables which can be provided as inputs
-- to the fragment shader stage.
[$sel:maxFragmentInputComponents:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFragmentOutputAttachments is the maximum number of output
-- attachments which can be written to by the fragment shader
-- stage.
[$sel:maxFragmentOutputAttachments:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFragmentDualSrcAttachments is the maximum number of output
-- attachments which can be written to by the fragment shader
-- stage when blending is enabled and one of the dual source blend modes
-- is in use. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#framebuffer-dsb
-- and dualSrcBlend.
[$sel:maxFragmentDualSrcAttachments:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFragmentCombinedOutputResources is the total number of
-- storage buffers, storage images, and output buffers which can
-- be used in the fragment shader stage.
[$sel:maxFragmentCombinedOutputResources:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxComputeSharedMemorySize is the maximum total storage size,
-- in bytes, available for variables declared with the Workgroup
-- storage class in shader modules (or with the shared storage
-- qualifier in GLSL) in the compute shader stage. The amount of storage
-- consumed by the variables declared with the Workgroup storage
-- class is implementation-dependent. However, the amount of storage
-- consumed may not exceed the largest block size that would be obtained
-- if all active variables declared with Workgroup storage class
-- were assigned offsets in an arbitrary order by successively taking the
-- smallest valid offset according to the Standard Storage Buffer
-- Layout rules. (This is equivalent to using the GLSL std430 layout
-- rules.)
[$sel:maxComputeSharedMemorySize:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxComputeWorkGroupCount[3] is the maximum number of local
-- workgroups that can be dispatched by a single dispatch command.
-- These three values represent the maximum number of local workgroups
-- for the X, Y, and Z dimensions, respectively. The workgroup count
-- parameters to the dispatch commands must be less than or equal
-- to the corresponding limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#dispatch.
[$sel:maxComputeWorkGroupCount:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> (Word32, Word32, Word32)
-- | maxComputeWorkGroupInvocations is the maximum total number of
-- compute shader invocations in a single local workgroup. The product of
-- the X, Y, and Z sizes, as specified by the LocalSize
-- execution mode in shader modules or by the object decorated by the
-- WorkgroupSize decoration, must be less than or equal
-- to this limit.
[$sel:maxComputeWorkGroupInvocations:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxComputeWorkGroupSize[3] is the maximum size of a local
-- compute workgroup, per dimension. These three values represent the
-- maximum local workgroup size in the X, Y, and Z dimensions,
-- respectively. The x, y, and z sizes, as
-- specified by the LocalSize execution mode or by the object
-- decorated by the WorkgroupSize decoration in shader modules,
-- must be less than or equal to the corresponding limit.
[$sel:maxComputeWorkGroupSize:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> (Word32, Word32, Word32)
-- | subPixelPrecisionBits is the number of bits of subpixel
-- precision in framebuffer coordinates xf and yf. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#primsrast.
[$sel:subPixelPrecisionBits:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | subTexelPrecisionBits is the number of bits of precision in
-- the division along an axis of an image used for minification and
-- magnification filters. 2subTexelPrecisionBits is the actual
-- number of divisions along each axis of the image represented.
-- Sub-texel values calculated during image sampling will snap to these
-- locations when generating the filtered results.
[$sel:subTexelPrecisionBits:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | mipmapPrecisionBits is the number of bits of division that
-- the LOD calculation for mipmap fetching get snapped to when
-- determining the contribution from each mip level to the mip filtered
-- results. 2mipmapPrecisionBits is the actual number of
-- divisions.
[$sel:mipmapPrecisionBits:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDrawIndexedIndexValue is the maximum index value that
-- can be used for indexed draw calls when using 32-bit indices.
-- This excludes the primitive restart index value of 0xFFFFFFFF. See
-- fullDrawIndexUint32.
[$sel:maxDrawIndexedIndexValue:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxDrawIndirectCount is the maximum draw count that is
-- supported for indirect draw calls. See multiDrawIndirect.
[$sel:maxDrawIndirectCount:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxSamplerLodBias is the maximum absolute sampler LOD bias.
-- The sum of the mipLodBias member of the
-- SamplerCreateInfo structure and the Bias operand of
-- image sampling operations in shader modules (or 0 if no Bias
-- operand is provided to an image sampling operation) are clamped to the
-- range [-maxSamplerLodBias,+maxSamplerLodBias]. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#samplers-mipLodBias.
[$sel:maxSamplerLodBias:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | maxSamplerAnisotropy is the maximum degree of sampler
-- anisotropy. The maximum degree of anisotropic filtering used for an
-- image sampling operation is the minimum of the maxAnisotropy
-- member of the SamplerCreateInfo structure and this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#samplers-maxAnisotropy.
[$sel:maxSamplerAnisotropy:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | maxViewports is the maximum number of active viewports. The
-- viewportCount member of the
-- PipelineViewportStateCreateInfo structure that is provided at
-- pipeline creation must be less than or equal to this limit.
[$sel:maxViewports:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxViewportDimensions[2] are the maximum viewport dimensions
-- in the X (width) and Y (height) dimensions, respectively. The maximum
-- viewport dimensions must be greater than or equal to the
-- largest image which can be created and used as a framebuffer
-- attachment. See Controlling the Viewport.
[$sel:maxViewportDimensions:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> (Word32, Word32)
-- | viewportBoundsRange[2] is the [minimum, maximum] range that
-- the corners of a viewport must be contained in. This range
-- must be at least [-2 × size, 2 × size - 1],
-- where size = max(maxViewportDimensions[0],
-- maxViewportDimensions[1]). See Controlling the
-- Viewport.
--
-- Note
--
-- The intent of the viewportBoundsRange limit is to allow a
-- maximum sized viewport to be arbitrarily shifted relative to the
-- output target as long as at least some portion intersects. This would
-- give a bounds limit of [-size + 1, 2 × size - 1]
-- which would allow all possible non-empty-set intersections of the
-- output target and the viewport. Since these numbers are typically
-- powers of two, picking the signed number range using the smallest
-- possible number of bits ends up with the specified range.
[$sel:viewportBoundsRange:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> (Float, Float)
-- | viewportSubPixelBits is the number of bits of subpixel
-- precision for viewport bounds. The subpixel precision that
-- floating-point viewport bounds are interpreted at is given by this
-- limit.
[$sel:viewportSubPixelBits:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | minMemoryMapAlignment is the minimum required
-- alignment, in bytes, of host visible memory allocations within the
-- host address space. When mapping a memory allocation with
-- mapMemory, subtracting offset bytes from the returned
-- pointer will always produce an integer multiple of this limit. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#memory-device-hostaccess.
[$sel:minMemoryMapAlignment:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word64
-- | minTexelBufferOffsetAlignment is the minimum required
-- alignment, in bytes, for the offset member of the
-- BufferViewCreateInfo structure for texel buffers. If
-- texelBufferAlignment is enabled, this limit is equivalent to
-- the maximum of the uniformTexelBufferOffsetAlignmentBytes and
-- storageTexelBufferOffsetAlignmentBytes members of
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT, but smaller
-- alignment is optionally: allowed by
-- storageTexelBufferOffsetSingleTexelAlignment and
-- uniformTexelBufferOffsetSingleTexelAlignment. If
-- texelBufferAlignment is not enabled,
-- BufferViewCreateInfo::offset must be a multiple
-- of this value.
[$sel:minTexelBufferOffsetAlignment:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | minUniformBufferOffsetAlignment is the minimum
-- required alignment, in bytes, for the offset member of
-- the DescriptorBufferInfo structure for uniform buffers. When a
-- descriptor of type DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC is updated, the
-- offset must be an integer multiple of this limit.
-- Similarly, dynamic offsets for uniform buffers must be
-- multiples of this limit.
[$sel:minUniformBufferOffsetAlignment:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | minStorageBufferOffsetAlignment is the minimum
-- required alignment, in bytes, for the offset member of
-- the DescriptorBufferInfo structure for storage buffers. When a
-- descriptor of type DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC is updated, the
-- offset must be an integer multiple of this limit.
-- Similarly, dynamic offsets for storage buffers must be
-- multiples of this limit.
[$sel:minStorageBufferOffsetAlignment:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | minTexelOffset is the minimum offset value for the
-- ConstOffset image operand of any of the
-- OpImageSample* or OpImageFetch* image instructions.
[$sel:minTexelOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Int32
-- | maxTexelOffset is the maximum offset value for the
-- ConstOffset image operand of any of the
-- OpImageSample* or OpImageFetch* image instructions.
[$sel:maxTexelOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | minTexelGatherOffset is the minimum offset value for the
-- Offset, ConstOffset, or ConstOffsets image
-- operands of any of the OpImage*Gather image
-- instructions.
[$sel:minTexelGatherOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Int32
-- | maxTexelGatherOffset is the maximum offset value for the
-- Offset, ConstOffset, or ConstOffsets image
-- operands of any of the OpImage*Gather image
-- instructions.
[$sel:maxTexelGatherOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | minInterpolationOffset is the minimum negative offset value
-- for the offset operand of the InterpolateAtOffset
-- extended instruction.
[$sel:minInterpolationOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | maxInterpolationOffset is the maximum positive offset value
-- for the offset operand of the InterpolateAtOffset
-- extended instruction.
[$sel:maxInterpolationOffset:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | subPixelInterpolationOffsetBits is the number of subpixel
-- fractional bits that the x and y offsets to the
-- InterpolateAtOffset extended instruction may be
-- rounded to as fixed-point values.
[$sel:subPixelInterpolationOffsetBits:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFramebufferWidth is the maximum width for a framebuffer.
-- The width member of the FramebufferCreateInfo
-- structure must be less than or equal to this limit.
[$sel:maxFramebufferWidth:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFramebufferHeight is the maximum height for a framebuffer.
-- The height member of the FramebufferCreateInfo
-- structure must be less than or equal to this limit.
[$sel:maxFramebufferHeight:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxFramebufferLayers is the maximum layer count for a layered
-- framebuffer. The layers member of the
-- FramebufferCreateInfo structure must be less than or
-- equal to this limit.
[$sel:maxFramebufferLayers:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | framebufferColorSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the color sample counts that are
-- supported for all framebuffer color attachments with floating- or
-- fixed-point formats. There is no limit that specifies the color sample
-- counts that are supported for all color attachments with integer
-- formats.
[$sel:framebufferColorSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | framebufferDepthSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the supported depth sample
-- counts for all framebuffer depth/stencil attachments, when the format
-- includes a depth component.
[$sel:framebufferDepthSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | framebufferStencilSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the supported stencil sample
-- counts for all framebuffer depth/stencil attachments, when the format
-- includes a stencil component.
[$sel:framebufferStencilSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | framebufferNoAttachmentsSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the supported sample counts for
-- a subpass which uses no attachments.
[$sel:framebufferNoAttachmentsSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | maxColorAttachments is the maximum number of color
-- attachments that can be used by a subpass in a render pass. The
-- colorAttachmentCount member of the SubpassDescription
-- structure must be less than or equal to this limit.
[$sel:maxColorAttachments:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | sampledImageColorSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the sample counts supported for
-- all 2D images created with IMAGE_TILING_OPTIMAL, usage
-- containing IMAGE_USAGE_SAMPLED_BIT, and a non-integer color
-- format.
[$sel:sampledImageColorSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | sampledImageIntegerSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the sample counts supported for
-- all 2D images created with IMAGE_TILING_OPTIMAL, usage
-- containing IMAGE_USAGE_SAMPLED_BIT, and an integer color
-- format.
[$sel:sampledImageIntegerSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | sampledImageDepthSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the sample counts supported for
-- all 2D images created with IMAGE_TILING_OPTIMAL, usage
-- containing IMAGE_USAGE_SAMPLED_BIT, and a depth format.
[$sel:sampledImageDepthSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | sampledImageStencilSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the sample supported for all 2D
-- images created with IMAGE_TILING_OPTIMAL, usage
-- containing IMAGE_USAGE_SAMPLED_BIT, and a stencil format.
[$sel:sampledImageStencilSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | storageImageSampleCounts is a bitmask1 of
-- SampleCountFlagBits indicating the sample counts supported for
-- all 2D images created with IMAGE_TILING_OPTIMAL, and
-- usage containing IMAGE_USAGE_STORAGE_BIT.
[$sel:storageImageSampleCounts:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> SampleCountFlags
-- | maxSampleMaskWords is the maximum number of array elements of
-- a variable decorated with the SampleMask built-in decoration.
[$sel:maxSampleMaskWords:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | timestampComputeAndGraphics specifies support for timestamps
-- on all graphics and compute queues. If this limit is set to
-- TRUE, all queues that advertise the QUEUE_GRAPHICS_BIT
-- or QUEUE_COMPUTE_BIT in the
-- QueueFamilyProperties::queueFlags support
-- QueueFamilyProperties::timestampValidBits of at least
-- 36. See Timestamp Queries.
[$sel:timestampComputeAndGraphics:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Bool
-- | timestampPeriod is the number of nanoseconds required
-- for a timestamp query to be incremented by 1. See Timestamp
-- Queries.
[$sel:timestampPeriod:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | maxClipDistances is the maximum number of clip distances that
-- can be used in a single shader stage. The size of any array
-- declared with the ClipDistance built-in decoration in a
-- shader module must be less than or equal to this limit.
[$sel:maxClipDistances:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxCullDistances is the maximum number of cull distances that
-- can be used in a single shader stage. The size of any array
-- declared with the CullDistance built-in decoration in a
-- shader module must be less than or equal to this limit.
[$sel:maxCullDistances:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | maxCombinedClipAndCullDistances is the maximum combined
-- number of clip and cull distances that can be used in a single
-- shader stage. The sum of the sizes of any pair of arrays declared with
-- the ClipDistance and CullDistance built-in
-- decoration used by a single shader stage in a shader module
-- must be less than or equal to this limit.
[$sel:maxCombinedClipAndCullDistances:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | discreteQueuePriorities is the number of discrete priorities
-- that can be assigned to a queue based on the value of each
-- member of DeviceQueueCreateInfo::pQueuePriorities.
-- This must be at least 2, and levels must be spread
-- evenly over the range, with at least one level at 1.0, and another at
-- 0.0. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#devsandqueues-priority.
[$sel:discreteQueuePriorities:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Word32
-- | pointSizeRange[2] is the range
-- [minimum,maximum] of supported sizes for points.
-- Values written to variables decorated with the PointSize
-- built-in decoration are clamped to this range.
[$sel:pointSizeRange:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> (Float, Float)
-- | lineWidthRange[2] is the range
-- [minimum,maximum] of supported widths for lines.
-- Values specified by the lineWidth member of the
-- PipelineRasterizationStateCreateInfo or the lineWidth
-- parameter to cmdSetLineWidth are clamped to this range.
[$sel:lineWidthRange:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> (Float, Float)
-- | pointSizeGranularity is the granularity of supported point
-- sizes. Not all point sizes in the range defined by
-- pointSizeRange are supported. This limit specifies the
-- granularity (or increment) between successive supported point sizes.
[$sel:pointSizeGranularity:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | lineWidthGranularity is the granularity of supported line
-- widths. Not all line widths in the range defined by
-- lineWidthRange are supported. This limit specifies the
-- granularity (or increment) between successive supported line widths.
[$sel:lineWidthGranularity:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Float
-- | strictLines specifies whether lines are rasterized according
-- to the preferred method of rasterization. If set to FALSE,
-- lines may be rasterized under a relaxed set of rules. If set to
-- TRUE, lines are rasterized as per the strict definition. See
-- Basic Line Segment Rasterization.
[$sel:strictLines:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Bool
-- | standardSampleLocations specifies whether rasterization uses
-- the standard sample locations as documented in Multisampling.
-- If set to TRUE, the implementation uses the documented sample
-- locations. If set to FALSE, the implementation may use
-- different sample locations.
[$sel:standardSampleLocations:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> Bool
-- | optimalBufferCopyOffsetAlignment is the optimal buffer offset
-- alignment in bytes for cmdCopyBufferToImage and
-- cmdCopyImageToBuffer. The per texel alignment requirements are
-- enforced, but applications should use the optimal alignment for
-- optimal performance and power use.
[$sel:optimalBufferCopyOffsetAlignment:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | optimalBufferCopyRowPitchAlignment is the optimal buffer row
-- pitch alignment in bytes for cmdCopyBufferToImage and
-- cmdCopyImageToBuffer. Row pitch is the number of bytes between
-- texels with the same X coordinate in adjacent rows (Y coordinates
-- differ by one). The per texel alignment requirements are enforced, but
-- applications should use the optimal alignment for optimal
-- performance and power use.
[$sel:optimalBufferCopyRowPitchAlignment:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | nonCoherentAtomSize is the size and alignment in bytes that
-- bounds concurrent access to host-mapped device memory.
[$sel:nonCoherentAtomSize:PhysicalDeviceLimits] :: PhysicalDeviceLimits -> DeviceSize
-- | VkInstance - Opaque handle to an instance object
--
-- See Also
--
-- createAndroidSurfaceKHR, createDebugReportCallbackEXT,
-- createDebugUtilsMessengerEXT,
-- createDisplayPlaneSurfaceKHR, createHeadlessSurfaceEXT,
-- createIOSSurfaceMVK, createImagePipeSurfaceFUCHSIA,
-- createInstance, createMacOSSurfaceMVK,
-- createMetalSurfaceEXT, createStreamDescriptorSurfaceGGP,
-- createViSurfaceNN, createWaylandSurfaceKHR,
-- createWin32SurfaceKHR, createXcbSurfaceKHR,
-- createXlibSurfaceKHR, debugReportMessageEXT,
-- destroyDebugReportCallbackEXT,
-- destroyDebugUtilsMessengerEXT, destroyInstance,
-- destroySurfaceKHR, enumeratePhysicalDeviceGroups,
-- enumeratePhysicalDeviceGroupsKHR,
-- enumeratePhysicalDevices, getInstanceProcAddr,
-- submitDebugUtilsMessageEXT
data Instance
Instance :: Ptr Instance_T -> InstanceCmds -> Instance
[$sel:instanceHandle:Instance] :: Instance -> Ptr Instance_T
[$sel:instanceCmds:Instance] :: Instance -> InstanceCmds
-- | VkPhysicalDevice - Opaque handle to a physical device object
--
-- See Also
--
-- DeviceGroupDeviceCreateInfo,
-- PhysicalDeviceGroupProperties, acquireXlibDisplayEXT,
-- createDevice, createDisplayModeKHR,
-- enumerateDeviceExtensionProperties,
-- enumerateDeviceLayerProperties,
-- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR,
-- enumeratePhysicalDevices, getDisplayModeProperties2KHR,
-- getDisplayModePropertiesKHR,
-- getDisplayPlaneCapabilities2KHR,
-- getDisplayPlaneCapabilitiesKHR,
-- getDisplayPlaneSupportedDisplaysKHR,
-- getPhysicalDeviceCalibrateableTimeDomainsEXT,
-- getPhysicalDeviceCooperativeMatrixPropertiesNV,
-- getPhysicalDeviceDisplayPlaneProperties2KHR,
-- getPhysicalDeviceDisplayPlanePropertiesKHR,
-- getPhysicalDeviceDisplayProperties2KHR,
-- getPhysicalDeviceDisplayPropertiesKHR,
-- getPhysicalDeviceExternalBufferProperties,
-- getPhysicalDeviceExternalBufferPropertiesKHR,
-- getPhysicalDeviceExternalFenceProperties,
-- getPhysicalDeviceExternalFencePropertiesKHR,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceExternalSemaphoreProperties,
-- getPhysicalDeviceExternalSemaphorePropertiesKHR,
-- getPhysicalDeviceFeatures, getPhysicalDeviceFeatures2,
-- getPhysicalDeviceFeatures2KHR,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceImageFormatProperties2,
-- getPhysicalDeviceImageFormatProperties2KHR,
-- getPhysicalDeviceMemoryProperties,
-- getPhysicalDeviceMemoryProperties2,
-- getPhysicalDeviceMemoryProperties2KHR,
-- getPhysicalDeviceMultisamplePropertiesEXT,
-- getPhysicalDevicePresentRectanglesKHR,
-- getPhysicalDeviceProperties,
-- getPhysicalDeviceProperties2,
-- getPhysicalDeviceProperties2KHR,
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR,
-- getPhysicalDeviceQueueFamilyProperties,
-- getPhysicalDeviceQueueFamilyProperties2,
-- getPhysicalDeviceQueueFamilyProperties2KHR,
-- getPhysicalDeviceSparseImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties2,
-- getPhysicalDeviceSparseImageFormatProperties2KHR,
-- getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV,
-- getPhysicalDeviceSurfaceCapabilities2EXT,
-- getPhysicalDeviceSurfaceCapabilities2KHR,
-- getPhysicalDeviceSurfaceCapabilitiesKHR,
-- getPhysicalDeviceSurfaceFormats2KHR,
-- getPhysicalDeviceSurfaceFormatsKHR,
-- getPhysicalDeviceSurfacePresentModes2EXT,
-- getPhysicalDeviceSurfacePresentModesKHR,
-- getPhysicalDeviceSurfaceSupportKHR,
-- getPhysicalDeviceToolPropertiesEXT,
-- getPhysicalDeviceWaylandPresentationSupportKHR,
-- getPhysicalDeviceWin32PresentationSupportKHR,
-- getPhysicalDeviceXcbPresentationSupportKHR,
-- getPhysicalDeviceXlibPresentationSupportKHR,
-- getRandROutputDisplayEXT, releaseDisplayEXT
data PhysicalDevice
PhysicalDevice :: Ptr PhysicalDevice_T -> InstanceCmds -> PhysicalDevice
[$sel:physicalDeviceHandle:PhysicalDevice] :: PhysicalDevice -> Ptr PhysicalDevice_T
[$sel:instanceCmds:PhysicalDevice] :: PhysicalDevice -> InstanceCmds
-- | VkAllocationCallbacks - Structure containing callback function
-- pointers for memory allocation
--
-- Valid Usage
--
--
--
--
-- - pfnReallocation must be a valid pointer to a valid
-- user-defined PFN_vkReallocationFunction
-- - pfnFree must be a valid pointer to a valid
-- user-defined PFN_vkFreeFunction
-- - If either of pfnInternalAllocation or
-- pfnInternalFree is not NULL, both must be
-- valid callbacks
--
--
-- See Also
--
-- PFN_vkAllocationFunction, PFN_vkFreeFunction,
-- PFN_vkInternalAllocationNotification,
-- PFN_vkInternalFreeNotification,
-- PFN_vkReallocationFunction, allocateMemory,
-- createAccelerationStructureKHR,
-- createAccelerationStructureNV, createAndroidSurfaceKHR,
-- createBuffer, createBufferView,
-- createCommandPool, createComputePipelines,
-- createDebugReportCallbackEXT,
-- createDebugUtilsMessengerEXT,
-- createDeferredOperationKHR, createDescriptorPool,
-- createDescriptorSetLayout,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR, createDevice,
-- createDisplayModeKHR, createDisplayPlaneSurfaceKHR,
-- createEvent, createFence, createFramebuffer,
-- createGraphicsPipelines, createHeadlessSurfaceEXT,
-- createIOSSurfaceMVK, createImage,
-- createImagePipeSurfaceFUCHSIA, createImageView,
-- createIndirectCommandsLayoutNV, createInstance,
-- createMacOSSurfaceMVK, createMetalSurfaceEXT,
-- createPipelineCache, createPipelineLayout,
-- createPrivateDataSlotEXT, createQueryPool,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, createRenderPass,
-- createRenderPass2, createRenderPass2KHR,
-- createSampler, createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR, createSemaphore,
-- createShaderModule, createSharedSwapchainsKHR,
-- createStreamDescriptorSurfaceGGP, createSwapchainKHR,
-- createValidationCacheEXT, createViSurfaceNN,
-- createWaylandSurfaceKHR, createWin32SurfaceKHR,
-- createXcbSurfaceKHR, createXlibSurfaceKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV, destroyBuffer,
-- destroyBufferView, destroyCommandPool,
-- destroyDebugReportCallbackEXT,
-- destroyDebugUtilsMessengerEXT,
-- destroyDeferredOperationKHR, destroyDescriptorPool,
-- destroyDescriptorSetLayout,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR, destroyDevice,
-- destroyEvent, destroyFence, destroyFramebuffer,
-- destroyImage, destroyImageView,
-- destroyIndirectCommandsLayoutNV, destroyInstance,
-- destroyPipeline, destroyPipelineCache,
-- destroyPipelineLayout, destroyPrivateDataSlotEXT,
-- destroyQueryPool, destroyRenderPass,
-- destroySampler, destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR, destroySemaphore,
-- destroyShaderModule, destroySurfaceKHR,
-- destroySwapchainKHR, destroyValidationCacheEXT,
-- freeMemory, registerDeviceEventEXT,
-- registerDisplayEventEXT
data AllocationCallbacks
AllocationCallbacks :: Ptr () -> PFN_vkAllocationFunction -> PFN_vkReallocationFunction -> PFN_vkFreeFunction -> PFN_vkInternalAllocationNotification -> PFN_vkInternalFreeNotification -> AllocationCallbacks
-- | pUserData is a value to be interpreted by the implementation
-- of the callbacks. When any of the callbacks in
-- AllocationCallbacks are called, the Vulkan implementation will
-- pass this value as the first parameter to the callback. This value
-- can vary each time an allocator is passed into a command, even
-- when the same object takes an allocator in multiple commands.
[$sel:userData:AllocationCallbacks] :: AllocationCallbacks -> Ptr ()
-- | pfnAllocation is a PFN_vkAllocationFunction pointer to
-- an application-defined memory allocation function.
[$sel:pfnAllocation:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkAllocationFunction
-- | pfnReallocation is a PFN_vkReallocationFunction
-- pointer to an application-defined memory reallocation function.
[$sel:pfnReallocation:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkReallocationFunction
-- | pfnFree is a PFN_vkFreeFunction pointer to an
-- application-defined memory free function.
[$sel:pfnFree:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkFreeFunction
-- | pfnInternalAllocation is a
-- PFN_vkInternalAllocationNotification pointer to an
-- application-defined function that is called by the implementation when
-- the implementation makes internal allocations.
[$sel:pfnInternalAllocation:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkInternalAllocationNotification
-- | pfnInternalFree is a PFN_vkInternalFreeNotification
-- pointer to an application-defined function that is called by the
-- implementation when the implementation frees internal allocations.
[$sel:pfnInternalFree:AllocationCallbacks] :: AllocationCallbacks -> PFN_vkInternalFreeNotification
-- | VkInstanceCreateFlags - Reserved for future use
--
-- Description
--
-- InstanceCreateFlags is a bitmask type for setting a mask, but
-- is currently reserved for future use.
--
-- See Also
--
-- InstanceCreateInfo
newtype InstanceCreateFlags
InstanceCreateFlags :: Flags -> InstanceCreateFlags
-- | VkImageType - Specifies the type of an image object
--
-- See Also
--
-- ImageCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype ImageType
ImageType :: Int32 -> ImageType
-- | IMAGE_TYPE_1D specifies a one-dimensional image.
pattern IMAGE_TYPE_1D :: ImageType
-- | IMAGE_TYPE_2D specifies a two-dimensional image.
pattern IMAGE_TYPE_2D :: ImageType
-- | IMAGE_TYPE_3D specifies a three-dimensional image.
pattern IMAGE_TYPE_3D :: ImageType
-- | VkImageTiling - Specifies the tiling arrangement of data in an image
--
-- See Also
--
-- ImageCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype ImageTiling
ImageTiling :: Int32 -> ImageTiling
-- | IMAGE_TILING_OPTIMAL specifies optimal tiling (texels are laid
-- out in an implementation-dependent arrangement, for more optimal
-- memory access).
pattern IMAGE_TILING_OPTIMAL :: ImageTiling
-- | IMAGE_TILING_LINEAR specifies linear tiling (texels are laid
-- out in memory in row-major order, possibly with some padding on each
-- row).
pattern IMAGE_TILING_LINEAR :: ImageTiling
-- | IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT indicates that the image’s
-- tiling is defined by a Linux DRM format modifier. The modifier
-- is specified at image creation with
-- ImageDrmFormatModifierListCreateInfoEXT or
-- ImageDrmFormatModifierExplicitCreateInfoEXT, and can be
-- queried with getImageDrmFormatModifierPropertiesEXT.
pattern IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT :: ImageTiling
-- | VkInternalAllocationType - Allocation type
--
-- See Also
--
-- PFN_vkInternalAllocationNotification,
-- PFN_vkInternalFreeNotification
newtype InternalAllocationType
InternalAllocationType :: Int32 -> InternalAllocationType
-- | INTERNAL_ALLOCATION_TYPE_EXECUTABLE specifies that the
-- allocation is intended for execution by the host.
pattern INTERNAL_ALLOCATION_TYPE_EXECUTABLE :: InternalAllocationType
-- | VkSystemAllocationScope - Allocation scope
--
-- Description
--
--
--
--
--
-- Most Vulkan commands operate on a single object, or there is a sole
-- object that is being created or manipulated. When an allocation uses
-- an allocation scope of SYSTEM_ALLOCATION_SCOPE_OBJECT or
-- SYSTEM_ALLOCATION_SCOPE_CACHE, the allocation is scoped to the
-- object being created or manipulated.
--
-- When an implementation requires host memory, it will make callbacks to
-- the application using the most specific allocator and allocation scope
-- available:
--
--
-- - If an allocation is scoped to the duration of a command, the
-- allocator will use the SYSTEM_ALLOCATION_SCOPE_COMMAND
-- allocation scope. The most specific allocator available is used: if
-- the object being created or manipulated has an allocator, that
-- object’s allocator will be used, else if the parent Device has
-- an allocator it will be used, else if the parent Instance has
-- an allocator it will be used. Else,
-- - If an allocation is associated with a ValidationCacheEXT or
-- PipelineCache object, the allocator will use the
-- SYSTEM_ALLOCATION_SCOPE_CACHE allocation scope. The most
-- specific allocator available is used (cache, else device, else
-- instance). Else,
-- - If an allocation is scoped to the lifetime of an object, that
-- object is being created or manipulated by the command, and that
-- object’s type is not Device or Instance, the allocator
-- will use an allocation scope of SYSTEM_ALLOCATION_SCOPE_OBJECT.
-- The most specific allocator available is used (object, else device,
-- else instance). Else,
-- - If an allocation is scoped to the lifetime of a device, the
-- allocator will use an allocation scope of
-- SYSTEM_ALLOCATION_SCOPE_DEVICE. The most specific allocator
-- available is used (device, else instance). Else,
-- - If the allocation is scoped to the lifetime of an instance and the
-- instance has an allocator, its allocator will be used with an
-- allocation scope of SYSTEM_ALLOCATION_SCOPE_INSTANCE.
-- - Otherwise an implementation will allocate memory through an
-- alternative mechanism that is unspecified.
--
--
-- See Also
--
-- AllocationCallbacks
newtype SystemAllocationScope
SystemAllocationScope :: Int32 -> SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_COMMAND :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_OBJECT :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_CACHE :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_DEVICE :: SystemAllocationScope
pattern SYSTEM_ALLOCATION_SCOPE_INSTANCE :: SystemAllocationScope
-- | VkPhysicalDeviceType - Supported physical device types
--
-- Description
--
-- The physical device type is advertised for informational purposes
-- only, and does not directly affect the operation of the system.
-- However, the device type may correlate with other advertised
-- properties or capabilities of the system, such as how many memory
-- heaps there are.
--
-- See Also
--
-- PhysicalDeviceProperties
newtype PhysicalDeviceType
PhysicalDeviceType :: Int32 -> PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_OTHER - the device does not match any
-- other available types.
pattern PHYSICAL_DEVICE_TYPE_OTHER :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU - the device is typically
-- one embedded in or tightly coupled with the host.
pattern PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_DISCRETE_GPU - the device is typically a
-- separate processor connected to the host via an interlink.
pattern PHYSICAL_DEVICE_TYPE_DISCRETE_GPU :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU - the device is typically a
-- virtual node in a virtualization environment.
pattern PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU :: PhysicalDeviceType
-- | PHYSICAL_DEVICE_TYPE_CPU - the device is typically running on
-- the same processors as the host.
pattern PHYSICAL_DEVICE_TYPE_CPU :: PhysicalDeviceType
-- | VkFormat - Available image formats
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AttachmentDescription, AttachmentDescription2,
-- BufferViewCreateInfo, FramebufferAttachmentImageInfo,
-- GeometryTrianglesNV, ImageCreateInfo,
-- ImageFormatListCreateInfo, ImageViewASTCDecodeModeEXT,
-- ImageViewCreateInfo, PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceSparseImageFormatInfo2,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerYcbcrConversionCreateInfo, SurfaceFormatKHR,
-- SwapchainCreateInfoKHR, VertexInputAttributeDescription,
-- getPhysicalDeviceExternalImageFormatPropertiesNV,
-- getPhysicalDeviceFormatProperties,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR,
-- getPhysicalDeviceImageFormatProperties,
-- getPhysicalDeviceSparseImageFormatProperties
newtype Format
Format :: Int32 -> Format
-- | FORMAT_UNDEFINED specifies that the format is not specified.
pattern FORMAT_UNDEFINED :: Format
-- | FORMAT_R4G4_UNORM_PACK8 specifies a two-component, 8-bit packed
-- unsigned normalized format that has a 4-bit R component in bits 4..7,
-- and a 4-bit G component in bits 0..3.
pattern FORMAT_R4G4_UNORM_PACK8 :: Format
-- | FORMAT_R4G4B4A4_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 4-bit R component in bits
-- 12..15, a 4-bit G component in bits 8..11, a 4-bit B component in bits
-- 4..7, and a 4-bit A component in bits 0..3.
pattern FORMAT_R4G4B4A4_UNORM_PACK16 :: Format
-- | FORMAT_B4G4R4A4_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 4-bit B component in bits
-- 12..15, a 4-bit G component in bits 8..11, a 4-bit R component in bits
-- 4..7, and a 4-bit A component in bits 0..3.
pattern FORMAT_B4G4R4A4_UNORM_PACK16 :: Format
-- | FORMAT_R5G6B5_UNORM_PACK16 specifies a three-component, 16-bit
-- packed unsigned normalized format that has a 5-bit R component in bits
-- 11..15, a 6-bit G component in bits 5..10, and a 5-bit B component in
-- bits 0..4.
pattern FORMAT_R5G6B5_UNORM_PACK16 :: Format
-- | FORMAT_B5G6R5_UNORM_PACK16 specifies a three-component, 16-bit
-- packed unsigned normalized format that has a 5-bit B component in bits
-- 11..15, a 6-bit G component in bits 5..10, and a 5-bit R component in
-- bits 0..4.
pattern FORMAT_B5G6R5_UNORM_PACK16 :: Format
-- | FORMAT_R5G5B5A1_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 5-bit R component in bits
-- 11..15, a 5-bit G component in bits 6..10, a 5-bit B component in bits
-- 1..5, and a 1-bit A component in bit 0.
pattern FORMAT_R5G5B5A1_UNORM_PACK16 :: Format
-- | FORMAT_B5G5R5A1_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 5-bit B component in bits
-- 11..15, a 5-bit G component in bits 6..10, a 5-bit R component in bits
-- 1..5, and a 1-bit A component in bit 0.
pattern FORMAT_B5G5R5A1_UNORM_PACK16 :: Format
-- | FORMAT_A1R5G5B5_UNORM_PACK16 specifies a four-component, 16-bit
-- packed unsigned normalized format that has a 1-bit A component in bit
-- 15, a 5-bit R component in bits 10..14, a 5-bit G component in bits
-- 5..9, and a 5-bit B component in bits 0..4.
pattern FORMAT_A1R5G5B5_UNORM_PACK16 :: Format
-- | FORMAT_R8_UNORM specifies a one-component, 8-bit unsigned
-- normalized format that has a single 8-bit R component.
pattern FORMAT_R8_UNORM :: Format
-- | FORMAT_R8_SNORM specifies a one-component, 8-bit signed
-- normalized format that has a single 8-bit R component.
pattern FORMAT_R8_SNORM :: Format
-- | FORMAT_R8_USCALED specifies a one-component, 8-bit unsigned
-- scaled integer format that has a single 8-bit R component.
pattern FORMAT_R8_USCALED :: Format
-- | FORMAT_R8_SSCALED specifies a one-component, 8-bit signed
-- scaled integer format that has a single 8-bit R component.
pattern FORMAT_R8_SSCALED :: Format
-- | FORMAT_R8_UINT specifies a one-component, 8-bit unsigned
-- integer format that has a single 8-bit R component.
pattern FORMAT_R8_UINT :: Format
-- | FORMAT_R8_SINT specifies a one-component, 8-bit signed integer
-- format that has a single 8-bit R component.
pattern FORMAT_R8_SINT :: Format
-- | FORMAT_R8_SRGB specifies a one-component, 8-bit unsigned
-- normalized format that has a single 8-bit R component stored with sRGB
-- nonlinear encoding.
pattern FORMAT_R8_SRGB :: Format
-- | FORMAT_R8G8_UNORM specifies a two-component, 16-bit unsigned
-- normalized format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_UNORM :: Format
-- | FORMAT_R8G8_SNORM specifies a two-component, 16-bit signed
-- normalized format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_SNORM :: Format
-- | FORMAT_R8G8_USCALED specifies a two-component, 16-bit unsigned
-- scaled integer format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_USCALED :: Format
-- | FORMAT_R8G8_SSCALED specifies a two-component, 16-bit signed
-- scaled integer format that has an 8-bit R component in byte 0, and an
-- 8-bit G component in byte 1.
pattern FORMAT_R8G8_SSCALED :: Format
-- | FORMAT_R8G8_UINT specifies a two-component, 16-bit unsigned
-- integer format that has an 8-bit R component in byte 0, and an 8-bit G
-- component in byte 1.
pattern FORMAT_R8G8_UINT :: Format
-- | FORMAT_R8G8_SINT specifies a two-component, 16-bit signed
-- integer format that has an 8-bit R component in byte 0, and an 8-bit G
-- component in byte 1.
pattern FORMAT_R8G8_SINT :: Format
-- | FORMAT_R8G8_SRGB specifies a two-component, 16-bit unsigned
-- normalized format that has an 8-bit R component stored with sRGB
-- nonlinear encoding in byte 0, and an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1.
pattern FORMAT_R8G8_SRGB :: Format
-- | FORMAT_R8G8B8_UNORM specifies a three-component, 24-bit
-- unsigned normalized format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_UNORM :: Format
-- | FORMAT_R8G8B8_SNORM specifies a three-component, 24-bit signed
-- normalized format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SNORM :: Format
-- | FORMAT_R8G8B8_USCALED specifies a three-component, 24-bit
-- unsigned scaled format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_USCALED :: Format
-- | FORMAT_R8G8B8_SSCALED specifies a three-component, 24-bit
-- signed scaled format that has an 8-bit R component in byte 0, an 8-bit
-- G component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SSCALED :: Format
-- | FORMAT_R8G8B8_UINT specifies a three-component, 24-bit unsigned
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_UINT :: Format
-- | FORMAT_R8G8B8_SINT specifies a three-component, 24-bit signed
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit B component in byte 2.
pattern FORMAT_R8G8B8_SINT :: Format
-- | FORMAT_R8G8B8_SRGB specifies a three-component, 24-bit unsigned
-- normalized format that has an 8-bit R component stored with sRGB
-- nonlinear encoding in byte 0, an 8-bit G component stored with sRGB
-- nonlinear encoding in byte 1, and an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 2.
pattern FORMAT_R8G8B8_SRGB :: Format
-- | FORMAT_B8G8R8_UNORM specifies a three-component, 24-bit
-- unsigned normalized format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_UNORM :: Format
-- | FORMAT_B8G8R8_SNORM specifies a three-component, 24-bit signed
-- normalized format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SNORM :: Format
-- | FORMAT_B8G8R8_USCALED specifies a three-component, 24-bit
-- unsigned scaled format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_USCALED :: Format
-- | FORMAT_B8G8R8_SSCALED specifies a three-component, 24-bit
-- signed scaled format that has an 8-bit B component in byte 0, an 8-bit
-- G component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SSCALED :: Format
-- | FORMAT_B8G8R8_UINT specifies a three-component, 24-bit unsigned
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_UINT :: Format
-- | FORMAT_B8G8R8_SINT specifies a three-component, 24-bit signed
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, and an 8-bit R component in byte 2.
pattern FORMAT_B8G8R8_SINT :: Format
-- | FORMAT_B8G8R8_SRGB specifies a three-component, 24-bit unsigned
-- normalized format that has an 8-bit B component stored with sRGB
-- nonlinear encoding in byte 0, an 8-bit G component stored with sRGB
-- nonlinear encoding in byte 1, and an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 2.
pattern FORMAT_B8G8R8_SRGB :: Format
-- | FORMAT_R8G8B8A8_UNORM specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_UNORM :: Format
-- | FORMAT_R8G8B8A8_SNORM specifies a four-component, 32-bit signed
-- normalized format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SNORM :: Format
-- | FORMAT_R8G8B8A8_USCALED specifies a four-component, 32-bit
-- unsigned scaled format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_USCALED :: Format
-- | FORMAT_R8G8B8A8_SSCALED specifies a four-component, 32-bit
-- signed scaled format that has an 8-bit R component in byte 0, an 8-bit
-- G component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SSCALED :: Format
-- | FORMAT_R8G8B8A8_UINT specifies a four-component, 32-bit
-- unsigned integer format that has an 8-bit R component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit B component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_UINT :: Format
-- | FORMAT_R8G8B8A8_SINT specifies a four-component, 32-bit signed
-- integer format that has an 8-bit R component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit B component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_R8G8B8A8_SINT :: Format
-- | FORMAT_R8G8B8A8_SRGB specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 0, an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1, an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 2, and an 8-bit A component in byte 3.
pattern FORMAT_R8G8B8A8_SRGB :: Format
-- | FORMAT_B8G8R8A8_UNORM specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_UNORM :: Format
-- | FORMAT_B8G8R8A8_SNORM specifies a four-component, 32-bit signed
-- normalized format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SNORM :: Format
-- | FORMAT_B8G8R8A8_USCALED specifies a four-component, 32-bit
-- unsigned scaled format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_USCALED :: Format
-- | FORMAT_B8G8R8A8_SSCALED specifies a four-component, 32-bit
-- signed scaled format that has an 8-bit B component in byte 0, an 8-bit
-- G component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SSCALED :: Format
-- | FORMAT_B8G8R8A8_UINT specifies a four-component, 32-bit
-- unsigned integer format that has an 8-bit B component in byte 0, an
-- 8-bit G component in byte 1, an 8-bit R component in byte 2, and an
-- 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_UINT :: Format
-- | FORMAT_B8G8R8A8_SINT specifies a four-component, 32-bit signed
-- integer format that has an 8-bit B component in byte 0, an 8-bit G
-- component in byte 1, an 8-bit R component in byte 2, and an 8-bit A
-- component in byte 3.
pattern FORMAT_B8G8R8A8_SINT :: Format
-- | FORMAT_B8G8R8A8_SRGB specifies a four-component, 32-bit
-- unsigned normalized format that has an 8-bit B component stored with
-- sRGB nonlinear encoding in byte 0, an 8-bit G component stored with
-- sRGB nonlinear encoding in byte 1, an 8-bit R component stored with
-- sRGB nonlinear encoding in byte 2, and an 8-bit A component in byte 3.
pattern FORMAT_B8G8R8A8_SRGB :: Format
-- | FORMAT_A8B8G8R8_UNORM_PACK32 specifies a four-component, 32-bit
-- packed unsigned normalized format that has an 8-bit A component in
-- bits 24..31, an 8-bit B component in bits 16..23, an 8-bit G component
-- in bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_UNORM_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SNORM_PACK32 specifies a four-component, 32-bit
-- packed signed normalized format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_SNORM_PACK32 :: Format
-- | FORMAT_A8B8G8R8_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has an 8-bit A
-- component in bits 24..31, an 8-bit B component in bits 16..23, an
-- 8-bit G component in bits 8..15, and an 8-bit R component in bits
-- 0..7.
pattern FORMAT_A8B8G8R8_USCALED_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has an 8-bit A
-- component in bits 24..31, an 8-bit B component in bits 16..23, an
-- 8-bit G component in bits 8..15, and an 8-bit R component in bits
-- 0..7.
pattern FORMAT_A8B8G8R8_SSCALED_PACK32 :: Format
-- | FORMAT_A8B8G8R8_UINT_PACK32 specifies a four-component, 32-bit
-- packed unsigned integer format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_UINT_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SINT_PACK32 specifies a four-component, 32-bit
-- packed signed integer format that has an 8-bit A component in bits
-- 24..31, an 8-bit B component in bits 16..23, an 8-bit G component in
-- bits 8..15, and an 8-bit R component in bits 0..7.
pattern FORMAT_A8B8G8R8_SINT_PACK32 :: Format
-- | FORMAT_A8B8G8R8_SRGB_PACK32 specifies a four-component, 32-bit
-- packed unsigned normalized format that has an 8-bit A component in
-- bits 24..31, an 8-bit B component stored with sRGB nonlinear encoding
-- in bits 16..23, an 8-bit G component stored with sRGB nonlinear
-- encoding in bits 8..15, and an 8-bit R component stored with sRGB
-- nonlinear encoding in bits 0..7.
pattern FORMAT_A8B8G8R8_SRGB_PACK32 :: Format
-- | FORMAT_A2R10G10B10_UNORM_PACK32 specifies a four-component,
-- 32-bit packed unsigned normalized format that has a 2-bit A component
-- in bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G
-- component in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_UNORM_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SNORM_PACK32 specifies a four-component,
-- 32-bit packed signed normalized format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_SNORM_PACK32 :: Format
-- | FORMAT_A2R10G10B10_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit R component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit B component in bits
-- 0..9.
pattern FORMAT_A2R10G10B10_USCALED_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit R component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit B component in bits
-- 0..9.
pattern FORMAT_A2R10G10B10_SSCALED_PACK32 :: Format
-- | FORMAT_A2R10G10B10_UINT_PACK32 specifies a four-component,
-- 32-bit packed unsigned integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_UINT_PACK32 :: Format
-- | FORMAT_A2R10G10B10_SINT_PACK32 specifies a four-component,
-- 32-bit packed signed integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit R component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit B component in bits 0..9.
pattern FORMAT_A2R10G10B10_SINT_PACK32 :: Format
-- | FORMAT_A2B10G10R10_UNORM_PACK32 specifies a four-component,
-- 32-bit packed unsigned normalized format that has a 2-bit A component
-- in bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G
-- component in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_UNORM_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SNORM_PACK32 specifies a four-component,
-- 32-bit packed signed normalized format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_SNORM_PACK32 :: Format
-- | FORMAT_A2B10G10R10_USCALED_PACK32 specifies a four-component,
-- 32-bit packed unsigned scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit B component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit R component in bits
-- 0..9.
pattern FORMAT_A2B10G10R10_USCALED_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SSCALED_PACK32 specifies a four-component,
-- 32-bit packed signed scaled integer format that has a 2-bit A
-- component in bits 30..31, a 10-bit B component in bits 20..29, a
-- 10-bit G component in bits 10..19, and a 10-bit R component in bits
-- 0..9.
pattern FORMAT_A2B10G10R10_SSCALED_PACK32 :: Format
-- | FORMAT_A2B10G10R10_UINT_PACK32 specifies a four-component,
-- 32-bit packed unsigned integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_UINT_PACK32 :: Format
-- | FORMAT_A2B10G10R10_SINT_PACK32 specifies a four-component,
-- 32-bit packed signed integer format that has a 2-bit A component in
-- bits 30..31, a 10-bit B component in bits 20..29, a 10-bit G component
-- in bits 10..19, and a 10-bit R component in bits 0..9.
pattern FORMAT_A2B10G10R10_SINT_PACK32 :: Format
-- | FORMAT_R16_UNORM specifies a one-component, 16-bit unsigned
-- normalized format that has a single 16-bit R component.
pattern FORMAT_R16_UNORM :: Format
-- | FORMAT_R16_SNORM specifies a one-component, 16-bit signed
-- normalized format that has a single 16-bit R component.
pattern FORMAT_R16_SNORM :: Format
-- | FORMAT_R16_USCALED specifies a one-component, 16-bit unsigned
-- scaled integer format that has a single 16-bit R component.
pattern FORMAT_R16_USCALED :: Format
-- | FORMAT_R16_SSCALED specifies a one-component, 16-bit signed
-- scaled integer format that has a single 16-bit R component.
pattern FORMAT_R16_SSCALED :: Format
-- | FORMAT_R16_UINT specifies a one-component, 16-bit unsigned
-- integer format that has a single 16-bit R component.
pattern FORMAT_R16_UINT :: Format
-- | FORMAT_R16_SINT specifies a one-component, 16-bit signed
-- integer format that has a single 16-bit R component.
pattern FORMAT_R16_SINT :: Format
-- | FORMAT_R16_SFLOAT specifies a one-component, 16-bit signed
-- floating-point format that has a single 16-bit R component.
pattern FORMAT_R16_SFLOAT :: Format
-- | FORMAT_R16G16_UNORM specifies a two-component, 32-bit unsigned
-- normalized format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_UNORM :: Format
-- | FORMAT_R16G16_SNORM specifies a two-component, 32-bit signed
-- normalized format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SNORM :: Format
-- | FORMAT_R16G16_USCALED specifies a two-component, 32-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, and a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_USCALED :: Format
-- | FORMAT_R16G16_SSCALED specifies a two-component, 32-bit signed
-- scaled integer format that has a 16-bit R component in bytes 0..1, and
-- a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SSCALED :: Format
-- | FORMAT_R16G16_UINT specifies a two-component, 32-bit unsigned
-- integer format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_UINT :: Format
-- | FORMAT_R16G16_SINT specifies a two-component, 32-bit signed
-- integer format that has a 16-bit R component in bytes 0..1, and a
-- 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SINT :: Format
-- | FORMAT_R16G16_SFLOAT specifies a two-component, 32-bit signed
-- floating-point format that has a 16-bit R component in bytes 0..1, and
-- a 16-bit G component in bytes 2..3.
pattern FORMAT_R16G16_SFLOAT :: Format
-- | FORMAT_R16G16B16_UNORM specifies a three-component, 48-bit
-- unsigned normalized format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_UNORM :: Format
-- | FORMAT_R16G16B16_SNORM specifies a three-component, 48-bit
-- signed normalized format that has a 16-bit R component in bytes 0..1,
-- a 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_SNORM :: Format
-- | FORMAT_R16G16B16_USCALED specifies a three-component, 48-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_USCALED :: Format
-- | FORMAT_R16G16B16_SSCALED specifies a three-component, 48-bit
-- signed scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_SSCALED :: Format
-- | FORMAT_R16G16B16_UINT specifies a three-component, 48-bit
-- unsigned integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_UINT :: Format
-- | FORMAT_R16G16B16_SINT specifies a three-component, 48-bit
-- signed integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, and a 16-bit B component in bytes
-- 4..5.
pattern FORMAT_R16G16B16_SINT :: Format
-- | FORMAT_R16G16B16_SFLOAT specifies a three-component, 48-bit
-- signed floating-point format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, and a 16-bit B component in
-- bytes 4..5.
pattern FORMAT_R16G16B16_SFLOAT :: Format
-- | FORMAT_R16G16B16A16_UNORM specifies a four-component, 64-bit
-- unsigned normalized format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_UNORM :: Format
-- | FORMAT_R16G16B16A16_SNORM specifies a four-component, 64-bit
-- signed normalized format that has a 16-bit R component in bytes 0..1,
-- a 16-bit G component in bytes 2..3, a 16-bit B component in bytes
-- 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SNORM :: Format
-- | FORMAT_R16G16B16A16_USCALED specifies a four-component, 64-bit
-- unsigned scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_USCALED :: Format
-- | FORMAT_R16G16B16A16_SSCALED specifies a four-component, 64-bit
-- signed scaled integer format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SSCALED :: Format
-- | FORMAT_R16G16B16A16_UINT specifies a four-component, 64-bit
-- unsigned integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, a 16-bit B component in bytes 4..5,
-- and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_UINT :: Format
-- | FORMAT_R16G16B16A16_SINT specifies a four-component, 64-bit
-- signed integer format that has a 16-bit R component in bytes 0..1, a
-- 16-bit G component in bytes 2..3, a 16-bit B component in bytes 4..5,
-- and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SINT :: Format
-- | FORMAT_R16G16B16A16_SFLOAT specifies a four-component, 64-bit
-- signed floating-point format that has a 16-bit R component in bytes
-- 0..1, a 16-bit G component in bytes 2..3, a 16-bit B component in
-- bytes 4..5, and a 16-bit A component in bytes 6..7.
pattern FORMAT_R16G16B16A16_SFLOAT :: Format
-- | FORMAT_R32_UINT specifies a one-component, 32-bit unsigned
-- integer format that has a single 32-bit R component.
pattern FORMAT_R32_UINT :: Format
-- | FORMAT_R32_SINT specifies a one-component, 32-bit signed
-- integer format that has a single 32-bit R component.
pattern FORMAT_R32_SINT :: Format
-- | FORMAT_R32_SFLOAT specifies a one-component, 32-bit signed
-- floating-point format that has a single 32-bit R component.
pattern FORMAT_R32_SFLOAT :: Format
-- | FORMAT_R32G32_UINT specifies a two-component, 64-bit unsigned
-- integer format that has a 32-bit R component in bytes 0..3, and a
-- 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_UINT :: Format
-- | FORMAT_R32G32_SINT specifies a two-component, 64-bit signed
-- integer format that has a 32-bit R component in bytes 0..3, and a
-- 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_SINT :: Format
-- | FORMAT_R32G32_SFLOAT specifies a two-component, 64-bit signed
-- floating-point format that has a 32-bit R component in bytes 0..3, and
-- a 32-bit G component in bytes 4..7.
pattern FORMAT_R32G32_SFLOAT :: Format
-- | FORMAT_R32G32B32_UINT specifies a three-component, 96-bit
-- unsigned integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, and a 32-bit B component in bytes
-- 8..11.
pattern FORMAT_R32G32B32_UINT :: Format
-- | FORMAT_R32G32B32_SINT specifies a three-component, 96-bit
-- signed integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, and a 32-bit B component in bytes
-- 8..11.
pattern FORMAT_R32G32B32_SINT :: Format
-- | FORMAT_R32G32B32_SFLOAT specifies a three-component, 96-bit
-- signed floating-point format that has a 32-bit R component in bytes
-- 0..3, a 32-bit G component in bytes 4..7, and a 32-bit B component in
-- bytes 8..11.
pattern FORMAT_R32G32B32_SFLOAT :: Format
-- | FORMAT_R32G32B32A32_UINT specifies a four-component, 128-bit
-- unsigned integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, a 32-bit B component in bytes 8..11,
-- and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_UINT :: Format
-- | FORMAT_R32G32B32A32_SINT specifies a four-component, 128-bit
-- signed integer format that has a 32-bit R component in bytes 0..3, a
-- 32-bit G component in bytes 4..7, a 32-bit B component in bytes 8..11,
-- and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_SINT :: Format
-- | FORMAT_R32G32B32A32_SFLOAT specifies a four-component, 128-bit
-- signed floating-point format that has a 32-bit R component in bytes
-- 0..3, a 32-bit G component in bytes 4..7, a 32-bit B component in
-- bytes 8..11, and a 32-bit A component in bytes 12..15.
pattern FORMAT_R32G32B32A32_SFLOAT :: Format
-- | FORMAT_R64_UINT specifies a one-component, 64-bit unsigned
-- integer format that has a single 64-bit R component.
pattern FORMAT_R64_UINT :: Format
-- | FORMAT_R64_SINT specifies a one-component, 64-bit signed
-- integer format that has a single 64-bit R component.
pattern FORMAT_R64_SINT :: Format
-- | FORMAT_R64_SFLOAT specifies a one-component, 64-bit signed
-- floating-point format that has a single 64-bit R component.
pattern FORMAT_R64_SFLOAT :: Format
-- | FORMAT_R64G64_UINT specifies a two-component, 128-bit unsigned
-- integer format that has a 64-bit R component in bytes 0..7, and a
-- 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_UINT :: Format
-- | FORMAT_R64G64_SINT specifies a two-component, 128-bit signed
-- integer format that has a 64-bit R component in bytes 0..7, and a
-- 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_SINT :: Format
-- | FORMAT_R64G64_SFLOAT specifies a two-component, 128-bit signed
-- floating-point format that has a 64-bit R component in bytes 0..7, and
-- a 64-bit G component in bytes 8..15.
pattern FORMAT_R64G64_SFLOAT :: Format
-- | FORMAT_R64G64B64_UINT specifies a three-component, 192-bit
-- unsigned integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, and a 64-bit B component in bytes
-- 16..23.
pattern FORMAT_R64G64B64_UINT :: Format
-- | FORMAT_R64G64B64_SINT specifies a three-component, 192-bit
-- signed integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, and a 64-bit B component in bytes
-- 16..23.
pattern FORMAT_R64G64B64_SINT :: Format
-- | FORMAT_R64G64B64_SFLOAT specifies a three-component, 192-bit
-- signed floating-point format that has a 64-bit R component in bytes
-- 0..7, a 64-bit G component in bytes 8..15, and a 64-bit B component in
-- bytes 16..23.
pattern FORMAT_R64G64B64_SFLOAT :: Format
-- | FORMAT_R64G64B64A64_UINT specifies a four-component, 256-bit
-- unsigned integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, a 64-bit B component in bytes
-- 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_UINT :: Format
-- | FORMAT_R64G64B64A64_SINT specifies a four-component, 256-bit
-- signed integer format that has a 64-bit R component in bytes 0..7, a
-- 64-bit G component in bytes 8..15, a 64-bit B component in bytes
-- 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_SINT :: Format
-- | FORMAT_R64G64B64A64_SFLOAT specifies a four-component, 256-bit
-- signed floating-point format that has a 64-bit R component in bytes
-- 0..7, a 64-bit G component in bytes 8..15, a 64-bit B component in
-- bytes 16..23, and a 64-bit A component in bytes 24..31.
pattern FORMAT_R64G64B64A64_SFLOAT :: Format
-- | FORMAT_B10G11R11_UFLOAT_PACK32 specifies a three-component,
-- 32-bit packed unsigned floating-point format that has a 10-bit B
-- component in bits 22..31, an 11-bit G component in bits 11..21, an
-- 11-bit R component in bits 0..10. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fundamentals-fp10
-- and
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#fundamentals-fp11.
pattern FORMAT_B10G11R11_UFLOAT_PACK32 :: Format
-- | FORMAT_E5B9G9R9_UFLOAT_PACK32 specifies a three-component,
-- 32-bit packed unsigned floating-point format that has a 5-bit shared
-- exponent in bits 27..31, a 9-bit B component mantissa in bits 18..26,
-- a 9-bit G component mantissa in bits 9..17, and a 9-bit R component
-- mantissa in bits 0..8.
pattern FORMAT_E5B9G9R9_UFLOAT_PACK32 :: Format
-- | FORMAT_D16_UNORM specifies a one-component, 16-bit unsigned
-- normalized format that has a single 16-bit depth component.
pattern FORMAT_D16_UNORM :: Format
-- | FORMAT_X8_D24_UNORM_PACK32 specifies a two-component, 32-bit
-- format that has 24 unsigned normalized bits in the depth component
-- and, optionally:, 8 bits that are unused.
pattern FORMAT_X8_D24_UNORM_PACK32 :: Format
-- | FORMAT_D32_SFLOAT specifies a one-component, 32-bit signed
-- floating-point format that has 32-bits in the depth component.
pattern FORMAT_D32_SFLOAT :: Format
-- | FORMAT_S8_UINT specifies a one-component, 8-bit unsigned
-- integer format that has 8-bits in the stencil component.
pattern FORMAT_S8_UINT :: Format
-- | FORMAT_D16_UNORM_S8_UINT specifies a two-component, 24-bit
-- format that has 16 unsigned normalized bits in the depth component and
-- 8 unsigned integer bits in the stencil component.
pattern FORMAT_D16_UNORM_S8_UINT :: Format
-- | FORMAT_D24_UNORM_S8_UINT specifies a two-component, 32-bit
-- packed format that has 8 unsigned integer bits in the stencil
-- component, and 24 unsigned normalized bits in the depth component.
pattern FORMAT_D24_UNORM_S8_UINT :: Format
-- | FORMAT_D32_SFLOAT_S8_UINT specifies a two-component format that
-- has 32 signed float bits in the depth component and 8 unsigned integer
-- bits in the stencil component. There are optionally: 24-bits that are
-- unused.
pattern FORMAT_D32_SFLOAT_S8_UINT :: Format
-- | FORMAT_BC1_RGB_UNORM_BLOCK specifies a three-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data. This
-- format has no alpha and is considered opaque.
pattern FORMAT_BC1_RGB_UNORM_BLOCK :: Format
-- | FORMAT_BC1_RGB_SRGB_BLOCK specifies a three-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding. This format has no alpha and is considered
-- opaque.
pattern FORMAT_BC1_RGB_SRGB_BLOCK :: Format
-- | FORMAT_BC1_RGBA_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data, and
-- provides 1 bit of alpha.
pattern FORMAT_BC1_RGBA_UNORM_BLOCK :: Format
-- | FORMAT_BC1_RGBA_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding, and provides 1 bit of alpha.
pattern FORMAT_BC1_RGBA_SRGB_BLOCK :: Format
-- | FORMAT_BC2_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_BC2_UNORM_BLOCK :: Format
-- | FORMAT_BC2_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding.
pattern FORMAT_BC2_SRGB_BLOCK :: Format
-- | FORMAT_BC3_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_BC3_UNORM_BLOCK :: Format
-- | FORMAT_BC3_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding.
pattern FORMAT_BC3_SRGB_BLOCK :: Format
-- | FORMAT_BC4_UNORM_BLOCK specifies a one-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized red texel data.
pattern FORMAT_BC4_UNORM_BLOCK :: Format
-- | FORMAT_BC4_SNORM_BLOCK specifies a one-component,
-- block-compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of signed normalized red texel data.
pattern FORMAT_BC4_SNORM_BLOCK :: Format
-- | FORMAT_BC5_UNORM_BLOCK specifies a two-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RG texel data with the
-- first 64 bits encoding red values followed by 64 bits encoding green
-- values.
pattern FORMAT_BC5_UNORM_BLOCK :: Format
-- | FORMAT_BC5_SNORM_BLOCK specifies a two-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed normalized RG texel data with the
-- first 64 bits encoding red values followed by 64 bits encoding green
-- values.
pattern FORMAT_BC5_SNORM_BLOCK :: Format
-- | FORMAT_BC6H_UFLOAT_BLOCK specifies a three-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned floating-point RGB texel data.
pattern FORMAT_BC6H_UFLOAT_BLOCK :: Format
-- | FORMAT_BC6H_SFLOAT_BLOCK specifies a three-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed floating-point RGB texel data.
pattern FORMAT_BC6H_SFLOAT_BLOCK :: Format
-- | FORMAT_BC7_UNORM_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_BC7_UNORM_BLOCK :: Format
-- | FORMAT_BC7_SRGB_BLOCK specifies a four-component,
-- block-compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_BC7_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8_UNORM_BLOCK specifies a three-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data. This
-- format has no alpha and is considered opaque.
pattern FORMAT_ETC2_R8G8B8_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8_SRGB_BLOCK specifies a three-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGB texel data with sRGB
-- nonlinear encoding. This format has no alpha and is considered opaque.
pattern FORMAT_ETC2_R8G8B8_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK specifies a four-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data, and
-- provides 1 bit of alpha.
pattern FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK specifies a four-component,
-- ETC2 compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGB texel data with
-- sRGB nonlinear encoding, and provides 1 bit of alpha.
pattern FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK specifies a four-component,
-- ETC2 compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values.
pattern FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK :: Format
-- | FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK specifies a four-component,
-- ETC2 compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- the first 64 bits encoding alpha values followed by 64 bits encoding
-- RGB values with sRGB nonlinear encoding applied.
pattern FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK :: Format
-- | FORMAT_EAC_R11_UNORM_BLOCK specifies a one-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized red texel data.
pattern FORMAT_EAC_R11_UNORM_BLOCK :: Format
-- | FORMAT_EAC_R11_SNORM_BLOCK specifies a one-component, ETC2
-- compressed format where each 64-bit compressed texel block encodes a
-- 4×4 rectangle of signed normalized red texel data.
pattern FORMAT_EAC_R11_SNORM_BLOCK :: Format
-- | FORMAT_EAC_R11G11_UNORM_BLOCK specifies a two-component, ETC2
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RG texel data with the first 64
-- bits encoding red values followed by 64 bits encoding green values.
pattern FORMAT_EAC_R11G11_UNORM_BLOCK :: Format
-- | FORMAT_EAC_R11G11_SNORM_BLOCK specifies a two-component, ETC2
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of signed normalized RG texel data with the first 64
-- bits encoding red values followed by 64 bits encoding green values.
pattern FORMAT_EAC_R11G11_SNORM_BLOCK :: Format
-- | FORMAT_ASTC_4x4_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_4x4_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_4x4_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 4×4 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_4x4_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_5x4_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_5x4_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_5x4_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×4 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_5x4_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_5x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_5x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_5x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 5×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_5x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_6x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_6x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_6x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_6x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_6x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_6x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_6x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 6×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_6x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_8x8_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×8 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_8x8_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_8x8_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes an
-- 8×8 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_8x8_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x5_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×5 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x5_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x5_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×5 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x5_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x6_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×6 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x6_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x6_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×6 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x6_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x8_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×8 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x8_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x8_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×8 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x8_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_10x10_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×10 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_10x10_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_10x10_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 10×10 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_10x10_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x10_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×10 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_12x10_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_12x10_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×10 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_12x10_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x12_UNORM_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×12 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_ASTC_12x12_UNORM_BLOCK :: Format
-- | FORMAT_ASTC_12x12_SRGB_BLOCK specifies a four-component, ASTC
-- compressed format where each 128-bit compressed texel block encodes a
-- 12×12 rectangle of unsigned normalized RGBA texel data with sRGB
-- nonlinear encoding applied to the RGB components.
pattern FORMAT_ASTC_12x12_SRGB_BLOCK :: Format
-- | FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 12×12 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 12×10 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×10 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×8 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 10×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×8 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 8×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 6×6 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 6×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 5×5 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 5×4 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT specifies a four-component,
-- ASTC compressed format where each 128-bit compressed texel block
-- encodes a 4×4 rectangle of signed floating-point RGBA texel data.
pattern FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT :: Format
-- | FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data with
-- sRGB nonlinear encoding applied to the RGB components.
pattern FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes a 4×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG specifies a four-component,
-- PVRTC compressed format where each 64-bit compressed texel block
-- encodes an 8×4 rectangle of unsigned normalized RGBA texel data.
pattern FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG :: Format
-- | FORMAT_G16_B16_R16_3PLANE_444_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- Each plane has the same dimensions and each R, G and B component
-- contributes to a single texel. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G16_B16_R16_3PLANE_444_UNORM :: Format
-- | FORMAT_G16_B16R16_2PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, and a two-component, 32-bit BR plane 1
-- consisting of a 16-bit B component in the word in bytes 0..1, and a
-- 16-bit R component in the word in bytes 2..3. The horizontal
-- dimensions of the BR plane is halved relative to the image dimensions,
-- and each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G16_B16R16_2PLANE_422_UNORM :: Format
-- | FORMAT_G16_B16_R16_3PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- The horizontal dimension of the R and B plane is halved relative to
-- the image dimensions, and each R and B value is shared with the G
-- components for which <math>. The location of each plane when
-- this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G16_B16_R16_3PLANE_422_UNORM :: Format
-- | FORMAT_G16_B16R16_2PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, and a two-component, 32-bit BR plane 1
-- consisting of a 16-bit B component in the word in bytes 0..1, and a
-- 16-bit R component in the word in bytes 2..3. The horizontal and
-- vertical dimensions of the BR plane is halved relative to the image
-- dimensions, and each R and B value is shared with the G components for
-- which (lfloor i_G times 0.5 rfloor = i_B = i_R) and <math>. The
-- location of each plane when this image is in linear layout can be
-- determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G16_B16R16_2PLANE_420_UNORM :: Format
-- | FORMAT_G16_B16_R16_3PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has a 16-bit G component in
-- each 16-bit word of plane 0, a 16-bit B component in each 16-bit word
-- of plane 1, and a 16-bit R component in each 16-bit word of plane 2.
-- The horizontal and vertical dimensions of the R and B planes are
-- halved relative to the image dimensions, and each R and B component is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and (lfloor j_G times 0.5 rfloor = j_B = j_R). The location
-- of each plane when this image is in linear layout can be determined
-- via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G16_B16_R16_3PLANE_420_UNORM :: Format
-- | FORMAT_B16G16R16G16_422_UNORM specifies a four-component,
-- 64-bit format containing a pair of G components, an R component, and a
-- B component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has a 16-bit B component in the word in bytes 0..1, a 16-bit G
-- component for the even i coordinate in the word in bytes 2..3,
-- a 16-bit R component in the word in bytes 4..5, and a 16-bit G
-- component for the odd i coordinate in the word in bytes 6..7.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_B16G16R16G16_422_UNORM :: Format
-- | FORMAT_G16B16G16R16_422_UNORM specifies a four-component,
-- 64-bit format containing a pair of G components, an R component, and a
-- B component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has a 16-bit G component for the even i coordinate in
-- the word in bytes 0..1, a 16-bit B component in the word in bytes
-- 2..3, a 16-bit G component for the odd i coordinate in the word
-- in bytes 4..5, and a 16-bit R component in the word in bytes 6..7.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_G16B16G16R16_422_UNORM :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. Each plane has the same
-- dimensions and each R, G and B component contributes to a single
-- texel. The location of each plane when this image is in linear layout
-- can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 12-bit B component in
-- the top 12 bits of the word in bytes 0..1, and a 12-bit R component in
-- the top 12 bits of the word in bytes 2..3, the bottom 4 bits of each
-- word unused. The horizontal dimensions of the BR plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. The horizontal dimension
-- of the R and B plane is halved relative to the image dimensions, and
-- each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 12-bit B component in
-- the top 12 bits of the word in bytes 0..1, and a 12-bit R component in
-- the top 12 bits of the word in bytes 2..3, the bottom 4 bits of each
-- word unused. The horizontal and vertical dimensions of the BR plane is
-- halved relative to the image dimensions, and each R and B value is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and <math>. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 12-bit G
-- component in the top 12 bits of each 16-bit word of plane 0, a 12-bit
-- B component in the top 12 bits of each 16-bit word of plane 1, and a
-- 12-bit R component in the top 12 bits of each 16-bit word of plane 2,
-- with the bottom 4 bits of each word unused. The horizontal and
-- vertical dimensions of the R and B planes are halved relative to the
-- image dimensions, and each R and B component is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- (lfloor j_G times 0.5 rfloor = j_B = j_R). The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 12-bit B component in the top 12 bits of the
-- word in bytes 0..1, a 12-bit G component for the even i
-- coordinate in the top 12 bits of the word in bytes 2..3, a 12-bit R
-- component in the top 12 bits of the word in bytes 4..5, and a 12-bit G
-- component for the odd i coordinate in the top 12 bits of the
-- word in bytes 6..7, with the bottom 4 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 :: Format
-- | FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 12-bit G component for the even i
-- coordinate in the top 12 bits of the word in bytes 0..1, a 12-bit B
-- component in the top 12 bits of the word in bytes 2..3, a 12-bit G
-- component for the odd i coordinate in the top 12 bits of the
-- word in bytes 4..5, and a 12-bit R component in the top 12 bits of the
-- word in bytes 6..7, with the bottom 4 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 :: Format
-- | FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 specifies a
-- four-component, 64-bit unsigned normalized format that has a 12-bit R
-- component in the top 12 bits of the word in bytes 0..1, a 12-bit G
-- component in the top 12 bits of the word in bytes 2..3, a 12-bit B
-- component in the top 12 bits of the word in bytes 4..5, and a 12-bit A
-- component in the top 12 bits of the word in bytes 6..7, with the
-- bottom 4 bits of each word unused.
pattern FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 :: Format
-- | FORMAT_R12X4G12X4_UNORM_2PACK16 specifies a two-component,
-- 32-bit unsigned normalized format that has a 12-bit R component in the
-- top 12 bits of the word in bytes 0..1, and a 12-bit G component in the
-- top 12 bits of the word in bytes 2..3, with the bottom 4 bits of each
-- word unused.
pattern FORMAT_R12X4G12X4_UNORM_2PACK16 :: Format
-- | FORMAT_R12X4_UNORM_PACK16 specifies a one-component, 16-bit
-- unsigned normalized format that has a single 12-bit R component in the
-- top 12 bits of a 16-bit word, with the bottom 4 bits unused.
pattern FORMAT_R12X4_UNORM_PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. Each plane has the same
-- dimensions and each R, G and B component contributes to a single
-- texel. The location of each plane when this image is in linear layout
-- can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 10-bit B component in
-- the top 10 bits of the word in bytes 0..1, and a 10-bit R component in
-- the top 10 bits of the word in bytes 2..3, the bottom 6 bits of each
-- word unused. The horizontal dimensions of the BR plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. The horizontal dimension
-- of the R and B plane is halved relative to the image dimensions, and
-- each R and B value is shared with the G components for which
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, and a
-- two-component, 32-bit BR plane 1 consisting of a 10-bit B component in
-- the top 10 bits of the word in bytes 0..1, and a 10-bit R component in
-- the top 10 bits of the word in bytes 2..3, the bottom 6 bits of each
-- word unused. The horizontal and vertical dimensions of the BR plane is
-- halved relative to the image dimensions, and each R and B value is
-- shared with the G components for which (lfloor i_G times 0.5 rfloor =
-- i_B = i_R) and <math>. The location of each plane when this
-- image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 specifies an
-- unsigned normalized multi-planar format that has a 10-bit G
-- component in the top 10 bits of each 16-bit word of plane 0, a 10-bit
-- B component in the top 10 bits of each 16-bit word of plane 1, and a
-- 10-bit R component in the top 10 bits of each 16-bit word of plane 2,
-- with the bottom 6 bits of each word unused. The horizontal and
-- vertical dimensions of the R and B planes are halved relative to the
-- image dimensions, and each R and B component is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- (lfloor j_G times 0.5 rfloor = j_B = j_R). The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 :: Format
-- | FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 10-bit B component in the top 10 bits of the
-- word in bytes 0..1, a 10-bit G component for the even i
-- coordinate in the top 10 bits of the word in bytes 2..3, a 10-bit R
-- component in the top 10 bits of the word in bytes 4..5, and a 10-bit G
-- component for the odd i coordinate in the top 10 bits of the
-- word in bytes 6..7, with the bottom 6 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 :: Format
-- | FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 specifies a
-- four-component, 64-bit format containing a pair of G components, an R
-- component, and a B component, collectively encoding a 2×1 rectangle of
-- unsigned normalized RGB texel data. One G value is present at each
-- i coordinate, with the B and R values shared across both G
-- values and thus recorded at half the horizontal resolution of the
-- image. This format has a 10-bit G component for the even i
-- coordinate in the top 10 bits of the word in bytes 0..1, a 10-bit B
-- component in the top 10 bits of the word in bytes 2..3, a 10-bit G
-- component for the odd i coordinate in the top 10 bits of the
-- word in bytes 4..5, and a 10-bit R component in the top 10 bits of the
-- word in bytes 6..7, with the bottom 6 bits of each word unused. Images
-- in this format must be defined with a width that is a multiple
-- of two. For the purposes of the constraints on copy extents, this
-- format is treated as a compressed format with a 2×1 compressed texel
-- block.
pattern FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 :: Format
-- | FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 specifies a
-- four-component, 64-bit unsigned normalized format that has a 10-bit R
-- component in the top 10 bits of the word in bytes 0..1, a 10-bit G
-- component in the top 10 bits of the word in bytes 2..3, a 10-bit B
-- component in the top 10 bits of the word in bytes 4..5, and a 10-bit A
-- component in the top 10 bits of the word in bytes 6..7, with the
-- bottom 6 bits of each word unused.
pattern FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 :: Format
-- | FORMAT_R10X6G10X6_UNORM_2PACK16 specifies a two-component,
-- 32-bit unsigned normalized format that has a 10-bit R component in the
-- top 10 bits of the word in bytes 0..1, and a 10-bit G component in the
-- top 10 bits of the word in bytes 2..3, with the bottom 6 bits of each
-- word unused.
pattern FORMAT_R10X6G10X6_UNORM_2PACK16 :: Format
-- | FORMAT_R10X6_UNORM_PACK16 specifies a one-component, 16-bit
-- unsigned normalized format that has a single 10-bit R component in the
-- top 10 bits of a 16-bit word, with the bottom 6 bits unused.
pattern FORMAT_R10X6_UNORM_PACK16 :: Format
-- | FORMAT_G8_B8_R8_3PLANE_444_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. Each plane has the same dimensions and each R, G and B
-- component contributes to a single texel. The location of each plane
-- when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane.
pattern FORMAT_G8_B8_R8_3PLANE_444_UNORM :: Format
-- | FORMAT_G8_B8R8_2PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, and a two-component, 16-bit BR plane 1 consisting of an 8-bit
-- B component in byte 0 and an 8-bit R component in byte 1. The
-- horizontal dimensions of the BR plane is halved relative to the image
-- dimensions, and each R and B value is shared with the G components for
-- which <math>. The location of each plane when this image is in
-- linear layout can be determined via getImageSubresourceLayout,
-- using IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width that is a multiple of two.
pattern FORMAT_G8_B8R8_2PLANE_422_UNORM :: Format
-- | FORMAT_G8_B8_R8_3PLANE_422_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. The horizontal dimension of the R and B plane is halved
-- relative to the image dimensions, and each R and B value is shared
-- with the G components for which <math>. The location of each
-- plane when this image is in linear layout can be determined via
-- getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width that is a multiple of two.
pattern FORMAT_G8_B8_R8_3PLANE_422_UNORM :: Format
-- | FORMAT_G8_B8R8_2PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, and a two-component, 16-bit BR plane 1 consisting of an 8-bit
-- B component in byte 0 and an 8-bit R component in byte 1. The
-- horizontal and vertical dimensions of the BR plane is halved relative
-- to the image dimensions, and each R and B value is shared with the G
-- components for which (lfloor i_G times 0.5 rfloor = i_B = i_R) and
-- <math>. The location of each plane when this image is in linear
-- layout can be determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane, and
-- IMAGE_ASPECT_PLANE_1_BIT for the BR plane. Images in this
-- format must be defined with a width and height that is a
-- multiple of two.
pattern FORMAT_G8_B8R8_2PLANE_420_UNORM :: Format
-- | FORMAT_G8_B8_R8_3PLANE_420_UNORM specifies an unsigned
-- normalized multi-planar format that has an 8-bit G component in
-- plane 0, an 8-bit B component in plane 1, and an 8-bit R component in
-- plane 2. The horizontal and vertical dimensions of the R and B planes
-- are halved relative to the image dimensions, and each R and B
-- component is shared with the G components for which (lfloor i_G times
-- 0.5 rfloor = i_B = i_R) and (lfloor j_G times 0.5 rfloor = j_B = j_R).
-- The location of each plane when this image is in linear layout can be
-- determined via getImageSubresourceLayout, using
-- IMAGE_ASPECT_PLANE_0_BIT for the G plane,
-- IMAGE_ASPECT_PLANE_1_BIT for the B plane, and
-- IMAGE_ASPECT_PLANE_2_BIT for the R plane. Images in this format
-- must be defined with a width and height that is a multiple of
-- two.
pattern FORMAT_G8_B8_R8_3PLANE_420_UNORM :: Format
-- | FORMAT_B8G8R8G8_422_UNORM specifies a four-component, 32-bit
-- format containing a pair of G components, an R component, and a B
-- component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has an 8-bit B component in byte 0, an 8-bit G component for
-- the even i coordinate in byte 1, an 8-bit R component in byte
-- 2, and an 8-bit G component for the odd i coordinate in byte 3.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_B8G8R8G8_422_UNORM :: Format
-- | FORMAT_G8B8G8R8_422_UNORM specifies a four-component, 32-bit
-- format containing a pair of G components, an R component, and a B
-- component, collectively encoding a 2×1 rectangle of unsigned
-- normalized RGB texel data. One G value is present at each i
-- coordinate, with the B and R values shared across both G values and
-- thus recorded at half the horizontal resolution of the image. This
-- format has an 8-bit G component for the even i coordinate in
-- byte 0, an 8-bit B component in byte 1, an 8-bit G component for the
-- odd i coordinate in byte 2, and an 8-bit R component in byte 3.
-- Images in this format must be defined with a width that is a
-- multiple of two. For the purposes of the constraints on copy extents,
-- this format is treated as a compressed format with a 2×1 compressed
-- texel block.
pattern FORMAT_G8B8G8R8_422_UNORM :: Format
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkQueueFlagBits - Bitmask specifying capabilities of queues in a queue
-- family
--
-- Description
--
--
-- - QUEUE_GRAPHICS_BIT specifies that queues in this queue
-- family support graphics operations.
--
--
--
-- - QUEUE_COMPUTE_BIT specifies that queues in this queue
-- family support compute operations.
-- - QUEUE_TRANSFER_BIT specifies that queues in this queue
-- family support transfer operations.
-- - QUEUE_SPARSE_BINDING_BIT specifies that queues in this
-- queue family support sparse memory management operations (see
-- Sparse Resources). If any of the sparse resource features are
-- enabled, then at least one queue family must support this
-- bit.
-- - if QUEUE_PROTECTED_BIT is set, then the queues in this
-- queue family support the DEVICE_QUEUE_CREATE_PROTECTED_BIT bit.
-- (see Protected Memory). If the protected memory physical device
-- feature is supported, then at least one queue family of at least one
-- physical device exposed by the implementation must support this
-- bit.
--
--
-- If an implementation exposes any queue family that supports graphics
-- operations, at least one queue family of at least one physical device
-- exposed by the implementation must support both graphics and
-- compute operations.
--
-- Furthermore, if the protected memory physical device feature is
-- supported, then at least one queue family of at least one physical
-- device exposed by the implementation must support graphics
-- operations, compute operations, and protected memory operations.
--
-- Note
--
-- All commands that are allowed on a queue that supports transfer
-- operations are also allowed on a queue that supports either graphics
-- or compute operations. Thus, if the capabilities of a queue family
-- include QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT, then
-- reporting the QUEUE_TRANSFER_BIT capability separately for that
-- queue family is optional.
--
-- For further details see Queues.
--
-- See Also
--
-- QueueFlags
newtype QueueFlagBits
QueueFlagBits :: Flags -> QueueFlagBits
pattern QUEUE_GRAPHICS_BIT :: QueueFlagBits
pattern QUEUE_COMPUTE_BIT :: QueueFlagBits
pattern QUEUE_TRANSFER_BIT :: QueueFlagBits
pattern QUEUE_SPARSE_BINDING_BIT :: QueueFlagBits
pattern QUEUE_PROTECTED_BIT :: QueueFlagBits
type QueueFlags = QueueFlagBits
-- | VkMemoryPropertyFlagBits - Bitmask specifying properties for a memory
-- type
--
-- Description
--
-- For any memory allocated with both the
-- MEMORY_PROPERTY_HOST_COHERENT_BIT and the
-- MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD, host or device
-- accesses also perform automatic memory domain transfer operations,
-- such that writes are always automatically available and visible to
-- both host and device memory domains.
--
-- Note
--
-- Device coherence is a useful property for certain debugging use cases
-- (e.g. crash analysis, where performing separate coherence actions
-- could mean values are not reported correctly). However, device
-- coherent accesses may be slower than equivalent accesses without
-- device coherence, particularly if they are also device uncached. For
-- device uncached memory in particular, repeated accesses to the same or
-- neighbouring memory locations over a short time period (e.g. within a
-- frame) may be slower than it would be for the equivalent cached memory
-- type. As such, it is generally inadvisable to use device coherent or
-- device uncached memory except when really needed.
--
-- See Also
--
-- MemoryPropertyFlags
newtype MemoryPropertyFlagBits
MemoryPropertyFlagBits :: Flags -> MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_LOCAL_BIT bit specifies that memory
-- allocated with this type is the most efficient for device access. This
-- property will be set if and only if the memory type belongs to a heap
-- with the MEMORY_HEAP_DEVICE_LOCAL_BIT set.
pattern MEMORY_PROPERTY_DEVICE_LOCAL_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_VISIBLE_BIT bit specifies that memory
-- allocated with this type can be mapped for host access using
-- mapMemory.
pattern MEMORY_PROPERTY_HOST_VISIBLE_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_COHERENT_BIT bit specifies that the host
-- cache management commands flushMappedMemoryRanges and
-- invalidateMappedMemoryRanges are not needed to flush host
-- writes to the device or make device writes visible to the host,
-- respectively.
pattern MEMORY_PROPERTY_HOST_COHERENT_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_HOST_CACHED_BIT bit specifies that memory
-- allocated with this type is cached on the host. Host memory accesses
-- to uncached memory are slower than to cached memory, however uncached
-- memory is always host coherent.
pattern MEMORY_PROPERTY_HOST_CACHED_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT bit specifies that the
-- memory type only allows device access to the memory. Memory types
-- must not have both MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT
-- and MEMORY_PROPERTY_HOST_VISIBLE_BIT set. Additionally, the
-- object’s backing memory may be provided by the implementation
-- lazily as specified in Lazily Allocated Memory.
pattern MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD bit specifies that
-- memory allocated with this type is not cached on the device. Uncached
-- device memory is always device coherent.
pattern MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD bit specifies that
-- device accesses to allocations of this memory type are automatically
-- made available and visible.
pattern MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD :: MemoryPropertyFlagBits
-- | MEMORY_PROPERTY_PROTECTED_BIT bit specifies that the memory
-- type only allows device access to the memory, and allows protected
-- queue operations to access the memory. Memory types must not
-- have MEMORY_PROPERTY_PROTECTED_BIT set and any of
-- MEMORY_PROPERTY_HOST_VISIBLE_BIT set, or
-- MEMORY_PROPERTY_HOST_COHERENT_BIT set, or
-- MEMORY_PROPERTY_HOST_CACHED_BIT set.
pattern MEMORY_PROPERTY_PROTECTED_BIT :: MemoryPropertyFlagBits
type MemoryPropertyFlags = MemoryPropertyFlagBits
-- | VkMemoryHeapFlagBits - Bitmask specifying attribute flags for a heap
--
-- See Also
--
-- MemoryHeapFlags
newtype MemoryHeapFlagBits
MemoryHeapFlagBits :: Flags -> MemoryHeapFlagBits
-- | MEMORY_HEAP_DEVICE_LOCAL_BIT specifies that the heap
-- corresponds to device local memory. Device local memory may
-- have different performance characteristics than host local memory, and
-- may support different memory property flags.
pattern MEMORY_HEAP_DEVICE_LOCAL_BIT :: MemoryHeapFlagBits
-- | MEMORY_HEAP_MULTI_INSTANCE_BIT specifies that in a logical
-- device representing more than one physical device, there is a
-- per-physical device instance of the heap memory. By default, an
-- allocation from such a heap will be replicated to each physical
-- device’s instance of the heap.
pattern MEMORY_HEAP_MULTI_INSTANCE_BIT :: MemoryHeapFlagBits
type MemoryHeapFlags = MemoryHeapFlagBits
-- | VkImageUsageFlagBits - Bitmask specifying intended usage of an image
--
-- See Also
--
-- ImageUsageFlags
newtype ImageUsageFlagBits
ImageUsageFlagBits :: Flags -> ImageUsageFlagBits
-- | IMAGE_USAGE_TRANSFER_SRC_BIT specifies that the image
-- can be used as the source of a transfer command.
pattern IMAGE_USAGE_TRANSFER_SRC_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_TRANSFER_DST_BIT specifies that the image
-- can be used as the destination of a transfer command.
pattern IMAGE_USAGE_TRANSFER_DST_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_SAMPLED_BIT specifies that the image can be
-- used to create a ImageView suitable for occupying a
-- DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE or
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and be sampled by a
-- shader.
pattern IMAGE_USAGE_SAMPLED_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_STORAGE_BIT specifies that the image can be
-- used to create a ImageView suitable for occupying a
-- DescriptorSet slot of type
-- DESCRIPTOR_TYPE_STORAGE_IMAGE.
pattern IMAGE_USAGE_STORAGE_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_COLOR_ATTACHMENT_BIT specifies that the image
-- can be used to create a ImageView suitable for use as a
-- color or resolve attachment in a Framebuffer.
pattern IMAGE_USAGE_COLOR_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that the
-- image can be used to create a ImageView suitable for use
-- as a depth/stencil or depth/stencil resolve attachment in a
-- Framebuffer.
pattern IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT specifies that the memory
-- bound to this image will have been allocated with the
-- MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT (see
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#memory
-- for more detail). This bit can be set for any image that
-- can be used to create a ImageView suitable for use as a
-- color, resolve, depth/stencil, or input attachment.
pattern IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_INPUT_ATTACHMENT_BIT specifies that the image
-- can be used to create a ImageView suitable for occupying
-- DescriptorSet slot of type
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT; be read from a shader as an
-- input attachment; and be used as an input attachment in a framebuffer.
pattern IMAGE_USAGE_INPUT_ATTACHMENT_BIT :: ImageUsageFlagBits
-- | IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that the
-- image can be used to create a ImageView suitable for use
-- as a fragment density map image.
pattern IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT :: ImageUsageFlagBits
-- | IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV specifies that the image
-- can be used to create a ImageView suitable for use as a
-- shading rate image.
pattern IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV :: ImageUsageFlagBits
type ImageUsageFlags = ImageUsageFlagBits
-- | VkImageCreateFlagBits - Bitmask specifying additional parameters of an
-- image
--
-- Description
--
-- See Sparse Resource Features and Sparse Physical Device
-- Features for more details.
--
-- See Also
--
-- ImageCreateFlags
newtype ImageCreateFlagBits
ImageCreateFlagBits :: Flags -> ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_BINDING_BIT specifies that the image will
-- be backed using sparse memory binding.
pattern IMAGE_CREATE_SPARSE_BINDING_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_RESIDENCY_BIT specifies that the image
-- can be partially backed using sparse memory binding. Images
-- created with this flag must also be created with the
-- IMAGE_CREATE_SPARSE_BINDING_BIT flag.
pattern IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPARSE_ALIASED_BIT specifies that the image will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another image (or another portion of
-- the same image). Images created with this flag must also be
-- created with the IMAGE_CREATE_SPARSE_BINDING_BIT flag
pattern IMAGE_CREATE_SPARSE_ALIASED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that the image
-- can be used to create a ImageView with a different
-- format from the image. For multi-planar formats,
-- IMAGE_CREATE_MUTABLE_FORMAT_BIT specifies that a
-- ImageView can be created of a plane of the image.
pattern IMAGE_CREATE_MUTABLE_FORMAT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CUBE_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_CUBE or IMAGE_VIEW_TYPE_CUBE_ARRAY.
pattern IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SUBSAMPLED_BIT_EXT specifies that an image
-- can be in a subsampled format which may be more optimal
-- when written as an attachment by a render pass that has a fragment
-- density map attachment. Accessing a subsampled image has additional
-- considerations:
--
--
-- - Image data read as an image sampler is undefined if the sampler
-- was not created with flags containing
-- SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or was not sampled through
-- the use of a combined image sampler with an immutable sampler in
-- DescriptorSetLayoutBinding.
-- - Image data read with an input attachment is undefined if the
-- contents were not written as an attachment in an earlier subpass of
-- the same render pass.
-- - Image data read with load operations may be resampled to
-- the fragment density of the render pass.
-- - Image contents outside of the render area become undefined if the
-- image is stored as a render pass attachment.
--
pattern IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
-- specifies that an image with a depth or depth/stencil format
-- can be used with custom sample locations when used as a
-- depth/stencil attachment.
pattern IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: ImageCreateFlagBits
-- | IMAGE_CREATE_CORNER_SAMPLED_BIT_NV specifies that the image is
-- a corner-sampled image.
pattern IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: ImageCreateFlagBits
-- | IMAGE_CREATE_DISJOINT_BIT specifies that an image with a
-- multi-planar format must have each plane separately
-- bound to memory, rather than having a single memory binding for the
-- whole image; the presence of this bit distinguishes a disjoint
-- image from an image without this bit set.
pattern IMAGE_CREATE_DISJOINT_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_PROTECTED_BIT specifies that the image is a
-- protected image.
pattern IMAGE_CREATE_PROTECTED_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image
-- can be created with usage flags that are not supported for the
-- format the image is created with but are supported for at least one
-- format a ImageView created from the image can have.
pattern IMAGE_CREATE_EXTENDED_USAGE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT specifies that the
-- image having a compressed format can be used to create a
-- ImageView with an uncompressed format where each texel in the
-- image view corresponds to a compressed texel block of the image.
pattern IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT specifies that the image
-- can be used to create a ImageView of type
-- IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.
pattern IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT specifies that the
-- image can be used with a non-zero value of the
-- splitInstanceBindRegionCount member of a
-- BindImageMemoryDeviceGroupInfo structure passed into
-- bindImageMemory2. This flag also has the effect of making the
-- image use the standard sparse image block dimensions.
pattern IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: ImageCreateFlagBits
-- | IMAGE_CREATE_ALIAS_BIT specifies that two images created with
-- the same creation parameters and aliased to the same memory can
-- interpret the contents of the memory consistently with each other,
-- subject to the rules described in the Memory Aliasing section.
-- This flag further specifies that each plane of a disjoint image
-- can share an in-memory non-linear representation with
-- single-plane images, and that a single-plane image can share an
-- in-memory non-linear representation with a plane of a multi-planar
-- disjoint image, according to the rules in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes.
-- If the pNext chain includes a
-- ExternalMemoryImageCreateInfo or
-- ExternalMemoryImageCreateInfoNV structure whose
-- handleTypes member is not 0, it is as if
-- IMAGE_CREATE_ALIAS_BIT is set.
pattern IMAGE_CREATE_ALIAS_BIT :: ImageCreateFlagBits
type ImageCreateFlags = ImageCreateFlagBits
-- | VkFormatFeatureFlagBits - Bitmask specifying features supported by a
-- buffer
--
-- Description
--
-- The following bits may be set in linearTilingFeatures,
-- optimalTilingFeatures, and
-- DrmFormatModifierPropertiesEXT::drmFormatModifierTilingFeatures,
-- specifying that the features are supported by images or
-- image views or sampler Y′CBCR conversion objects created
-- with the queried
-- getPhysicalDeviceFormatProperties::format:
--
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image
-- view can be sampled from.
-- - FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image
-- view can be used as a storage images.
-- - FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an
-- image view can be used as storage image that supports atomic
-- operations.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
-- - FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
-- - FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that
-- an image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
-- - FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image
-- can be used as srcImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_BLIT_DST_BIT specifies that an image
-- can be used as dstImage for the cmdBlitImage
-- command.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies
-- that if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image
-- view can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.If the format being queried is a
-- depth/stencil format, this bit only specifies that the depth aspect
-- (not the stencil aspect) of an image of this format supports linear
-- filtering, and that linear filtering of the depth aspect is supported
-- whether depth compare is enabled in the sampler or not. If this bit is
-- not present, linear filtering with depth compare disabled is
-- unsupported and linear filtering with depth compare enabled is
-- supported, but may compute the filtered value in an
-- implementation-dependent manner which differs from the normal rules of
-- linear filtering. The resulting value must be in the range
-- [0,1] and should be proportional to, or a weighted average of,
-- the number of comparison passes or failures.
-- - FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
-- - FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
-- - FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT specifies
-- that Image can be used with a sampler that has either of
-- magFilter or minFilter set to
-- FILTER_CUBIC_EXT, or be the source image for a blit with
-- filter set to FILTER_CUBIC_EXT. This bit must
-- only be exposed for formats that also support the
-- FORMAT_FEATURE_SAMPLED_IMAGE_BIT. If the format being queried
-- is a depth/stencil format, this only specifies that the depth aspect
-- is cubic filterable.
-- - FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that
-- an application can define a sampler Y′CBCR conversion
-- using this format as a source, and that an image of this format
-- can be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
-- - FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by
-- default.
--
-- - FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
-- - FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar
-- image can have the IMAGE_CREATE_DISJOINT_BIT set during
-- image creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane
-- formats.
-- - FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that
-- an image view can be used as a fragment density map
-- attachment.
--
--
-- The following bits may be set in bufferFeatures,
-- specifying that the features are supported by buffers or
-- buffer views created with the queried
-- getPhysicalDeviceProperties::format:
--
--
--
-- See Also
--
-- FormatFeatureFlags
newtype FormatFeatureFlagBits
FormatFeatureFlagBits :: Flags -> FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_BIT specifies that an image view
-- can be sampled from.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_BIT specifies that an image view
-- can be used as a storage images.
pattern FORMAT_FEATURE_STORAGE_IMAGE_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT specifies that an image
-- view can be used as storage image that supports atomic
-- operations.
pattern FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT specifies that the
-- format can be used to create a buffer view that can be
-- bound to a DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT specifies that
-- atomic operations are supported on
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER with this format.
pattern FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_VERTEX_BUFFER_BIT specifies that the format
-- can be used as a vertex attribute format
-- (VertexInputAttributeDescription::format).
pattern FORMAT_FEATURE_VERTEX_BUFFER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BIT specifies that an image
-- view can be used as a framebuffer color attachment and as an
-- input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT specifies that an
-- image view can be used as a framebuffer color attachment that
-- supports blending and as an input attachment.
pattern FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT specifies that an
-- image view can be used as a framebuffer depth/stencil
-- attachment and as an input attachment.
pattern FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_SRC_BIT specifies that an image can
-- be used as srcImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_SRC_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_BLIT_DST_BIT specifies that an image can
-- be used as dstImage for the cmdBlitImage command.
pattern FORMAT_FEATURE_BLIT_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT specifies that
-- if FORMAT_FEATURE_SAMPLED_IMAGE_BIT is also set, an image view
-- can be used with a sampler that has either of
-- magFilter or minFilter set to FILTER_LINEAR,
-- or mipmapMode set to SAMPLER_MIPMAP_MODE_LINEAR. If
-- FORMAT_FEATURE_BLIT_SRC_BIT is also set, an image can be used
-- as the srcImage to cmdBlitImage with a filter
-- of FILTER_LINEAR. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT
-- or FORMAT_FEATURE_BLIT_SRC_BIT.
--
-- If the format being queried is a depth/stencil format, this bit only
-- specifies that the depth aspect (not the stencil aspect) of an image
-- of this format supports linear filtering, and that linear filtering of
-- the depth aspect is supported whether depth compare is enabled in the
-- sampler or not. If this bit is not present, linear filtering with
-- depth compare disabled is unsupported and linear filtering with depth
-- compare enabled is supported, but may compute the filtered
-- value in an implementation-dependent manner which differs from the
-- normal rules of linear filtering. The resulting value must be
-- in the range [0,1] and should be proportional to, or a weighted
-- average of, the number of comparison passes or failures.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT specifies that an
-- image view can be used as a fragment density map
-- attachment.
pattern FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: FormatFeatureFlagBits
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT specifies
-- Image can be used as a sampled image with a min or max
-- SamplerReductionMode. This bit must only be exposed for
-- formats that also support the FORMAT_FEATURE_SAMPLED_IMAGE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_COSITED_EVEN. Otherwise both
-- xChromaOffset and yChromaOffset must be
-- CHROMA_LOCATION_MIDPOINT. If neither
-- FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT nor
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT is set, the
-- application must not define a sampler Y′CBCR conversion
-- using this format as a source.
pattern FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_DISJOINT_BIT specifies that a multi-planar image
-- can have the IMAGE_CREATE_DISJOINT_BIT set during image
-- creation. An implementation must not set
-- FORMAT_FEATURE_DISJOINT_BIT for single-plane formats.
pattern FORMAT_FEATURE_DISJOINT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-- specifies that reconstruction can be forcibly made explicit by
-- setting
-- SamplerYcbcrConversionCreateInfo::forceExplicitReconstruction
-- to TRUE. If the format being queried supports
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- it must also support
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-- specifies that reconstruction is explicit, as described in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-chroma-reconstruction.
-- If this bit is not present, reconstruction is implicit by default.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: FormatFeatureFlagBits
-- |
-- FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-- specifies that the format can have different chroma, min, and mag
-- filters.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-- specifies that the format can do linear sampler filtering
-- (min/magFilter) whilst sampler Y′CBCR conversion is enabled.
pattern FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT specifies that an
-- application can define a sampler Y′CBCR conversion using
-- this format as a source, and that an image of this format can
-- be used with a SamplerYcbcrConversionCreateInfo
-- xChromaOffset and/or yChromaOffset of
-- CHROMA_LOCATION_MIDPOINT. Otherwise both xChromaOffset
-- and yChromaOffset must be
-- CHROMA_LOCATION_COSITED_EVEN. If a format does not incorporate
-- chroma downsampling (it is not a “422” or “420” format) but the
-- implementation supports sampler Y′CBCR conversion for this format, the
-- implementation must set
-- FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT.
pattern FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_DST_BIT specifies that an image
-- can be used as a destination image for copy commands and
-- clear commands.
pattern FORMAT_FEATURE_TRANSFER_DST_BIT :: FormatFeatureFlagBits
-- | FORMAT_FEATURE_TRANSFER_SRC_BIT specifies that an image
-- can be used as a source image for copy commands.
pattern FORMAT_FEATURE_TRANSFER_SRC_BIT :: FormatFeatureFlagBits
type FormatFeatureFlags = FormatFeatureFlagBits
-- | VkSampleCountFlagBits - Bitmask specifying sample counts supported for
-- an image used for storage operations
--
-- See Also
--
-- AttachmentDescription, AttachmentDescription2,
-- FramebufferMixedSamplesCombinationNV, ImageCreateInfo,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PipelineMultisampleStateCreateInfo, SampleCountFlags,
-- SampleLocationsInfoEXT,
-- getPhysicalDeviceMultisamplePropertiesEXT,
-- getPhysicalDeviceSparseImageFormatProperties
newtype SampleCountFlagBits
SampleCountFlagBits :: Flags -> SampleCountFlagBits
-- | SAMPLE_COUNT_1_BIT specifies an image with one sample per
-- pixel.
pattern SAMPLE_COUNT_1_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_2_BIT specifies an image with 2 samples per pixel.
pattern SAMPLE_COUNT_2_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_4_BIT specifies an image with 4 samples per pixel.
pattern SAMPLE_COUNT_4_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_8_BIT specifies an image with 8 samples per pixel.
pattern SAMPLE_COUNT_8_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_16_BIT specifies an image with 16 samples per
-- pixel.
pattern SAMPLE_COUNT_16_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_32_BIT specifies an image with 32 samples per
-- pixel.
pattern SAMPLE_COUNT_32_BIT :: SampleCountFlagBits
-- | SAMPLE_COUNT_64_BIT specifies an image with 64 samples per
-- pixel.
pattern SAMPLE_COUNT_64_BIT :: SampleCountFlagBits
type SampleCountFlags = SampleCountFlagBits
type FN_vkInternalAllocationNotification = ("pUserData" ::: Ptr ()) -> CSize -> InternalAllocationType -> SystemAllocationScope -> IO ()
-- | PFN_vkInternalAllocationNotification - Application-defined memory
-- allocation notification function
--
-- Description
--
-- This is a purely informational callback.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkInternalAllocationNotification = FunPtr FN_vkInternalAllocationNotification
type FN_vkInternalFreeNotification = ("pUserData" ::: Ptr ()) -> CSize -> InternalAllocationType -> SystemAllocationScope -> IO ()
-- | PFN_vkInternalFreeNotification - Application-defined memory free
-- notification function
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkInternalFreeNotification = FunPtr FN_vkInternalFreeNotification
type FN_vkReallocationFunction = ("pUserData" ::: Ptr ()) -> ("pOriginal" ::: Ptr ()) -> CSize -> ("alignment" ::: CSize) -> SystemAllocationScope -> IO (Ptr ())
-- | PFN_vkReallocationFunction - Application-defined memory reallocation
-- function
--
-- Description
--
-- pfnReallocation must return an allocation with enough
-- space for size bytes, and the contents of the original
-- allocation from bytes zero to min(original size, new size) - 1
-- must be preserved in the returned allocation. If size
-- is larger than the old size, the contents of the additional space are
-- undefined. If satisfying these requirements involves creating a new
-- allocation, then the old allocation should be freed.
--
-- If pOriginal is NULL, then pfnReallocation
-- must behave equivalently to a call to
-- PFN_vkAllocationFunction with the same parameter values
-- (without pOriginal).
--
-- If size is zero, then pfnReallocation must
-- behave equivalently to a call to PFN_vkFreeFunction with the
-- same pUserData parameter value, and pMemory equal to
-- pOriginal.
--
-- If pOriginal is non-NULL, the implementation
-- must ensure that alignment is equal to the
-- alignment used to originally allocate pOriginal.
--
-- If this function fails and pOriginal is non-NULL the
-- application must not free the old allocation.
--
-- pfnReallocation must follow the same rules for
-- return values as.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkReallocationFunction = FunPtr FN_vkReallocationFunction
type FN_vkAllocationFunction = ("pUserData" ::: Ptr ()) -> CSize -> ("alignment" ::: CSize) -> SystemAllocationScope -> IO (Ptr ())
-- | PFN_vkAllocationFunction - Application-defined memory allocation
-- function
--
-- Description
--
-- If pfnAllocation is unable to allocate the requested memory,
-- it must return NULL. If the allocation was successful,
-- it must return a valid pointer to memory allocation containing
-- at least size bytes, and with the pointer value being a
-- multiple of alignment.
--
-- Note
--
-- Correct Vulkan operation cannot be assumed if the application
-- does not follow these rules.
--
-- For example, pfnAllocation (or pfnReallocation)
-- could cause termination of running Vulkan instance(s) on a failed
-- allocation for debugging purposes, either directly or indirectly. In
-- these circumstances, it cannot be assumed that any part of any
-- affected Instance objects are going to operate correctly (even
-- destroyInstance), and the application must ensure it
-- cleans up properly via other means (e.g. process termination).
--
-- If pfnAllocation returns NULL, and if the
-- implementation is unable to continue correct processing of the current
-- command without the requested allocation, it must treat this as
-- a runtime error, and generate ERROR_OUT_OF_HOST_MEMORY at the
-- appropriate time for the command in which the condition was detected,
-- as described in Return Codes.
--
-- If the implementation is able to continue correct processing of the
-- current command without the requested allocation, then it may
-- do so, and must not generate ERROR_OUT_OF_HOST_MEMORY as
-- a result of this failed allocation.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkAllocationFunction = FunPtr FN_vkAllocationFunction
type FN_vkFreeFunction = ("pUserData" ::: Ptr ()) -> ("pMemory" ::: Ptr ()) -> IO ()
-- | PFN_vkFreeFunction - Application-defined memory free function
--
-- Description
--
-- pMemory may be NULL, which the callback
-- must handle safely. If pMemory is non-NULL,
-- it must be a pointer previously allocated by
-- pfnAllocation or pfnReallocation. The application
-- should free this memory.
--
-- See Also
--
-- AllocationCallbacks
type PFN_vkFreeFunction = FunPtr FN_vkFreeFunction
type FN_vkVoidFunction = () -> IO ()
-- | PFN_vkVoidFunction - Dummy function pointer type returned by queries
--
-- See Also
--
-- getDeviceProcAddr, getInstanceProcAddr
type PFN_vkVoidFunction = FunPtr FN_vkVoidFunction
instance GHC.Classes.Eq Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance GHC.Classes.Eq Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance GHC.Classes.Eq Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance GHC.Classes.Eq Vulkan.Core10.DeviceInitialization.FormatProperties
instance GHC.Classes.Eq Vulkan.Core10.DeviceInitialization.MemoryHeap
instance GHC.Classes.Eq Vulkan.Core10.DeviceInitialization.MemoryType
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.PhysicalDeviceProperties
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.PhysicalDeviceProperties
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.ApplicationInfo
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.ApplicationInfo
instance GHC.Generics.Generic (Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.QueueFamilyProperties
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.QueueFamilyProperties
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.PhysicalDeviceMemoryProperties
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.PhysicalDeviceMemoryProperties
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.MemoryType
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.MemoryType
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.MemoryHeap
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.MemoryHeap
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.FormatProperties
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.FormatProperties
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.ImageFormatProperties
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.ImageFormatProperties
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance GHC.Generics.Generic Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance GHC.Show.Show Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceProperties
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.PhysicalDeviceProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance Foreign.Storable.Storable Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.PhysicalDeviceLimits
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance Foreign.Storable.Storable Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.PhysicalDeviceSparseProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance Foreign.Storable.Storable Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.PhysicalDeviceFeatures
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.ImageFormatProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.ImageFormatProperties
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.ImageFormatProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.FormatProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.FormatProperties
instance Foreign.Storable.Storable Vulkan.Core10.DeviceInitialization.FormatProperties
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.FormatProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceMemoryProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.PhysicalDeviceMemoryProperties
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.PhysicalDeviceMemoryProperties
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.MemoryHeap
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.MemoryHeap
instance Foreign.Storable.Storable Vulkan.Core10.DeviceInitialization.MemoryHeap
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.MemoryHeap
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.MemoryType
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.MemoryType
instance Foreign.Storable.Storable Vulkan.Core10.DeviceInitialization.MemoryType
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.MemoryType
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.QueueFamilyProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.QueueFamilyProperties
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.QueueFamilyProperties
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.DeviceInitialization.InstanceCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.DeviceInitialization.InstanceCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DeviceInitialization.ApplicationInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DeviceInitialization.ApplicationInfo
instance Vulkan.Zero.Zero Vulkan.Core10.DeviceInitialization.ApplicationInfo
module Vulkan.Extensions.VK_NV_external_memory_capabilities
-- | vkGetPhysicalDeviceExternalImageFormatPropertiesNV - determine image
-- capabilities compatible with external memory handle types
--
-- Description
--
-- If externalHandleType is 0,
-- pExternalImageFormatProperties->imageFormatProperties will
-- return the same values as a call to
-- getPhysicalDeviceImageFormatProperties, and the other members
-- of pExternalImageFormatProperties will all be 0. Otherwise,
-- they are filled in as described for
-- ExternalImageFormatPropertiesNV.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- ExternalImageFormatPropertiesNV,
-- ExternalMemoryHandleTypeFlagsNV, Format,
-- ImageCreateFlags, ImageTiling, ImageType,
-- ImageUsageFlags, PhysicalDevice
getPhysicalDeviceExternalImageFormatPropertiesNV :: forall io. MonadIO io => PhysicalDevice -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> ("externalHandleType" ::: ExternalMemoryHandleTypeFlagsNV) -> io ExternalImageFormatPropertiesNV
-- | VkExternalImageFormatPropertiesNV - Structure specifying external
-- image format properties
--
-- See Also
--
-- ExternalMemoryFeatureFlagsNV,
-- ExternalMemoryHandleTypeFlagsNV, ImageFormatProperties,
-- getPhysicalDeviceExternalImageFormatPropertiesNV
data ExternalImageFormatPropertiesNV
ExternalImageFormatPropertiesNV :: ImageFormatProperties -> ExternalMemoryFeatureFlagsNV -> ExternalMemoryHandleTypeFlagsNV -> ExternalMemoryHandleTypeFlagsNV -> ExternalImageFormatPropertiesNV
-- | imageFormatProperties will be filled in as when calling
-- getPhysicalDeviceImageFormatProperties, but the values returned
-- may vary depending on the external handle type requested.
[$sel:imageFormatProperties:ExternalImageFormatPropertiesNV] :: ExternalImageFormatPropertiesNV -> ImageFormatProperties
-- | externalMemoryFeatures is a bitmask of
-- ExternalMemoryFeatureFlagBitsNV, indicating properties of the
-- external memory handle type
-- (getPhysicalDeviceExternalImageFormatPropertiesNV::externalHandleType)
-- being queried, or 0 if the external memory handle type is 0.
[$sel:externalMemoryFeatures:ExternalImageFormatPropertiesNV] :: ExternalImageFormatPropertiesNV -> ExternalMemoryFeatureFlagsNV
-- | exportFromImportedHandleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBitsNV containing a bit set for
-- every external handle type that may be used to create memory
-- from which the handles of the type specified in
-- getPhysicalDeviceExternalImageFormatPropertiesNV::externalHandleType
-- can be exported, or 0 if the external memory handle type is 0.
[$sel:exportFromImportedHandleTypes:ExternalImageFormatPropertiesNV] :: ExternalImageFormatPropertiesNV -> ExternalMemoryHandleTypeFlagsNV
-- | compatibleHandleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBitsNV containing a bit set for
-- every external handle type that may be specified simultaneously
-- with the handle type specified by
-- getPhysicalDeviceExternalImageFormatPropertiesNV::externalHandleType
-- when calling allocateMemory, or 0 if the external memory handle
-- type is 0. compatibleHandleTypes will always contain
-- getPhysicalDeviceExternalImageFormatPropertiesNV::externalHandleType
[$sel:compatibleHandleTypes:ExternalImageFormatPropertiesNV] :: ExternalImageFormatPropertiesNV -> ExternalMemoryHandleTypeFlagsNV
-- | VkExternalMemoryHandleTypeFlagBitsNV - Bitmask specifying external
-- memory handle types
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagsNV
newtype ExternalMemoryHandleTypeFlagBitsNV
ExternalMemoryHandleTypeFlagBitsNV :: Flags -> ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV specifies a
-- handle to memory returned by getMemoryWin32HandleNV, or one
-- duplicated from such a handle using DuplicateHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV specifies a
-- handle to memory returned by getMemoryWin32HandleNV.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV specifies a
-- valid NT handle to memory returned by
-- IDXGIResource1::CreateSharedHandle, or a handle duplicated
-- from such a handle using DuplicateHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV specifies a
-- handle to memory returned by
-- IDXGIResource::GetSharedHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
type ExternalMemoryHandleTypeFlagsNV = ExternalMemoryHandleTypeFlagBitsNV
-- | VkExternalMemoryFeatureFlagBitsNV - Bitmask specifying external memory
-- features
--
-- See Also
--
-- ExternalImageFormatPropertiesNV,
-- ExternalMemoryFeatureFlagsNV,
-- getPhysicalDeviceExternalImageFormatPropertiesNV
newtype ExternalMemoryFeatureFlagBitsNV
ExternalMemoryFeatureFlagBitsNV :: Flags -> ExternalMemoryFeatureFlagBitsNV
-- | EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV specifies that
-- external memory of the specified type must be created as a
-- dedicated allocation when used in the manner specified.
pattern EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV :: ExternalMemoryFeatureFlagBitsNV
-- | EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV specifies that the
-- implementation supports exporting handles of the specified type.
pattern EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV :: ExternalMemoryFeatureFlagBitsNV
-- | EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV specifies that the
-- implementation supports importing handles of the specified type.
pattern EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV :: ExternalMemoryFeatureFlagBitsNV
type ExternalMemoryFeatureFlagsNV = ExternalMemoryFeatureFlagBitsNV
type NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION = 1
pattern NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION :: forall a. Integral a => a
type NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME = "VK_NV_external_memory_capabilities"
pattern NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance Data.Bits.Bits Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
instance GHC.Classes.Ord Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalImageFormatPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalImageFormatPropertiesNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalImageFormatPropertiesNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalImageFormatPropertiesNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalImageFormatPropertiesNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryFeatureFlagBitsNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
instance GHC.Read.Read Vulkan.Extensions.VK_NV_external_memory_capabilities.ExternalMemoryHandleTypeFlagBitsNV
module Vulkan.Extensions.VK_NV_external_memory_win32
-- | vkGetMemoryWin32HandleNV - retrieve Win32 handle to a device memory
-- object
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, DeviceMemory,
-- ExternalMemoryHandleTypeFlagsNV
getMemoryWin32HandleNV :: forall io. MonadIO io => Device -> DeviceMemory -> ExternalMemoryHandleTypeFlagsNV -> io HANDLE
-- | VkImportMemoryWin32HandleInfoNV - import Win32 memory created on the
-- same physical device
--
-- Description
--
-- If handleType is 0, this structure is ignored by
-- consumers of the MemoryAllocateInfo structure it is chained
-- from.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagsNV, StructureType
data ImportMemoryWin32HandleInfoNV
ImportMemoryWin32HandleInfoNV :: ExternalMemoryHandleTypeFlagsNV -> HANDLE -> ImportMemoryWin32HandleInfoNV
-- | handleType is 0 or a
-- ExternalMemoryHandleTypeFlagBitsNV value specifying the type of
-- memory handle in handle.
--
-- handleType must not have more than one bit set
--
-- handleType must be a valid combination of
-- ExternalMemoryHandleTypeFlagBitsNV values
[$sel:handleType:ImportMemoryWin32HandleInfoNV] :: ImportMemoryWin32HandleInfoNV -> ExternalMemoryHandleTypeFlagsNV
-- | handle is a Windows HANDLE referring to the memory.
--
-- handle must be a valid handle to memory, obtained as
-- specified by handleType
[$sel:handle:ImportMemoryWin32HandleInfoNV] :: ImportMemoryWin32HandleInfoNV -> HANDLE
-- | VkExportMemoryWin32HandleInfoNV - specify security attributes and
-- access rights for Win32 memory handles
--
-- Description
--
-- If this structure is not present, or if pAttributes is set to
-- NULL, default security descriptor values will be used, and
-- child processes created by the application will not inherit the
-- handle, as described in the MSDN documentation for “Synchronization
-- Object Security and Access Rights”1. Further, if the structure is not
-- present, the access rights will be
--
-- DXGI_SHARED_RESOURCE_READ |
-- DXGI_SHARED_RESOURCE_WRITE
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pAttributes is not NULL, pAttributes
-- must be a valid pointer to a valid SECURITY_ATTRIBUTES
-- value
--
--
-- See Also
--
-- StructureType
data ExportMemoryWin32HandleInfoNV
ExportMemoryWin32HandleInfoNV :: Ptr SECURITY_ATTRIBUTES -> DWORD -> ExportMemoryWin32HandleInfoNV
-- | pAttributes is a pointer to a Windows
-- SECURITY_ATTRIBUTES structure specifying security attributes of
-- the handle.
[$sel:attributes:ExportMemoryWin32HandleInfoNV] :: ExportMemoryWin32HandleInfoNV -> Ptr SECURITY_ATTRIBUTES
-- | dwAccess is a DWORD specifying access rights of the
-- handle.
[$sel:dwAccess:ExportMemoryWin32HandleInfoNV] :: ExportMemoryWin32HandleInfoNV -> DWORD
type NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION = 1
pattern NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION :: forall a. Integral a => a
type NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME = "VK_NV_external_memory_win32"
pattern NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type HANDLE = Ptr ()
type DWORD = Word32
data SECURITY_ATTRIBUTES
-- | VkExternalMemoryHandleTypeFlagBitsNV - Bitmask specifying external
-- memory handle types
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagsNV
newtype ExternalMemoryHandleTypeFlagBitsNV
ExternalMemoryHandleTypeFlagBitsNV :: Flags -> ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV specifies a
-- handle to memory returned by getMemoryWin32HandleNV, or one
-- duplicated from such a handle using DuplicateHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV specifies a
-- handle to memory returned by getMemoryWin32HandleNV.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV specifies a
-- valid NT handle to memory returned by
-- IDXGIResource1::CreateSharedHandle, or a handle duplicated
-- from such a handle using DuplicateHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV specifies a
-- handle to memory returned by
-- IDXGIResource::GetSharedHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
type ExternalMemoryHandleTypeFlagsNV = ExternalMemoryHandleTypeFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory_win32.ExportMemoryWin32HandleInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory_win32.ImportMemoryWin32HandleInfoNV
module Vulkan.Extensions.VK_KHR_external_memory_win32
-- | vkGetMemoryWin32HandleKHR - Get a Windows HANDLE for a memory object
--
-- Description
--
-- For handle types defined as NT handles, the handles returned by
-- getMemoryWin32HandleKHR are owned by the application. To avoid
-- leaking resources, the application must release ownership of
-- them using the CloseHandle system call when they are no
-- longer needed.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, MemoryGetWin32HandleInfoKHR
getMemoryWin32HandleKHR :: forall io. MonadIO io => Device -> MemoryGetWin32HandleInfoKHR -> io HANDLE
-- | vkGetMemoryWin32HandlePropertiesKHR - Get Properties of External
-- Memory Win32 Handles
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ExternalMemoryHandleTypeFlagBits,
-- MemoryWin32HandlePropertiesKHR
getMemoryWin32HandlePropertiesKHR :: forall io. MonadIO io => Device -> ExternalMemoryHandleTypeFlagBits -> HANDLE -> io MemoryWin32HandlePropertiesKHR
-- | VkImportMemoryWin32HandleInfoKHR - import Win32 memory created on the
-- same physical device
--
-- Description
--
-- Importing memory objects from Windows handles does not transfer
-- ownership of the handle to the Vulkan implementation. For handle types
-- defined as NT handles, the application must release ownership
-- using the CloseHandle system call when the handle is no
-- longer needed.
--
-- Applications can import the same underlying memory into
-- multiple instances of Vulkan, into the same instance from which it was
-- exported, and multiple times into a given Vulkan instance. In all
-- cases, each import operation must create a distinct
-- DeviceMemory object.
--
-- Valid Usage
--
--
--
--
-- - The memory from which handle was exported, or the memory
-- named by name must have been created on the same
-- underlying physical device as device
-- - If handleType is not 0, it must be
-- defined as an NT handle or a global share handle
-- - If handleType is not
-- EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, name
-- must be NULL
-- - If handleType is not 0 and handle is
-- NULL, name must name a valid memory resource
-- of the type specified by handleType
-- - If handleType is not 0 and name is
-- NULL, handle must be a valid handle of the
-- type specified by handleType
-- - if handle is not NULL, name must
-- be NULL
-- - If handle is not NULL, it must obey any
-- requirements listed for handleType in external memory
-- handle types compatibility
-- - If name is not NULL, it must obey any
-- requirements listed for handleType in external memory
-- handle types compatibility
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagBits, StructureType
data ImportMemoryWin32HandleInfoKHR
ImportMemoryWin32HandleInfoKHR :: ExternalMemoryHandleTypeFlagBits -> HANDLE -> LPCWSTR -> ImportMemoryWin32HandleInfoKHR
-- | handleType specifies the type of handle or
-- name.
[$sel:handleType:ImportMemoryWin32HandleInfoKHR] :: ImportMemoryWin32HandleInfoKHR -> ExternalMemoryHandleTypeFlagBits
-- | handle is the external handle to import, or NULL.
[$sel:handle:ImportMemoryWin32HandleInfoKHR] :: ImportMemoryWin32HandleInfoKHR -> HANDLE
-- | name is a null-terminated UTF-16 string naming the underlying
-- memory resource to import, or NULL.
[$sel:name:ImportMemoryWin32HandleInfoKHR] :: ImportMemoryWin32HandleInfoKHR -> LPCWSTR
-- | VkExportMemoryWin32HandleInfoKHR - Structure specifying additional
-- attributes of Windows handles exported from a memory
--
-- Description
--
-- If ExportMemoryAllocateInfo is not present in the same
-- pNext chain, this structure is ignored.
--
-- If ExportMemoryAllocateInfo is present in the pNext
-- chain of MemoryAllocateInfo with a Windows handleType,
-- but either ExportMemoryWin32HandleInfoKHR is not present in the
-- pNext chain, or if it is but pAttributes is set to
-- NULL, default security descriptor values will be used, and
-- child processes created by the application will not inherit the
-- handle, as described in the MSDN documentation for “Synchronization
-- Object Security and Access Rights”1. Further, if the structure is not
-- present, the access rights used depend on the handle type.
--
-- For handles of the following types:
--
-- EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT
--
-- The implementation must ensure the access rights allow read and
-- write access to the memory.
--
-- For handles of the following types:
--
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT
-- EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT
--
-- The access rights must be:
--
--
-- GENERIC_ALL
--
--
--
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pAttributes is not NULL, pAttributes
-- must be a valid pointer to a valid SECURITY_ATTRIBUTES
-- value
--
--
-- See Also
--
-- StructureType
data ExportMemoryWin32HandleInfoKHR
ExportMemoryWin32HandleInfoKHR :: Ptr SECURITY_ATTRIBUTES -> DWORD -> LPCWSTR -> ExportMemoryWin32HandleInfoKHR
-- | pAttributes is a pointer to a Windows
-- SECURITY_ATTRIBUTES structure specifying security attributes of
-- the handle.
[$sel:attributes:ExportMemoryWin32HandleInfoKHR] :: ExportMemoryWin32HandleInfoKHR -> Ptr SECURITY_ATTRIBUTES
-- | dwAccess is a DWORD specifying access rights of the
-- handle.
[$sel:dwAccess:ExportMemoryWin32HandleInfoKHR] :: ExportMemoryWin32HandleInfoKHR -> DWORD
-- | name is a null-terminated UTF-16 string to associate with the
-- underlying resource referenced by NT handles exported from the created
-- memory.
[$sel:name:ExportMemoryWin32HandleInfoKHR] :: ExportMemoryWin32HandleInfoKHR -> LPCWSTR
-- | VkMemoryWin32HandlePropertiesKHR - Properties of External Memory
-- Windows Handles
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, getMemoryWin32HandlePropertiesKHR
data MemoryWin32HandlePropertiesKHR
MemoryWin32HandlePropertiesKHR :: Word32 -> MemoryWin32HandlePropertiesKHR
-- | memoryTypeBits is a bitmask containing one bit set for every
-- memory type which the specified windows handle can be imported
-- as.
[$sel:memoryTypeBits:MemoryWin32HandlePropertiesKHR] :: MemoryWin32HandlePropertiesKHR -> Word32
-- | VkMemoryGetWin32HandleInfoKHR - Structure describing a Win32 handle
-- semaphore export operation
--
-- Description
--
-- The properties of the handle returned depend on the value of
-- handleType. See ExternalMemoryHandleTypeFlagBits for a
-- description of the properties of the defined external memory handle
-- types.
--
-- Valid Usage
--
--
--
--
-- - If handleType is defined as an NT handle,
-- getMemoryWin32HandleKHR must be called no more than once
-- for each valid unique combination of memory and
-- handleType
-- - handleType must be defined as an NT handle or a
-- global share handle
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DeviceMemory, ExternalMemoryHandleTypeFlagBits,
-- StructureType, getMemoryWin32HandleKHR
data MemoryGetWin32HandleInfoKHR
MemoryGetWin32HandleInfoKHR :: DeviceMemory -> ExternalMemoryHandleTypeFlagBits -> MemoryGetWin32HandleInfoKHR
-- | memory is the memory object from which the handle will be
-- exported.
[$sel:memory:MemoryGetWin32HandleInfoKHR] :: MemoryGetWin32HandleInfoKHR -> DeviceMemory
-- | handleType is the type of handle requested.
[$sel:handleType:MemoryGetWin32HandleInfoKHR] :: MemoryGetWin32HandleInfoKHR -> ExternalMemoryHandleTypeFlagBits
type KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION = 1
pattern KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME = "VK_KHR_external_memory_win32"
pattern KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type LPCWSTR = Ptr CWchar
type HANDLE = Ptr ()
type DWORD = Word32
data SECURITY_ATTRIBUTES
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_win32.ImportMemoryWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_win32.ExportMemoryWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryGetWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_memory_win32.MemoryWin32HandlePropertiesKHR
module Vulkan.Extensions.VK_KHR_external_semaphore_win32
-- | vkGetSemaphoreWin32HandleKHR - Get a Windows HANDLE for a semaphore
--
-- Description
--
-- For handle types defined as NT handles, the handles returned by
-- getSemaphoreWin32HandleKHR are owned by the application. To
-- avoid leaking resources, the application must release ownership
-- of them using the CloseHandle system call when they are no
-- longer needed.
--
-- Exporting a Windows handle from a semaphore may have side
-- effects depending on the transference of the specified handle type, as
-- described in Importing Semaphore Payloads.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, SemaphoreGetWin32HandleInfoKHR
getSemaphoreWin32HandleKHR :: forall io. MonadIO io => Device -> SemaphoreGetWin32HandleInfoKHR -> io HANDLE
-- | vkImportSemaphoreWin32HandleKHR - Import a semaphore from a Windows
-- HANDLE
--
-- Description
--
-- Importing a semaphore payload from Windows handles does not transfer
-- ownership of the handle to the Vulkan implementation. For handle types
-- defined as NT handles, the application must release ownership
-- using the CloseHandle system call when the handle is no
-- longer needed.
--
-- Applications can import the same semaphore payload into
-- multiple instances of Vulkan, into the same instance from which it was
-- exported, and multiple times into a given Vulkan instance.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ImportSemaphoreWin32HandleInfoKHR
importSemaphoreWin32HandleKHR :: forall io. MonadIO io => Device -> ImportSemaphoreWin32HandleInfoKHR -> io ()
-- | VkImportSemaphoreWin32HandleInfoKHR - Structure specifying Windows
-- handle to import to a semaphore
--
-- Description
--
-- The handle types supported by handleType are:
--
-- TODO: table
--
-- Handle Types Supported by ImportSemaphoreWin32HandleInfoKHR
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to semaphore must be externally
-- synchronized
--
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlagBits, Semaphore,
-- SemaphoreImportFlags, StructureType,
-- importSemaphoreWin32HandleKHR
data ImportSemaphoreWin32HandleInfoKHR
ImportSemaphoreWin32HandleInfoKHR :: Semaphore -> SemaphoreImportFlags -> ExternalSemaphoreHandleTypeFlagBits -> HANDLE -> LPCWSTR -> ImportSemaphoreWin32HandleInfoKHR
-- | semaphore is the semaphore into which the payload will be
-- imported.
[$sel:semaphore:ImportSemaphoreWin32HandleInfoKHR] :: ImportSemaphoreWin32HandleInfoKHR -> Semaphore
-- | flags is a bitmask of SemaphoreImportFlagBits
-- specifying additional parameters for the semaphore payload import
-- operation.
[$sel:flags:ImportSemaphoreWin32HandleInfoKHR] :: ImportSemaphoreWin32HandleInfoKHR -> SemaphoreImportFlags
-- | handleType specifies the type of handle.
[$sel:handleType:ImportSemaphoreWin32HandleInfoKHR] :: ImportSemaphoreWin32HandleInfoKHR -> ExternalSemaphoreHandleTypeFlagBits
-- | handle is the external handle to import, or NULL.
[$sel:handle:ImportSemaphoreWin32HandleInfoKHR] :: ImportSemaphoreWin32HandleInfoKHR -> HANDLE
-- | name is a null-terminated UTF-16 string naming the underlying
-- synchronization primitive to import, or NULL.
[$sel:name:ImportSemaphoreWin32HandleInfoKHR] :: ImportSemaphoreWin32HandleInfoKHR -> LPCWSTR
-- | VkExportSemaphoreWin32HandleInfoKHR - Structure specifying additional
-- attributes of Windows handles exported from a semaphore
--
-- Description
--
-- If ExportSemaphoreCreateInfo is not present in the same
-- pNext chain, this structure is ignored.
--
-- If ExportSemaphoreCreateInfo is present in the pNext
-- chain of SemaphoreCreateInfo with a Windows
-- handleType, but either
-- ExportSemaphoreWin32HandleInfoKHR is not present in the
-- pNext chain, or if it is but pAttributes is set to
-- NULL, default security descriptor values will be used, and
-- child processes created by the application will not inherit the
-- handle, as described in the MSDN documentation for “Synchronization
-- Object Security and Access Rights”1. Further, if the structure is not
-- present, the access rights used depend on the handle type.
--
-- For handles of the following types:
--
-- EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT
--
-- The implementation must ensure the access rights allow both
-- signal and wait operations on the semaphore.
--
-- For handles of the following types:
--
-- EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT
--
-- The access rights must be:
--
--
-- GENERIC_ALL
--
--
--
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pAttributes is not NULL, pAttributes
-- must be a valid pointer to a valid SECURITY_ATTRIBUTES
-- value
--
--
-- See Also
--
-- StructureType
data ExportSemaphoreWin32HandleInfoKHR
ExportSemaphoreWin32HandleInfoKHR :: Ptr SECURITY_ATTRIBUTES -> DWORD -> LPCWSTR -> ExportSemaphoreWin32HandleInfoKHR
-- | pAttributes is a pointer to a Windows
-- SECURITY_ATTRIBUTES structure specifying security attributes of
-- the handle.
[$sel:attributes:ExportSemaphoreWin32HandleInfoKHR] :: ExportSemaphoreWin32HandleInfoKHR -> Ptr SECURITY_ATTRIBUTES
-- | dwAccess is a DWORD specifying access rights of the
-- handle.
[$sel:dwAccess:ExportSemaphoreWin32HandleInfoKHR] :: ExportSemaphoreWin32HandleInfoKHR -> DWORD
-- | name is a null-terminated UTF-16 string to associate with the
-- underlying synchronization primitive referenced by NT handles exported
-- from the created semaphore.
[$sel:name:ExportSemaphoreWin32HandleInfoKHR] :: ExportSemaphoreWin32HandleInfoKHR -> LPCWSTR
-- | VkD3D12FenceSubmitInfoKHR - Structure specifying values for Direct3D
-- 12 fence-backed semaphores
--
-- Description
--
-- If the semaphore in SubmitInfo::pWaitSemaphores or
-- SubmitInfo::pSignalSemaphores corresponding to an
-- entry in pWaitSemaphoreValues or
-- pSignalSemaphoreValues respectively does not currently have a
-- payload referring to a Direct3D 12 fence, the implementation
-- must ignore the value in the pWaitSemaphoreValues or
-- pSignalSemaphoreValues entry.
--
-- Note
--
-- As the introduction of the external semaphore handle type
-- EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT predates that of
-- timeline semaphores, support for importing semaphore payloads from
-- external handles of that type into semaphores created (implicitly or
-- explicitly) with a SemaphoreType of
-- SEMAPHORE_TYPE_BINARY is preserved for backwards compatibility.
-- However, applications should prefer importing such handle types
-- into semaphores created with a SemaphoreType of
-- SEMAPHORE_TYPE_TIMELINE, and use the
-- TimelineSemaphoreSubmitInfo structure instead of the
-- D3D12FenceSubmitInfoKHR structure to specify the values to use
-- when waiting for and signaling such semaphores.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If waitSemaphoreValuesCount is not 0, and
-- pWaitSemaphoreValues is not NULL,
-- pWaitSemaphoreValues must be a valid pointer to an
-- array of waitSemaphoreValuesCount uint64_t
-- values
-- - If signalSemaphoreValuesCount is not 0, and
-- pSignalSemaphoreValues is not NULL,
-- pSignalSemaphoreValues must be a valid pointer to an
-- array of signalSemaphoreValuesCount uint64_t
-- values
--
--
-- See Also
--
-- StructureType
data D3D12FenceSubmitInfoKHR
D3D12FenceSubmitInfoKHR :: Word32 -> Vector Word64 -> Word32 -> Vector Word64 -> D3D12FenceSubmitInfoKHR
-- | waitSemaphoreValuesCount is the number of semaphore wait
-- values specified in pWaitSemaphoreValues.
[$sel:waitSemaphoreValuesCount:D3D12FenceSubmitInfoKHR] :: D3D12FenceSubmitInfoKHR -> Word32
-- | pWaitSemaphoreValues is a pointer to an array of
-- waitSemaphoreValuesCount values for the corresponding
-- semaphores in SubmitInfo::pWaitSemaphores to wait for.
[$sel:waitSemaphoreValues:D3D12FenceSubmitInfoKHR] :: D3D12FenceSubmitInfoKHR -> Vector Word64
-- | signalSemaphoreValuesCount is the number of semaphore signal
-- values specified in pSignalSemaphoreValues.
[$sel:signalSemaphoreValuesCount:D3D12FenceSubmitInfoKHR] :: D3D12FenceSubmitInfoKHR -> Word32
-- | pSignalSemaphoreValues is a pointer to an array of
-- signalSemaphoreValuesCount values for the corresponding
-- semaphores in SubmitInfo::pSignalSemaphores to set
-- when signaled.
[$sel:signalSemaphoreValues:D3D12FenceSubmitInfoKHR] :: D3D12FenceSubmitInfoKHR -> Vector Word64
-- | VkSemaphoreGetWin32HandleInfoKHR - Structure describing a Win32 handle
-- semaphore export operation
--
-- Description
--
-- The properties of the handle returned depend on the value of
-- handleType. See ExternalSemaphoreHandleTypeFlagBits
-- for a description of the properties of the defined external semaphore
-- handle types.
--
-- Valid Usage
--
--
-- - handleType must have been included in
-- ExportSemaphoreCreateInfo::handleTypes when the
-- semaphore’s current payload was created
--
--
--
-- - If handleType is defined as an NT handle,
-- getSemaphoreWin32HandleKHR must be called no more than
-- once for each valid unique combination of semaphore and
-- handleType
-- - semaphore must not currently have its payload
-- replaced by an imported payload as described below in Importing
-- Semaphore Payloads unless that imported payload’s handle type was
-- included in
-- ExternalSemaphoreProperties::exportFromImportedHandleTypes
-- for handleType
-- - If handleType refers to a handle type with copy payload
-- transference semantics, as defined below in Importing Semaphore
-- Payloads, there must be no queue waiting on
-- semaphore
-- - If handleType refers to a handle type with copy payload
-- transference semantics, semaphore must be signaled, or
-- have an associated semaphore signal operation pending
-- execution
-- - handleType must be defined as an NT handle or a
-- global share handle
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalSemaphoreHandleTypeFlagBits, Semaphore,
-- StructureType, getSemaphoreWin32HandleKHR
data SemaphoreGetWin32HandleInfoKHR
SemaphoreGetWin32HandleInfoKHR :: Semaphore -> ExternalSemaphoreHandleTypeFlagBits -> SemaphoreGetWin32HandleInfoKHR
-- | semaphore is the semaphore from which state will be exported.
[$sel:semaphore:SemaphoreGetWin32HandleInfoKHR] :: SemaphoreGetWin32HandleInfoKHR -> Semaphore
-- | handleType is the type of handle requested.
[$sel:handleType:SemaphoreGetWin32HandleInfoKHR] :: SemaphoreGetWin32HandleInfoKHR -> ExternalSemaphoreHandleTypeFlagBits
type KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION = 1
pattern KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME = "VK_KHR_external_semaphore_win32"
pattern KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type HANDLE = Ptr ()
type DWORD = Word32
type LPCWSTR = Ptr CWchar
data SECURITY_ATTRIBUTES
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_semaphore_win32.D3D12FenceSubmitInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_semaphore_win32.D3D12FenceSubmitInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_semaphore_win32.SemaphoreGetWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.D3D12FenceSubmitInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.D3D12FenceSubmitInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_semaphore_win32.D3D12FenceSubmitInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_semaphore_win32.ExportSemaphoreWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_semaphore_win32.ImportSemaphoreWin32HandleInfoKHR
module Vulkan.Extensions.VK_KHR_external_fence_win32
-- | vkGetFenceWin32HandleKHR - Get a Windows HANDLE for a fence
--
-- Description
--
-- For handle types defined as NT handles, the handles returned by
-- getFenceWin32HandleKHR are owned by the application. To avoid
-- leaking resources, the application must release ownership of
-- them using the CloseHandle system call when they are no
-- longer needed.
--
-- Exporting a Windows handle from a fence may have side effects
-- depending on the transference of the specified handle type, as
-- described in Importing Fence Payloads.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, FenceGetWin32HandleInfoKHR
getFenceWin32HandleKHR :: forall io. MonadIO io => Device -> FenceGetWin32HandleInfoKHR -> io HANDLE
-- | vkImportFenceWin32HandleKHR - Import a fence from a Windows HANDLE
--
-- Description
--
-- Importing a fence payload from Windows handles does not transfer
-- ownership of the handle to the Vulkan implementation. For handle types
-- defined as NT handles, the application must release ownership
-- using the CloseHandle system call when the handle is no
-- longer needed.
--
-- Applications can import the same fence payload into multiple
-- instances of Vulkan, into the same instance from which it was
-- exported, and multiple times into a given Vulkan instance.
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- Device, ImportFenceWin32HandleInfoKHR
importFenceWin32HandleKHR :: forall io. MonadIO io => Device -> ImportFenceWin32HandleInfoKHR -> io ()
-- | VkImportFenceWin32HandleInfoKHR - (None)
--
-- Description
--
-- The handle types supported by handleType are:
--
-- TODO: table
--
-- Handle Types Supported by ImportFenceWin32HandleInfoKHR
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to fence must be externally
-- synchronized
--
--
-- See Also
--
-- ExternalFenceHandleTypeFlagBits, Fence,
-- FenceImportFlags, StructureType,
-- importFenceWin32HandleKHR
data ImportFenceWin32HandleInfoKHR
ImportFenceWin32HandleInfoKHR :: Fence -> FenceImportFlags -> ExternalFenceHandleTypeFlagBits -> HANDLE -> LPCWSTR -> ImportFenceWin32HandleInfoKHR
-- | fence is the fence into which the state will be imported.
[$sel:fence:ImportFenceWin32HandleInfoKHR] :: ImportFenceWin32HandleInfoKHR -> Fence
-- | flags is a bitmask of FenceImportFlagBits specifying
-- additional parameters for the fence payload import operation.
[$sel:flags:ImportFenceWin32HandleInfoKHR] :: ImportFenceWin32HandleInfoKHR -> FenceImportFlags
-- | handleType specifies the type of handle.
[$sel:handleType:ImportFenceWin32HandleInfoKHR] :: ImportFenceWin32HandleInfoKHR -> ExternalFenceHandleTypeFlagBits
-- | handle is the external handle to import, or NULL.
[$sel:handle:ImportFenceWin32HandleInfoKHR] :: ImportFenceWin32HandleInfoKHR -> HANDLE
-- | name is a null-terminated UTF-16 string naming the underlying
-- synchronization primitive to import, or NULL.
[$sel:name:ImportFenceWin32HandleInfoKHR] :: ImportFenceWin32HandleInfoKHR -> LPCWSTR
-- | VkExportFenceWin32HandleInfoKHR - Structure specifying additional
-- attributes of Windows handles exported from a fence
--
-- Description
--
-- If ExportFenceCreateInfo is not present in the same
-- pNext chain, this structure is ignored.
--
-- If ExportFenceCreateInfo is present in the pNext chain
-- of FenceCreateInfo with a Windows handleType, but
-- either ExportFenceWin32HandleInfoKHR is not present in the
-- pNext chain, or if it is but pAttributes is set to
-- NULL, default security descriptor values will be used, and
-- child processes created by the application will not inherit the
-- handle, as described in the MSDN documentation for “Synchronization
-- Object Security and Access Rights”1. Further, if the structure is not
-- present, the access rights will be
--
-- DXGI_SHARED_RESOURCE_READ |
-- DXGI_SHARED_RESOURCE_WRITE
--
-- for handles of the following types:
--
-- EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT
--
--
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - If pAttributes is not NULL, pAttributes
-- must be a valid pointer to a valid SECURITY_ATTRIBUTES
-- value
--
--
-- See Also
--
-- StructureType
data ExportFenceWin32HandleInfoKHR
ExportFenceWin32HandleInfoKHR :: Ptr SECURITY_ATTRIBUTES -> DWORD -> LPCWSTR -> ExportFenceWin32HandleInfoKHR
-- | pAttributes is a pointer to a Windows
-- SECURITY_ATTRIBUTES structure specifying security attributes of
-- the handle.
[$sel:attributes:ExportFenceWin32HandleInfoKHR] :: ExportFenceWin32HandleInfoKHR -> Ptr SECURITY_ATTRIBUTES
-- | dwAccess is a DWORD specifying access rights of the
-- handle.
[$sel:dwAccess:ExportFenceWin32HandleInfoKHR] :: ExportFenceWin32HandleInfoKHR -> DWORD
-- | name is a null-terminated UTF-16 string to associate with the
-- underlying synchronization primitive referenced by NT handles exported
-- from the created fence.
[$sel:name:ExportFenceWin32HandleInfoKHR] :: ExportFenceWin32HandleInfoKHR -> LPCWSTR
-- | VkFenceGetWin32HandleInfoKHR - Structure describing a Win32 handle
-- fence export operation
--
-- Description
--
-- The properties of the handle returned depend on the value of
-- handleType. See ExternalFenceHandleTypeFlagBits for a
-- description of the properties of the defined external fence handle
-- types.
--
-- Valid Usage
--
--
-- - handleType must have been included in
-- ExportFenceCreateInfo::handleTypes when the
-- fence’s current payload was created
--
--
--
-- - If handleType is defined as an NT handle,
-- getFenceWin32HandleKHR must be called no more than once
-- for each valid unique combination of fence and
-- handleType
-- - fence must not currently have its payload replaced
-- by an imported payload as described below in Importing Fence
-- Payloads unless that imported payload’s handle type was included
-- in
-- ExternalFenceProperties::exportFromImportedHandleTypes
-- for handleType
-- - If handleType refers to a handle type with copy payload
-- transference semantics, fence must be signaled, or
-- have an associated fence signal operation pending
-- execution
-- - handleType must be defined as an NT handle or a
-- global share handle
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ExternalFenceHandleTypeFlagBits, Fence,
-- StructureType, getFenceWin32HandleKHR
data FenceGetWin32HandleInfoKHR
FenceGetWin32HandleInfoKHR :: Fence -> ExternalFenceHandleTypeFlagBits -> FenceGetWin32HandleInfoKHR
-- | fence is the fence from which state will be exported.
[$sel:fence:FenceGetWin32HandleInfoKHR] :: FenceGetWin32HandleInfoKHR -> Fence
-- | handleType is the type of handle requested.
[$sel:handleType:FenceGetWin32HandleInfoKHR] :: FenceGetWin32HandleInfoKHR -> ExternalFenceHandleTypeFlagBits
type KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION = 1
pattern KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION :: forall a. Integral a => a
type KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME = "VK_KHR_external_fence_win32"
pattern KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
type HANDLE = Ptr ()
type DWORD = Word32
type LPCWSTR = Ptr CWchar
data SECURITY_ATTRIBUTES
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_fence_win32.FenceGetWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_fence_win32.ExportFenceWin32HandleInfoKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_external_fence_win32.ImportFenceWin32HandleInfoKHR
module Vulkan.Extensions.VK_NV_external_memory
-- | VkExternalMemoryImageCreateInfoNV - Specify that an image may be
-- backed by external memory
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagsNV, StructureType
data ExternalMemoryImageCreateInfoNV
ExternalMemoryImageCreateInfoNV :: ExternalMemoryHandleTypeFlagsNV -> ExternalMemoryImageCreateInfoNV
-- | handleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBitsNV specifying one or more
-- external memory handle types.
--
-- handleTypes must be a valid combination of
-- ExternalMemoryHandleTypeFlagBitsNV values
[$sel:handleTypes:ExternalMemoryImageCreateInfoNV] :: ExternalMemoryImageCreateInfoNV -> ExternalMemoryHandleTypeFlagsNV
-- | VkExportMemoryAllocateInfoNV - Specify memory handle types that may be
-- exported
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagsNV, StructureType
data ExportMemoryAllocateInfoNV
ExportMemoryAllocateInfoNV :: ExternalMemoryHandleTypeFlagsNV -> ExportMemoryAllocateInfoNV
-- | handleTypes is a bitmask of
-- ExternalMemoryHandleTypeFlagBitsNV specifying one or more
-- memory handle types that may be exported. Multiple handle types
-- may be requested for the same allocation as long as they are
-- compatible, as reported by
-- getPhysicalDeviceExternalImageFormatPropertiesNV.
--
-- handleTypes must be a valid combination of
-- ExternalMemoryHandleTypeFlagBitsNV values
[$sel:handleTypes:ExportMemoryAllocateInfoNV] :: ExportMemoryAllocateInfoNV -> ExternalMemoryHandleTypeFlagsNV
type NV_EXTERNAL_MEMORY_SPEC_VERSION = 1
pattern NV_EXTERNAL_MEMORY_SPEC_VERSION :: forall a. Integral a => a
type NV_EXTERNAL_MEMORY_EXTENSION_NAME = "VK_NV_external_memory"
pattern NV_EXTERNAL_MEMORY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | VkExternalMemoryHandleTypeFlagBitsNV - Bitmask specifying external
-- memory handle types
--
-- See Also
--
-- ExternalMemoryHandleTypeFlagsNV
newtype ExternalMemoryHandleTypeFlagBitsNV
ExternalMemoryHandleTypeFlagBitsNV :: Flags -> ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV specifies a
-- handle to memory returned by getMemoryWin32HandleNV, or one
-- duplicated from such a handle using DuplicateHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV specifies a
-- handle to memory returned by getMemoryWin32HandleNV.
pattern EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV specifies a
-- valid NT handle to memory returned by
-- IDXGIResource1::CreateSharedHandle, or a handle duplicated
-- from such a handle using DuplicateHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
-- | EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV specifies a
-- handle to memory returned by
-- IDXGIResource::GetSharedHandle().
pattern EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV :: ExternalMemoryHandleTypeFlagBitsNV
type ExternalMemoryHandleTypeFlagsNV = ExternalMemoryHandleTypeFlagBitsNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance GHC.Classes.Eq Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
instance GHC.Generics.Generic Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance GHC.Show.Show Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory.ExportMemoryAllocateInfoNV
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
instance Foreign.Storable.Storable Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_NV_external_memory.ExternalMemoryImageCreateInfoNV
module Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2
-- | vkGetPhysicalDeviceFeatures2 - Reports capabilities of a physical
-- device
--
-- Description
--
-- Each structure in pFeatures and its pNext chain
-- contains members corresponding to fine-grained features.
-- getPhysicalDeviceFeatures2 writes each member to a boolean
-- value indicating whether that feature is supported.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceFeatures2
getPhysicalDeviceFeatures2 :: forall a io. (Extendss PhysicalDeviceFeatures2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io (PhysicalDeviceFeatures2 a)
-- | vkGetPhysicalDeviceProperties2 - Returns properties of a physical
-- device
--
-- Description
--
-- Each structure in pProperties and its pNext chain
-- contain members corresponding to properties or
-- implementation-dependent limits. getPhysicalDeviceProperties2
-- writes each member to a value indicating the value of that property or
-- limit.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceProperties2
getPhysicalDeviceProperties2 :: forall a io. (Extendss PhysicalDeviceProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io (PhysicalDeviceProperties2 a)
-- | vkGetPhysicalDeviceFormatProperties2 - Lists physical device’s format
-- capabilities
--
-- Description
--
-- getPhysicalDeviceFormatProperties2 behaves similarly to
-- getPhysicalDeviceFormatProperties, with the ability to return
-- extended information in a pNext chain of output structures.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Format, FormatProperties2, PhysicalDevice
getPhysicalDeviceFormatProperties2 :: forall a io. (Extendss FormatProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> Format -> io (FormatProperties2 a)
-- | vkGetPhysicalDeviceImageFormatProperties2 - Lists physical device’s
-- image format capabilities
--
-- Description
--
-- getPhysicalDeviceImageFormatProperties2 behaves similarly to
-- getPhysicalDeviceImageFormatProperties, with the ability to
-- return extended information in a pNext chain of output
-- structures.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- ImageFormatProperties2, PhysicalDevice,
-- PhysicalDeviceImageFormatInfo2
getPhysicalDeviceImageFormatProperties2 :: forall a b io. (Extendss PhysicalDeviceImageFormatInfo2 a, Extendss ImageFormatProperties2 b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => PhysicalDevice -> PhysicalDeviceImageFormatInfo2 a -> io (ImageFormatProperties2 b)
-- | vkGetPhysicalDeviceQueueFamilyProperties2 - Reports properties of the
-- queues of the specified physical device
--
-- Description
--
-- getPhysicalDeviceQueueFamilyProperties2 behaves similarly to
-- getPhysicalDeviceQueueFamilyProperties, with the ability to
-- return extended information in a pNext chain of output
-- structures.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pQueueFamilyPropertyCount must be a valid pointer
-- to a uint32_t value
-- - If the value referenced by pQueueFamilyPropertyCount is
-- not 0, and pQueueFamilyProperties is not
-- NULL, pQueueFamilyProperties must be a valid
-- pointer to an array of pQueueFamilyPropertyCount
-- QueueFamilyProperties2 structures
--
--
-- See Also
--
-- PhysicalDevice, QueueFamilyProperties2
getPhysicalDeviceQueueFamilyProperties2 :: forall a io. (Extendss QueueFamilyProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io ("queueFamilyProperties" ::: Vector (QueueFamilyProperties2 a))
-- | vkGetPhysicalDeviceMemoryProperties2 - Reports memory information for
-- the specified physical device
--
-- Description
--
-- getPhysicalDeviceMemoryProperties2 behaves similarly to
-- getPhysicalDeviceMemoryProperties, with the ability to return
-- extended information in a pNext chain of output structures.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceMemoryProperties2
getPhysicalDeviceMemoryProperties2 :: forall a io. (Extendss PhysicalDeviceMemoryProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io (PhysicalDeviceMemoryProperties2 a)
-- | vkGetPhysicalDeviceSparseImageFormatProperties2 - Retrieve properties
-- of an image format applied to sparse images
--
-- Description
--
-- getPhysicalDeviceSparseImageFormatProperties2 behaves
-- identically to getPhysicalDeviceSparseImageFormatProperties,
-- with the ability to return extended information by adding extending
-- structures to the pNext chain of its pProperties
-- parameter.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pFormatInfo must be a valid pointer to a valid
-- PhysicalDeviceSparseImageFormatInfo2 structure
-- - pPropertyCount must be a valid pointer to a
-- uint32_t value
-- - If the value referenced by pPropertyCount is not
-- 0, and pProperties is not NULL,
-- pProperties must be a valid pointer to an array of
-- pPropertyCount SparseImageFormatProperties2
-- structures
--
--
-- See Also
--
-- PhysicalDevice, PhysicalDeviceSparseImageFormatInfo2,
-- SparseImageFormatProperties2
getPhysicalDeviceSparseImageFormatProperties2 :: forall io. MonadIO io => PhysicalDevice -> PhysicalDeviceSparseImageFormatInfo2 -> io ("properties" ::: Vector SparseImageFormatProperties2)
-- | VkPhysicalDeviceFeatures2 - Structure describing the fine-grained
-- features that can be supported by an implementation
--
-- Members
--
-- The PhysicalDeviceFeatures2 structure is defined as:
--
-- Description
--
-- The pNext chain of this structure is used to extend the
-- structure with features defined by extensions. This structure
-- can be used in getPhysicalDeviceFeatures2 or can
-- be included in the pNext chain of a DeviceCreateInfo
-- structure, in which case it controls which features are enabled in the
-- device in lieu of pEnabledFeatures.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- PhysicalDeviceFeatures, StructureType,
-- getPhysicalDeviceFeatures2,
-- getPhysicalDeviceFeatures2KHR
data PhysicalDeviceFeatures2 (es :: [Type])
PhysicalDeviceFeatures2 :: Chain es -> PhysicalDeviceFeatures -> PhysicalDeviceFeatures2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PhysicalDeviceFeatures2] :: PhysicalDeviceFeatures2 (es :: [Type]) -> Chain es
-- | features is a PhysicalDeviceFeatures structure
-- describing the fine-grained features of the Vulkan 1.0 API.
[$sel:features:PhysicalDeviceFeatures2] :: PhysicalDeviceFeatures2 (es :: [Type]) -> PhysicalDeviceFeatures
-- | VkPhysicalDeviceProperties2 - Structure specifying physical device
-- properties
--
-- Description
--
-- The pNext chain of this structure is used to extend the
-- structure with properties defined by extensions.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Properties, or
-- PhysicalDeviceVulkan12Properties
-- - The sType value of each struct in the pNext
-- chain must be unique
--
--
-- See Also
--
-- PhysicalDeviceProperties, StructureType,
-- getPhysicalDeviceProperties2,
-- getPhysicalDeviceProperties2KHR
data PhysicalDeviceProperties2 (es :: [Type])
PhysicalDeviceProperties2 :: Chain es -> PhysicalDeviceProperties -> PhysicalDeviceProperties2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PhysicalDeviceProperties2] :: PhysicalDeviceProperties2 (es :: [Type]) -> Chain es
-- | properties is a PhysicalDeviceProperties structure
-- describing properties of the physical device. This structure is
-- written with the same values as if it were written by
-- getPhysicalDeviceProperties.
[$sel:properties:PhysicalDeviceProperties2] :: PhysicalDeviceProperties2 (es :: [Type]) -> PhysicalDeviceProperties
-- | VkFormatProperties2 - Structure specifying image format properties
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- FormatProperties, StructureType,
-- getPhysicalDeviceFormatProperties2,
-- getPhysicalDeviceFormatProperties2KHR
data FormatProperties2 (es :: [Type])
FormatProperties2 :: Chain es -> FormatProperties -> FormatProperties2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:FormatProperties2] :: FormatProperties2 (es :: [Type]) -> Chain es
-- | formatProperties is a FormatProperties structure
-- describing features supported by the requested format.
[$sel:formatProperties:FormatProperties2] :: FormatProperties2 (es :: [Type]) -> FormatProperties
-- | VkImageFormatProperties2 - Structure specifying an image format
-- properties
--
-- Description
--
-- If the combination of parameters to
-- getPhysicalDeviceImageFormatProperties2 is not supported by the
-- implementation for use in createImage, then all members of
-- imageFormatProperties will be filled with zero.
--
-- Note
--
-- Filling imageFormatProperties with zero for unsupported
-- formats is an exception to the usual rule that output structures have
-- undefined contents on error. This exception was unintentional, but is
-- preserved for backwards compatibility. This exeption only applies to
-- imageFormatProperties, not sType, pNext, or
-- any structures chained from pNext.
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ImageFormatProperties, StructureType,
-- getPhysicalDeviceImageFormatProperties2,
-- getPhysicalDeviceImageFormatProperties2KHR
data ImageFormatProperties2 (es :: [Type])
ImageFormatProperties2 :: Chain es -> ImageFormatProperties -> ImageFormatProperties2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure. The pNext chain of
-- ImageFormatProperties2 is used to allow the specification of
-- additional capabilities to be returned from
-- getPhysicalDeviceImageFormatProperties2.
[$sel:next:ImageFormatProperties2] :: ImageFormatProperties2 (es :: [Type]) -> Chain es
-- | imageFormatProperties is a ImageFormatProperties
-- structure in which capabilities are returned.
[$sel:imageFormatProperties:ImageFormatProperties2] :: ImageFormatProperties2 (es :: [Type]) -> ImageFormatProperties
-- | VkPhysicalDeviceImageFormatInfo2 - Structure specifying image creation
-- parameters
--
-- Description
--
-- The members of PhysicalDeviceImageFormatInfo2 correspond to the
-- arguments to getPhysicalDeviceImageFormatProperties, with
-- sType and pNext added for extensibility.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Format, ImageCreateFlags, ImageTiling,
-- ImageType, ImageUsageFlags, StructureType,
-- getPhysicalDeviceImageFormatProperties2,
-- getPhysicalDeviceImageFormatProperties2KHR
data PhysicalDeviceImageFormatInfo2 (es :: [Type])
PhysicalDeviceImageFormatInfo2 :: Chain es -> Format -> ImageType -> ImageTiling -> ImageUsageFlags -> ImageCreateFlags -> PhysicalDeviceImageFormatInfo2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure. The pNext chain of
-- PhysicalDeviceImageFormatInfo2 is used to provide additional
-- image parameters to getPhysicalDeviceImageFormatProperties2.
[$sel:next:PhysicalDeviceImageFormatInfo2] :: PhysicalDeviceImageFormatInfo2 (es :: [Type]) -> Chain es
-- | format is a Format value indicating the image format,
-- corresponding to ImageCreateInfo::format.
[$sel:format:PhysicalDeviceImageFormatInfo2] :: PhysicalDeviceImageFormatInfo2 (es :: [Type]) -> Format
-- | type is a ImageType value indicating the image type,
-- corresponding to ImageCreateInfo::imageType.
[$sel:type':PhysicalDeviceImageFormatInfo2] :: PhysicalDeviceImageFormatInfo2 (es :: [Type]) -> ImageType
-- | tiling is a ImageTiling value indicating the image
-- tiling, corresponding to ImageCreateInfo::tiling.
[$sel:tiling:PhysicalDeviceImageFormatInfo2] :: PhysicalDeviceImageFormatInfo2 (es :: [Type]) -> ImageTiling
-- | usage is a bitmask of ImageUsageFlagBits indicating
-- the intended usage of the image, corresponding to
-- ImageCreateInfo::usage.
[$sel:usage:PhysicalDeviceImageFormatInfo2] :: PhysicalDeviceImageFormatInfo2 (es :: [Type]) -> ImageUsageFlags
-- | flags is a bitmask of ImageCreateFlagBits indicating
-- additional parameters of the image, corresponding to
-- ImageCreateInfo::flags.
[$sel:flags:PhysicalDeviceImageFormatInfo2] :: PhysicalDeviceImageFormatInfo2 (es :: [Type]) -> ImageCreateFlags
-- | VkQueueFamilyProperties2 - Structure providing information about a
-- queue family
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of QueueFamilyCheckpointPropertiesNV
-- - The sType value of each struct in the pNext
-- chain must be unique
--
--
-- See Also
--
-- QueueFamilyProperties, StructureType,
-- getPhysicalDeviceQueueFamilyProperties2,
-- getPhysicalDeviceQueueFamilyProperties2KHR
data QueueFamilyProperties2 (es :: [Type])
QueueFamilyProperties2 :: Chain es -> QueueFamilyProperties -> QueueFamilyProperties2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:QueueFamilyProperties2] :: QueueFamilyProperties2 (es :: [Type]) -> Chain es
-- | queueFamilyProperties is a QueueFamilyProperties
-- structure which is populated with the same values as in
-- getPhysicalDeviceQueueFamilyProperties.
[$sel:queueFamilyProperties:QueueFamilyProperties2] :: QueueFamilyProperties2 (es :: [Type]) -> QueueFamilyProperties
-- | VkPhysicalDeviceMemoryProperties2 - Structure specifying physical
-- device memory properties
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- PhysicalDeviceMemoryProperties, StructureType,
-- getPhysicalDeviceMemoryProperties2,
-- getPhysicalDeviceMemoryProperties2KHR
data PhysicalDeviceMemoryProperties2 (es :: [Type])
PhysicalDeviceMemoryProperties2 :: Chain es -> PhysicalDeviceMemoryProperties -> PhysicalDeviceMemoryProperties2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:PhysicalDeviceMemoryProperties2] :: PhysicalDeviceMemoryProperties2 (es :: [Type]) -> Chain es
-- | memoryProperties is a PhysicalDeviceMemoryProperties
-- structure which is populated with the same values as in
-- getPhysicalDeviceMemoryProperties.
[$sel:memoryProperties:PhysicalDeviceMemoryProperties2] :: PhysicalDeviceMemoryProperties2 (es :: [Type]) -> PhysicalDeviceMemoryProperties
-- | VkSparseImageFormatProperties2 - Structure specifying sparse image
-- format properties
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- SparseImageFormatProperties, StructureType,
-- getPhysicalDeviceSparseImageFormatProperties2,
-- getPhysicalDeviceSparseImageFormatProperties2KHR
data SparseImageFormatProperties2
SparseImageFormatProperties2 :: SparseImageFormatProperties -> SparseImageFormatProperties2
-- | properties is a SparseImageFormatProperties structure
-- which is populated with the same values as in
-- getPhysicalDeviceSparseImageFormatProperties.
[$sel:properties:SparseImageFormatProperties2] :: SparseImageFormatProperties2 -> SparseImageFormatProperties
-- | VkPhysicalDeviceSparseImageFormatInfo2 - Structure specifying sparse
-- image format inputs
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Format, ImageTiling, ImageType,
-- ImageUsageFlags, SampleCountFlagBits,
-- StructureType,
-- getPhysicalDeviceSparseImageFormatProperties2,
-- getPhysicalDeviceSparseImageFormatProperties2KHR
data PhysicalDeviceSparseImageFormatInfo2
PhysicalDeviceSparseImageFormatInfo2 :: Format -> ImageType -> SampleCountFlagBits -> ImageUsageFlags -> ImageTiling -> PhysicalDeviceSparseImageFormatInfo2
-- | format is the image format.
--
-- format must be a valid Format value
[$sel:format:PhysicalDeviceSparseImageFormatInfo2] :: PhysicalDeviceSparseImageFormatInfo2 -> Format
-- | type is the dimensionality of image.
--
-- type must be a valid ImageType value
[$sel:type':PhysicalDeviceSparseImageFormatInfo2] :: PhysicalDeviceSparseImageFormatInfo2 -> ImageType
-- | samples is the number of samples per texel as defined in
-- SampleCountFlagBits.
--
-- samples must be a bit value that is set in
-- ImageFormatProperties::sampleCounts returned by
-- getPhysicalDeviceImageFormatProperties with format,
-- type, tiling, and usage equal to those in
-- this command and flags equal to the value that is set in
-- ImageCreateInfo::flags when the image is created
--
-- samples must be a valid SampleCountFlagBits
-- value
[$sel:samples:PhysicalDeviceSparseImageFormatInfo2] :: PhysicalDeviceSparseImageFormatInfo2 -> SampleCountFlagBits
-- | usage is a bitmask describing the intended usage of the
-- image.
--
-- usage must be a valid combination of
-- ImageUsageFlagBits values
--
-- usage must not be 0
[$sel:usage:PhysicalDeviceSparseImageFormatInfo2] :: PhysicalDeviceSparseImageFormatInfo2 -> ImageUsageFlags
-- | tiling is the tiling arrangement of the texel blocks in
-- memory.
--
-- tiling must be a valid ImageTiling value
[$sel:tiling:PhysicalDeviceSparseImageFormatInfo2] :: PhysicalDeviceSparseImageFormatInfo2 -> ImageTiling
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es)
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es)
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.SparseImageFormatProperties2
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.SparseImageFormatProperties2
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceSparseImageFormatInfo2
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.SparseImageFormatProperties2
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.SparseImageFormatProperties2
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.SparseImageFormatProperties2
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceMemoryProperties2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.QueueFamilyProperties2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceImageFormatInfo2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.ImageFormatProperties2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.FormatProperties2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceProperties2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2 es)
module Vulkan.Extensions.VK_KHR_get_physical_device_properties2
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR :: StructureType
getPhysicalDeviceFeatures2KHR :: forall (a :: [Type]) io. (Extendss PhysicalDeviceFeatures2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io (PhysicalDeviceFeatures2 a)
getPhysicalDeviceProperties2KHR :: forall (a :: [Type]) io. (Extendss PhysicalDeviceProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io (PhysicalDeviceProperties2 a)
getPhysicalDeviceFormatProperties2KHR :: forall (a :: [Type]) io. (Extendss FormatProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> Format -> io (FormatProperties2 a)
getPhysicalDeviceImageFormatProperties2KHR :: forall (a :: [Type]) (b :: [Type]) io. (Extendss PhysicalDeviceImageFormatInfo2 a, Extendss ImageFormatProperties2 b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => PhysicalDevice -> PhysicalDeviceImageFormatInfo2 a -> io (ImageFormatProperties2 b)
getPhysicalDeviceQueueFamilyProperties2KHR :: forall (a :: [Type]) io. (Extendss QueueFamilyProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io ("queueFamilyProperties" ::: Vector (QueueFamilyProperties2 a))
getPhysicalDeviceMemoryProperties2KHR :: forall (a :: [Type]) io. (Extendss PhysicalDeviceMemoryProperties2 a, PokeChain a, PeekChain a, MonadIO io) => PhysicalDevice -> io (PhysicalDeviceMemoryProperties2 a)
getPhysicalDeviceSparseImageFormatProperties2KHR :: MonadIO io => PhysicalDevice -> PhysicalDeviceSparseImageFormatInfo2 -> io ("properties" ::: Vector SparseImageFormatProperties2)
type PhysicalDeviceFeatures2KHR = PhysicalDeviceFeatures2
type PhysicalDeviceProperties2KHR = PhysicalDeviceProperties2
type FormatProperties2KHR = FormatProperties2
type ImageFormatProperties2KHR = ImageFormatProperties2
type PhysicalDeviceImageFormatInfo2KHR = PhysicalDeviceImageFormatInfo2
type QueueFamilyProperties2KHR = QueueFamilyProperties2
type PhysicalDeviceMemoryProperties2KHR = PhysicalDeviceMemoryProperties2
type SparseImageFormatProperties2KHR = SparseImageFormatProperties2
type PhysicalDeviceSparseImageFormatInfo2KHR = PhysicalDeviceSparseImageFormatInfo2
type KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION = 2
pattern KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION :: forall a. Integral a => a
type KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME = "VK_KHR_get_physical_device_properties2"
pattern KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core10.Device
-- | vkCreateDevice - Create a new device instance
--
-- Description
--
-- createDevice verifies that extensions and features requested in
-- the ppEnabledExtensionNames and pEnabledFeatures
-- members of pCreateInfo, respectively, are supported by the
-- implementation. If any requested extension is not supported,
-- createDevice must return
-- ERROR_EXTENSION_NOT_PRESENT. If any requested feature is not
-- supported, createDevice must return
-- ERROR_FEATURE_NOT_PRESENT. Support for extensions can be
-- checked before creating a device by querying
-- enumerateDeviceExtensionProperties. Support for features
-- can similarly be checked by querying
-- getPhysicalDeviceFeatures.
--
-- After verifying and enabling the extensions the Device object
-- is created and returned to the application. If a requested extension
-- is only supported by a layer, both the layer and the extension need to
-- be specified at createInstance time for the creation to
-- succeed.
--
-- Multiple logical devices can be created from the same physical
-- device. Logical device creation may fail due to lack of
-- device-specific resources (in addition to the other errors). If that
-- occurs, createDevice will return ERROR_TOO_MANY_OBJECTS.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- DeviceCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pDevice must be a valid pointer to a Device
-- handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, DeviceCreateInfo,
-- PhysicalDevice
createDevice :: forall a io. (Extendss DeviceCreateInfo a, PokeChain a, MonadIO io) => PhysicalDevice -> DeviceCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Device
-- | A convenience wrapper to make a compatible pair of calls to
-- createDevice and destroyDevice
--
-- To ensure that destroyDevice is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withDevice :: forall a io r. (Extendss DeviceCreateInfo a, PokeChain a, MonadIO io) => PhysicalDevice -> DeviceCreateInfo a -> Maybe AllocationCallbacks -> (io Device -> (Device -> io ()) -> r) -> r
-- | vkDestroyDevice - Destroy a logical device
--
-- Description
--
-- To ensure that no work is active on the device, deviceWaitIdle
-- can be used to gate the destruction of the device. Prior to
-- destroying a device, an application is responsible for
-- destroying/freeing any Vulkan objects that were created using that
-- device as the first parameter of the corresponding vkCreate*
-- or vkAllocate* command.
--
-- Note
--
-- The lifetime of each of these objects is bound by the lifetime of the
-- Device object. Therefore, to avoid resource leaks, it is
-- critical that an application explicitly free all of these resources
-- prior to calling destroyDevice.
--
-- Valid Usage
--
--
-- - All child objects created on device must have been
-- destroyed prior to destroying device
--
--
--
-- - If AllocationCallbacks were provided when device
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when
-- device was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - If device is not NULL, device
-- must be a valid Device handle
--
--
--
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
--
--
-- Host Synchronization
--
--
-- - Host access to device must be externally
-- synchronized
--
--
--
-- - Host access to all Queue objects received from
-- device must be externally synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Device
destroyDevice :: forall io. MonadIO io => Device -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkDeviceQueueCreateInfo - Structure specifying parameters of a newly
-- created device queue
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of DeviceQueueGlobalPriorityCreateInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be a valid combination of
-- DeviceQueueCreateFlagBits values
-- - pQueuePriorities must be a valid pointer to an
-- array of queueCount float values
-- - queueCount must be greater than 0
--
--
-- See Also
--
-- DeviceCreateInfo, DeviceQueueCreateFlags,
-- StructureType
data DeviceQueueCreateInfo (es :: [Type])
DeviceQueueCreateInfo :: Chain es -> DeviceQueueCreateFlags -> Word32 -> Vector Float -> DeviceQueueCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:DeviceQueueCreateInfo] :: DeviceQueueCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask indicating behavior of the queue.
[$sel:flags:DeviceQueueCreateInfo] :: DeviceQueueCreateInfo (es :: [Type]) -> DeviceQueueCreateFlags
-- | queueFamilyIndex is an unsigned integer indicating the index
-- of the queue family to create on this device. This index corresponds
-- to the index of an element of the pQueueFamilyProperties
-- array that was returned by
-- getPhysicalDeviceQueueFamilyProperties.
[$sel:queueFamilyIndex:DeviceQueueCreateInfo] :: DeviceQueueCreateInfo (es :: [Type]) -> Word32
-- | pQueuePriorities is a pointer to an array of
-- queueCount normalized floating point values, specifying
-- priorities of work that will be submitted to each created queue. See
-- Queue Priority for more information.
[$sel:queuePriorities:DeviceQueueCreateInfo] :: DeviceQueueCreateInfo (es :: [Type]) -> Vector Float
-- | VkDeviceCreateInfo - Structure specifying parameters of a newly
-- created device
--
-- Valid Usage
--
--
-- - The queueFamilyIndex member of each element of
-- pQueueCreateInfos must be unique within
-- pQueueCreateInfos, except that two members can share the same
-- queueFamilyIndex if one is a protected-capable queue and one
-- is not a protected-capable queue
--
--
--
-- - If the pNext chain includes a
-- PhysicalDeviceFeatures2 structure, then
-- pEnabledFeatures must be NULL
-- - ppEnabledExtensionNames must not contain
-- VK_AMD_negative_viewport_height
-- - ppEnabledExtensionNames must not contain both
-- VK_KHR_buffer_device_address and
-- VK_EXT_buffer_device_address
-- - If the pNext chain includes a
-- PhysicalDeviceVulkan11Features structure, then it must
-- not include a PhysicalDevice16BitStorageFeatures,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceSamplerYcbcrConversionFeatures, or
-- PhysicalDeviceShaderDrawParametersFeatures structure
-- - If the pNext chain includes a
-- PhysicalDeviceVulkan12Features structure, then it must
-- not include a PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceBufferDeviceAddressFeatures, or
-- PhysicalDeviceVulkanMemoryModelFeatures structure
-- - If ppEnabledExtensions contains
-- "VK_KHR_draw_indirect_count" and the pNext chain
-- includes a PhysicalDeviceVulkan12Features structure, then
-- PhysicalDeviceVulkan12Features::drawIndirectCount
-- must be TRUE
-- - If ppEnabledExtensions contains
-- "VK_KHR_sampler_mirror_clamp_to_edge" and the pNext
-- chain includes a PhysicalDeviceVulkan12Features structure, then
-- PhysicalDeviceVulkan12Features::samplerMirrorClampToEdge
-- must be TRUE
-- - If ppEnabledExtensions contains
-- "VK_EXT_descriptor_indexing" and the pNext chain
-- includes a PhysicalDeviceVulkan12Features structure, then
-- PhysicalDeviceVulkan12Features::descriptorIndexing
-- must be TRUE
-- - If ppEnabledExtensions contains
-- "VK_EXT_sampler_filter_minmax" and the pNext chain
-- includes a PhysicalDeviceVulkan12Features structure, then
-- PhysicalDeviceVulkan12Features::samplerFilterMinmax
-- must be TRUE
-- - If ppEnabledExtensions contains
-- "VK_EXT_shader_viewport_index_layer" and the pNext
-- chain includes a PhysicalDeviceVulkan12Features structure, then
-- PhysicalDeviceVulkan12Features::shaderOutputViewportIndex
-- and PhysicalDeviceVulkan12Features::shaderOutputLayer
-- must both be TRUE
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- DeviceDiagnosticsConfigCreateInfoNV,
-- DeviceGroupDeviceCreateInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkanMemoryModelFeatures, or
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT
-- - The sType value of each struct in the pNext
-- chain must be unique, with the exception of structures of type
-- DevicePrivateDataCreateInfoEXT
-- - flags must be 0
-- - pQueueCreateInfos must be a valid pointer to an
-- array of queueCreateInfoCount valid
-- DeviceQueueCreateInfo structures
-- - If enabledLayerCount is not 0,
-- ppEnabledLayerNames must be a valid pointer to an
-- array of enabledLayerCount null-terminated UTF-8 strings
-- - If enabledExtensionCount is not 0,
-- ppEnabledExtensionNames must be a valid pointer to an
-- array of enabledExtensionCount null-terminated UTF-8
-- strings
-- - If pEnabledFeatures is not NULL,
-- pEnabledFeatures must be a valid pointer to a valid
-- PhysicalDeviceFeatures structure
-- - queueCreateInfoCount must be greater than
-- 0
--
--
-- See Also
--
-- DeviceCreateFlags, DeviceQueueCreateInfo,
-- PhysicalDeviceFeatures, StructureType,
-- createDevice
data DeviceCreateInfo (es :: [Type])
DeviceCreateInfo :: Chain es -> DeviceCreateFlags -> Vector (SomeStruct DeviceQueueCreateInfo) -> Vector ByteString -> Vector ByteString -> Maybe PhysicalDeviceFeatures -> DeviceCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:DeviceCreateInfo] :: DeviceCreateInfo (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:DeviceCreateInfo] :: DeviceCreateInfo (es :: [Type]) -> DeviceCreateFlags
-- | pQueueCreateInfos is a pointer to an array of
-- DeviceQueueCreateInfo structures describing the queues that are
-- requested to be created along with the logical device. Refer to the
-- Queue Creation section below for further details.
[$sel:queueCreateInfos:DeviceCreateInfo] :: DeviceCreateInfo (es :: [Type]) -> Vector (SomeStruct DeviceQueueCreateInfo)
-- | ppEnabledLayerNames is deprecated and ignored. See
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-layers-devicelayerdeprecation.
[$sel:enabledLayerNames:DeviceCreateInfo] :: DeviceCreateInfo (es :: [Type]) -> Vector ByteString
-- | ppEnabledExtensionNames is a pointer to an array of
-- enabledExtensionCount null-terminated UTF-8 strings
-- containing the names of extensions to enable for the created device.
-- See the
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-extensions
-- section for further details.
[$sel:enabledExtensionNames:DeviceCreateInfo] :: DeviceCreateInfo (es :: [Type]) -> Vector ByteString
-- | pEnabledFeatures is NULL or a pointer to a
-- PhysicalDeviceFeatures structure containing boolean indicators
-- of all the features to be enabled. Refer to the Features
-- section for further details.
[$sel:enabledFeatures:DeviceCreateInfo] :: DeviceCreateInfo (es :: [Type]) -> Maybe PhysicalDeviceFeatures
-- | VkDevice - Opaque handle to a device object
--
-- See Also
--
-- acquireFullScreenExclusiveModeEXT, acquireNextImage2KHR,
-- acquireNextImageKHR,
-- acquirePerformanceConfigurationINTEL,
-- acquireProfilingLockKHR, allocateCommandBuffers,
-- allocateDescriptorSets, allocateMemory,
-- bindAccelerationStructureMemoryKHR,
-- bindAccelerationStructureMemoryNV, bindBufferMemory,
-- bindBufferMemory2, bindBufferMemory2KHR,
-- bindImageMemory, bindImageMemory2,
-- bindImageMemory2KHR, buildAccelerationStructureKHR,
-- compileDeferredNV, copyAccelerationStructureKHR,
-- copyAccelerationStructureToMemoryKHR,
-- copyMemoryToAccelerationStructureKHR,
-- createAccelerationStructureKHR,
-- createAccelerationStructureNV, createBuffer,
-- createBufferView, createCommandPool,
-- createComputePipelines, createDeferredOperationKHR,
-- createDescriptorPool, createDescriptorSetLayout,
-- createDescriptorUpdateTemplate,
-- createDescriptorUpdateTemplateKHR, createDevice,
-- createEvent, createFence, createFramebuffer,
-- createGraphicsPipelines, createImage,
-- createImageView, createIndirectCommandsLayoutNV,
-- createPipelineCache, createPipelineLayout,
-- createPrivateDataSlotEXT, createQueryPool,
-- createRayTracingPipelinesKHR,
-- createRayTracingPipelinesNV, createRenderPass,
-- createRenderPass2, createRenderPass2KHR,
-- createSampler, createSamplerYcbcrConversion,
-- createSamplerYcbcrConversionKHR, createSemaphore,
-- createShaderModule, createSharedSwapchainsKHR,
-- createSwapchainKHR, createValidationCacheEXT,
-- debugMarkerSetObjectNameEXT, debugMarkerSetObjectTagEXT,
-- deferredOperationJoinKHR,
-- destroyAccelerationStructureKHR,
-- destroyAccelerationStructureNV, destroyBuffer,
-- destroyBufferView, destroyCommandPool,
-- destroyDeferredOperationKHR, destroyDescriptorPool,
-- destroyDescriptorSetLayout,
-- destroyDescriptorUpdateTemplate,
-- destroyDescriptorUpdateTemplateKHR, destroyDevice,
-- destroyEvent, destroyFence, destroyFramebuffer,
-- destroyImage, destroyImageView,
-- destroyIndirectCommandsLayoutNV, destroyPipeline,
-- destroyPipelineCache, destroyPipelineLayout,
-- destroyPrivateDataSlotEXT, destroyQueryPool,
-- destroyRenderPass, destroySampler,
-- destroySamplerYcbcrConversion,
-- destroySamplerYcbcrConversionKHR, destroySemaphore,
-- destroyShaderModule, destroySwapchainKHR,
-- destroyValidationCacheEXT, deviceWaitIdle,
-- displayPowerControlEXT, flushMappedMemoryRanges,
-- freeCommandBuffers, freeDescriptorSets,
-- freeMemory, getAccelerationStructureDeviceAddressKHR,
-- getAccelerationStructureHandleNV,
-- getAccelerationStructureMemoryRequirementsKHR,
-- getAccelerationStructureMemoryRequirementsNV,
-- getAndroidHardwareBufferPropertiesANDROID,
-- getBufferDeviceAddress, getBufferDeviceAddressEXT,
-- getBufferDeviceAddressKHR, getBufferMemoryRequirements,
-- getBufferMemoryRequirements2,
-- getBufferMemoryRequirements2KHR,
-- getBufferOpaqueCaptureAddress,
-- getBufferOpaqueCaptureAddressKHR,
-- getCalibratedTimestampsEXT,
-- getDeferredOperationMaxConcurrencyKHR,
-- getDeferredOperationResultKHR,
-- getDescriptorSetLayoutSupport,
-- getDescriptorSetLayoutSupportKHR,
-- getDeviceAccelerationStructureCompatibilityKHR,
-- getDeviceGroupPeerMemoryFeatures,
-- getDeviceGroupPeerMemoryFeaturesKHR,
-- getDeviceGroupPresentCapabilitiesKHR,
-- getDeviceGroupSurfacePresentModes2EXT,
-- getDeviceGroupSurfacePresentModesKHR,
-- getDeviceMemoryCommitment,
-- getDeviceMemoryOpaqueCaptureAddress,
-- getDeviceMemoryOpaqueCaptureAddressKHR,
-- getDeviceProcAddr, getDeviceQueue,
-- getDeviceQueue2, getEventStatus, getFenceFdKHR,
-- getFenceStatus, getFenceWin32HandleKHR,
-- getGeneratedCommandsMemoryRequirementsNV,
-- getImageDrmFormatModifierPropertiesEXT,
-- getImageMemoryRequirements, getImageMemoryRequirements2,
-- getImageMemoryRequirements2KHR,
-- getImageSparseMemoryRequirements,
-- getImageSparseMemoryRequirements2,
-- getImageSparseMemoryRequirements2KHR,
-- getImageSubresourceLayout, getImageViewAddressNVX,
-- getImageViewHandleNVX,
-- getMemoryAndroidHardwareBufferANDROID, getMemoryFdKHR,
-- getMemoryFdPropertiesKHR,
-- getMemoryHostPointerPropertiesEXT,
-- getMemoryWin32HandleKHR, getMemoryWin32HandleNV,
-- getMemoryWin32HandlePropertiesKHR,
-- getPastPresentationTimingGOOGLE,
-- getPerformanceParameterINTEL, getPipelineCacheData,
-- getPipelineExecutableInternalRepresentationsKHR,
-- getPipelineExecutablePropertiesKHR,
-- getPipelineExecutableStatisticsKHR, getPrivateDataEXT,
-- getQueryPoolResults,
-- getRayTracingCaptureReplayShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesKHR,
-- getRayTracingShaderGroupHandlesNV,
-- getRefreshCycleDurationGOOGLE, getRenderAreaGranularity,
-- getSemaphoreCounterValue, getSemaphoreCounterValueKHR,
-- getSemaphoreFdKHR, getSemaphoreWin32HandleKHR,
-- getShaderInfoAMD, getSwapchainCounterEXT,
-- getSwapchainImagesKHR, getSwapchainStatusKHR,
-- getValidationCacheDataEXT, importFenceFdKHR,
-- importFenceWin32HandleKHR, importSemaphoreFdKHR,
-- importSemaphoreWin32HandleKHR,
-- initializePerformanceApiINTEL,
-- invalidateMappedMemoryRanges, mapMemory,
-- mergePipelineCaches, mergeValidationCachesEXT,
-- registerDeviceEventEXT, registerDisplayEventEXT,
-- releaseFullScreenExclusiveModeEXT,
-- releasePerformanceConfigurationINTEL,
-- releaseProfilingLockKHR, resetCommandPool,
-- resetDescriptorPool, resetEvent, resetFences,
-- resetQueryPool, resetQueryPoolEXT,
-- setDebugUtilsObjectNameEXT, setDebugUtilsObjectTagEXT,
-- setEvent, setHdrMetadataEXT, setLocalDimmingAMD,
-- setPrivateDataEXT, signalSemaphore,
-- signalSemaphoreKHR, trimCommandPool,
-- trimCommandPoolKHR, uninitializePerformanceApiINTEL,
-- unmapMemory, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR,
-- updateDescriptorSets, waitForFences,
-- waitSemaphores, waitSemaphoresKHR,
-- writeAccelerationStructuresPropertiesKHR
data Device
Device :: Ptr Device_T -> DeviceCmds -> Device
[$sel:deviceHandle:Device] :: Device -> Ptr Device_T
[$sel:deviceCmds:Device] :: Device -> DeviceCmds
-- | VkDeviceCreateFlags - Reserved for future use
--
-- Description
--
-- DeviceCreateFlags is a bitmask type for setting a mask, but is
-- currently reserved for future use.
--
-- See Also
--
-- DeviceCreateInfo
newtype DeviceCreateFlags
DeviceCreateFlags :: Flags -> DeviceCreateFlags
-- | VkDeviceQueueCreateFlagBits - Bitmask specifying behavior of the queue
--
-- See Also
--
-- DeviceQueueCreateFlags
newtype DeviceQueueCreateFlagBits
DeviceQueueCreateFlagBits :: Flags -> DeviceQueueCreateFlagBits
-- | DEVICE_QUEUE_CREATE_PROTECTED_BIT specifies that the device
-- queue is a protected-capable queue.
pattern DEVICE_QUEUE_CREATE_PROTECTED_BIT :: DeviceQueueCreateFlagBits
type DeviceQueueCreateFlags = DeviceQueueCreateFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Device.DeviceQueueCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Device.DeviceQueueCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.Device.DeviceCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Device.DeviceCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Device.DeviceCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Device.DeviceCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Device.DeviceCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Device.DeviceCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Device.DeviceCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Device.DeviceCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Device.DeviceQueueCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Device.DeviceQueueCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Device.DeviceQueueCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Device.DeviceQueueCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Device.DeviceQueueCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Device.DeviceQueueCreateInfo es)
module Vulkan.Core10.DescriptorSet
-- | vkCreateDescriptorSetLayout - Create a new descriptor set layout
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DescriptorSetLayout,
-- DescriptorSetLayoutCreateInfo, Device
createDescriptorSetLayout :: forall a io. (Extendss DescriptorSetLayoutCreateInfo a, PokeChain a, MonadIO io) => Device -> DescriptorSetLayoutCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io DescriptorSetLayout
-- | A convenience wrapper to make a compatible pair of calls to
-- createDescriptorSetLayout and destroyDescriptorSetLayout
--
-- To ensure that destroyDescriptorSetLayout is always called:
-- pass bracket (or the allocate function from your favourite
-- resource management library) as the first argument. To just extract
-- the pair pass (,) as the first argument.
withDescriptorSetLayout :: forall a io r. (Extendss DescriptorSetLayoutCreateInfo a, PokeChain a, MonadIO io) => Device -> DescriptorSetLayoutCreateInfo a -> Maybe AllocationCallbacks -> (io DescriptorSetLayout -> (DescriptorSetLayout -> io ()) -> r) -> r
-- | vkDestroyDescriptorSetLayout - Destroy a descriptor set layout object
--
-- Valid Usage
--
--
-- - If AllocationCallbacks were provided when
-- descriptorSetLayout was created, a compatible set of
-- callbacks must be provided here
--
--
--
-- - If no AllocationCallbacks were provided when
-- descriptorSetLayout was created, pAllocator
-- must be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If descriptorSetLayout is not NULL_HANDLE,
-- descriptorSetLayout must be a valid
-- DescriptorSetLayout handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If descriptorSetLayout is a valid handle, it must
-- have been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to descriptorSetLayout must be
-- externally synchronized
--
--
-- See Also
--
-- AllocationCallbacks, DescriptorSetLayout, Device
destroyDescriptorSetLayout :: forall io. MonadIO io => Device -> DescriptorSetLayout -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkCreateDescriptorPool - Creates a descriptor pool object
--
-- Description
--
-- pAllocator controls host memory allocation as described in
-- the Memory Allocation chapter.
--
-- The created descriptor pool is returned in pDescriptorPool.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, DescriptorPool,
-- DescriptorPoolCreateInfo, Device
createDescriptorPool :: forall a io. (Extendss DescriptorPoolCreateInfo a, PokeChain a, MonadIO io) => Device -> DescriptorPoolCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io DescriptorPool
-- | A convenience wrapper to make a compatible pair of calls to
-- createDescriptorPool and destroyDescriptorPool
--
-- To ensure that destroyDescriptorPool is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withDescriptorPool :: forall a io r. (Extendss DescriptorPoolCreateInfo a, PokeChain a, MonadIO io) => Device -> DescriptorPoolCreateInfo a -> Maybe AllocationCallbacks -> (io DescriptorPool -> (DescriptorPool -> io ()) -> r) -> r
-- | vkDestroyDescriptorPool - Destroy a descriptor pool object
--
-- Description
--
-- When a pool is destroyed, all descriptor sets allocated from the pool
-- are implicitly freed and become invalid. Descriptor sets allocated
-- from a given pool do not need to be freed before destroying that
-- descriptor pool.
--
-- Valid Usage
--
--
-- - All submitted commands that refer to descriptorPool (via
-- any allocated descriptor sets) must have completed
-- execution
--
--
--
-- - If AllocationCallbacks were provided when
-- descriptorPool was created, a compatible set of callbacks
-- must be provided here
-- - If no AllocationCallbacks were provided when
-- descriptorPool was created, pAllocator must
-- be NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If descriptorPool is not NULL_HANDLE,
-- descriptorPool must be a valid DescriptorPool
-- handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If descriptorPool is a valid handle, it must have
-- been created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to descriptorPool must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, DescriptorPool, Device
destroyDescriptorPool :: forall io. MonadIO io => Device -> DescriptorPool -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | vkResetDescriptorPool - Resets a descriptor pool object
--
-- Description
--
-- Resetting a descriptor pool recycles all of the resources from all of
-- the descriptor sets allocated from the descriptor pool back to the
-- descriptor pool, and the descriptor sets are implicitly freed.
--
-- Valid Usage
--
--
-- - All uses of descriptorPool (via any allocated descriptor
-- sets) must have completed execution
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - descriptorPool must be a valid
-- DescriptorPool handle
-- - flags must be 0
-- - descriptorPool must have been created, allocated,
-- or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to descriptorPool must be externally
-- synchronized
--
--
--
-- - Host access to any DescriptorSet objects allocated from
-- descriptorPool must be externally synchronized
--
--
-- Return Codes
--
--
--
-- See Also
--
-- DescriptorPool, DescriptorPoolResetFlags, Device
resetDescriptorPool :: forall io. MonadIO io => Device -> DescriptorPool -> DescriptorPoolResetFlags -> io ()
-- | vkAllocateDescriptorSets - Allocate one or more descriptor sets
--
-- Description
--
-- The allocated descriptor sets are returned in
-- pDescriptorSets.
--
-- When a descriptor set is allocated, the initial state is largely
-- uninitialized and all descriptors are undefined. Descriptors also
-- become undefined if the underlying resource is destroyed. Descriptor
-- sets containing undefined descriptors can still be bound and
-- used, subject to the following conditions:
--
--
-- - For descriptor set bindings created with the
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT bit set, all descriptors
-- in that binding that are dynamically used must have been
-- populated before the descriptor set is consumed.
-- - For descriptor set bindings created without the
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT bit set, all descriptors
-- in that binding that are statically used must have been
-- populated before the descriptor set is consumed.
-- - Descriptor bindings with descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT can be
-- undefined when the descriptor set is consumed; though values in
-- that block will be undefined.
-- - Entries that are not used by a pipeline can have undefined
-- descriptors.
--
--
-- If a call to allocateDescriptorSets would cause the total
-- number of descriptor sets allocated from the pool to exceed the value
-- of DescriptorPoolCreateInfo::maxSets used to create
-- pAllocateInfo->descriptorPool, then the allocation
-- may fail due to lack of space in the descriptor pool.
-- Similarly, the allocation may fail due to lack of space if the
-- call to allocateDescriptorSets would cause the number of any
-- given descriptor type to exceed the sum of all the
-- descriptorCount members of each element of
-- DescriptorPoolCreateInfo::pPoolSizes with a
-- member equal to that type.
--
-- Additionally, the allocation may also fail if a call to
-- allocateDescriptorSets would cause the total number of inline
-- uniform block bindings allocated from the pool to exceed the value of
-- DescriptorPoolInlineUniformBlockCreateInfoEXT::maxInlineUniformBlockBindings
-- used to create the descriptor pool.
--
-- If the allocation fails due to no more space in the descriptor pool,
-- and not because of system or device memory exhaustion, then
-- ERROR_OUT_OF_POOL_MEMORY must be returned.
--
-- allocateDescriptorSets can be used to create multiple
-- descriptor sets. If the creation of any of those descriptor sets
-- fails, then the implementation must destroy all successfully
-- created descriptor set objects from this command, set all entries of
-- the pDescriptorSets array to NULL_HANDLE and return
-- the error.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pAllocateInfo must be a valid pointer to a valid
-- DescriptorSetAllocateInfo structure
-- - pDescriptorSets must be a valid pointer to an
-- array of pAllocateInfo->descriptorSetCount
-- DescriptorSet handles
-- - The value referenced by
-- pAllocateInfo->descriptorSetCount must be greater
-- than 0
--
--
-- Host Synchronization
--
--
-- - Host access to pAllocateInfo->descriptorPool
-- must be externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- DescriptorSet, DescriptorSetAllocateInfo, Device
allocateDescriptorSets :: forall a io. (Extendss DescriptorSetAllocateInfo a, PokeChain a, MonadIO io) => Device -> DescriptorSetAllocateInfo a -> io ("descriptorSets" ::: Vector DescriptorSet)
-- | A convenience wrapper to make a compatible pair of calls to
-- allocateDescriptorSets and freeDescriptorSets
--
-- To ensure that freeDescriptorSets is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withDescriptorSets :: forall a io r. (Extendss DescriptorSetAllocateInfo a, PokeChain a, MonadIO io) => Device -> DescriptorSetAllocateInfo a -> (io (Vector DescriptorSet) -> (Vector DescriptorSet -> io ()) -> r) -> r
-- | vkFreeDescriptorSets - Free one or more descriptor sets
--
-- Description
--
-- After calling freeDescriptorSets, all descriptor sets in
-- pDescriptorSets are invalid.
--
-- Valid Usage
--
--
-- - All submitted commands that refer to any element of
-- pDescriptorSets must have completed execution
--
--
--
-- - pDescriptorSets must be a valid pointer to an
-- array of descriptorSetCount DescriptorSet handles,
-- each element of which must either be a valid handle or
-- NULL_HANDLE
-- - Each valid handle in pDescriptorSets must have
-- been allocated from descriptorPool
-- - descriptorPool must have been created with the
-- DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT flag
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - descriptorPool must be a valid
-- DescriptorPool handle
-- - descriptorSetCount must be greater than
-- 0
-- - descriptorPool must have been created, allocated,
-- or retrieved from device
-- - Each element of pDescriptorSets that is a valid handle
-- must have been created, allocated, or retrieved from
-- descriptorPool
--
--
-- Host Synchronization
--
--
-- - Host access to descriptorPool must be externally
-- synchronized
--
--
--
-- - Host access to each member of pDescriptorSets must
-- be externally synchronized
--
--
-- Return Codes
--
--
--
-- See Also
--
-- DescriptorPool, DescriptorSet, Device
freeDescriptorSets :: forall io. MonadIO io => Device -> DescriptorPool -> ("descriptorSets" ::: Vector DescriptorSet) -> io ()
-- | vkUpdateDescriptorSets - Update the contents of a descriptor set
-- object
--
-- Description
--
-- The operations described by pDescriptorWrites are performed
-- first, followed by the operations described by
-- pDescriptorCopies. Within each array, the operations are
-- performed in the order they appear in the array.
--
-- Each element in the pDescriptorWrites array describes an
-- operation updating the descriptor set using descriptors for resources
-- specified in the structure.
--
-- Each element in the pDescriptorCopies array is a
-- CopyDescriptorSet structure describing an operation copying
-- descriptors between sets.
--
-- If the dstSet member of any element of
-- pDescriptorWrites or pDescriptorCopies is bound,
-- accessed, or modified by any command that was recorded to a command
-- buffer which is currently in the recording or executable state,
-- and any of the descriptor bindings that are updated were not created
-- with the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT or
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT bits set,
-- that command buffer becomes invalid.
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If descriptorWriteCount is not 0,
-- pDescriptorWrites must be a valid pointer to an array
-- of descriptorWriteCount valid WriteDescriptorSet
-- structures
-- - If descriptorCopyCount is not 0,
-- pDescriptorCopies must be a valid pointer to an array
-- of descriptorCopyCount valid CopyDescriptorSet
-- structures
--
--
-- Host Synchronization
--
--
-- - Host access to pDescriptorWrites[].dstSet must be
-- externally synchronized
--
--
--
-- - Host access to pDescriptorCopies[].dstSet must be
-- externally synchronized
--
--
-- See Also
--
-- CopyDescriptorSet, Device, WriteDescriptorSet
updateDescriptorSets :: forall io. MonadIO io => Device -> ("descriptorWrites" ::: Vector (SomeStruct WriteDescriptorSet)) -> ("descriptorCopies" ::: Vector CopyDescriptorSet) -> io ()
-- | VkDescriptorBufferInfo - Structure specifying descriptor buffer info
--
-- Description
--
-- Note
--
-- When setting range to WHOLE_SIZE, the effective range
-- must not be larger than the maximum range for the descriptor
-- type (maxUniformBufferRange or maxStorageBufferRange).
-- This means that WHOLE_SIZE is not typically useful in the
-- common case where uniform buffer descriptors are suballocated from a
-- buffer that is much larger than maxUniformBufferRange.
--
-- For DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC and
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC descriptor types,
-- offset is the base offset from which the dynamic offset is
-- applied and range is the static size used for all dynamic
-- offsets.
--
-- Valid Usage
--
--
-- - offset must be less than the size of
-- buffer
--
--
--
-- - If range is not equal to WHOLE_SIZE,
-- range must be greater than 0
-- - If range is not equal to WHOLE_SIZE,
-- range must be less than or equal to the size of
-- buffer minus offset
-- - If the nullDescriptor feature is not enabled,
-- buffer must not be NULL_HANDLE
-- - If buffer is NULL_HANDLE, offset
-- must be zero and range must be
-- WHOLE_SIZE
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Buffer, DeviceSize, WriteDescriptorSet
data DescriptorBufferInfo
DescriptorBufferInfo :: Buffer -> DeviceSize -> DeviceSize -> DescriptorBufferInfo
-- | buffer is NULL_HANDLE or the buffer resource.
[$sel:buffer:DescriptorBufferInfo] :: DescriptorBufferInfo -> Buffer
-- | offset is the offset in bytes from the start of
-- buffer. Access to buffer memory via this descriptor uses
-- addressing that is relative to this starting offset.
[$sel:offset:DescriptorBufferInfo] :: DescriptorBufferInfo -> DeviceSize
-- | range is the size in bytes that is used for this descriptor
-- update, or WHOLE_SIZE to use the range from offset to
-- the end of the buffer.
[$sel:range:DescriptorBufferInfo] :: DescriptorBufferInfo -> DeviceSize
-- | VkDescriptorImageInfo - Structure specifying descriptor image info
--
-- Description
--
-- Members of DescriptorImageInfo that are not used in an update
-- (as described above) are ignored.
--
-- Valid Usage
--
--
-- - imageView must not be 2D or 2D array image view
-- created from a 3D image
--
--
--
--
-- Valid Usage (Implicit)
--
--
-- - Both of imageView, and sampler that are valid
-- handles of non-ignored parameters must have been created,
-- allocated, or retrieved from the same Device
--
--
-- See Also
--
-- ImageLayout, ImageView, Sampler,
-- WriteDescriptorSet
data DescriptorImageInfo
DescriptorImageInfo :: Sampler -> ImageView -> ImageLayout -> DescriptorImageInfo
-- | sampler is a sampler handle, and is used in descriptor
-- updates for types DESCRIPTOR_TYPE_SAMPLER and
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER if the binding being
-- updated does not use immutable samplers.
[$sel:sampler:DescriptorImageInfo] :: DescriptorImageInfo -> Sampler
-- | imageView is NULL_HANDLE or an image view handle, and
-- is used in descriptor updates for types
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT.
[$sel:imageView:DescriptorImageInfo] :: DescriptorImageInfo -> ImageView
-- | imageLayout is the layout that the image subresources
-- accessible from imageView will be in at the time this
-- descriptor is accessed. imageLayout is used in descriptor
-- updates for types DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT.
[$sel:imageLayout:DescriptorImageInfo] :: DescriptorImageInfo -> ImageLayout
-- | VkWriteDescriptorSet - Structure specifying the parameters of a
-- descriptor set write operation
--
-- Description
--
-- Only one of pImageInfo, pBufferInfo, or
-- pTexelBufferView members is used according to the descriptor
-- type specified in the descriptorType member of the containing
-- WriteDescriptorSet structure, or none of them in case
-- descriptorType is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT, in which case the
-- source data for the descriptor writes is taken from the
-- WriteDescriptorSetInlineUniformBlockEXT structure included in
-- the pNext chain of WriteDescriptorSet, or if
-- descriptorType is
-- DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, in which case the
-- source data for the descriptor writes is taken from the
-- WriteDescriptorSetAccelerationStructureKHR structure in the
-- pNext chain of WriteDescriptorSet, as specified below.
--
-- If the nullDescriptor feature is enabled, the buffer,
-- imageView, or bufferView can be NULL_HANDLE. Loads from
-- a null descriptor return zero values and stores and atomics to a null
-- descriptor are discarded.
--
-- If the dstBinding has fewer than descriptorCount
-- array elements remaining starting from dstArrayElement, then
-- the remainder will be used to update the subsequent binding -
-- dstBinding+1 starting at array element zero. If a binding has
-- a descriptorCount of zero, it is skipped. This behavior
-- applies recursively, with the update affecting consecutive bindings as
-- needed to update all descriptorCount descriptors.
--
-- Note
--
-- The same behavior applies to bindings with a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT where
-- descriptorCount specifies the number of bytes to update while
-- dstArrayElement specifies the starting byte offset, thus in
-- this case if the dstBinding has a smaller byte size than the
-- sum of dstArrayElement and descriptorCount, then the
-- remainder will be used to update the subsequent binding -
-- dstBinding+1 starting at offset zero. This falls out as a
-- special case of the above rule.
--
-- Valid Usage
--
--
-- - dstBinding must be less than or equal to the
-- maximum value of binding of all
-- DescriptorSetLayoutBinding structures specified when
-- dstSet’s descriptor set layout was created
--
--
--
-- - dstBinding must be a binding with a non-zero
-- descriptorCount
-- - All consecutive bindings updated via a single
-- WriteDescriptorSet structure, except those with a
-- descriptorCount of zero, must have identical
-- descriptorType and stageFlags
-- - All consecutive bindings updated via a single
-- WriteDescriptorSet structure, except those with a
-- descriptorCount of zero, must all either use immutable
-- samplers or must all not use immutable samplers
-- - descriptorType must match the type of
-- dstBinding within dstSet
-- - dstSet must be a valid DescriptorSet
-- handle
-- - The sum of dstArrayElement and descriptorCount
-- must be less than or equal to the number of array elements in
-- the descriptor set binding specified by dstBinding, and all
-- applicable consecutive bindings, as described by
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates-consecutive
-- - If descriptorType is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
-- dstArrayElement must be an integer multiple of
-- 4
-- - If descriptorType is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
-- descriptorCount must be an integer multiple of
-- 4
-- - If descriptorType is DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT, pImageInfo
-- must be a valid pointer to an array of descriptorCount
-- valid DescriptorImageInfo structures
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, each element of
-- pTexelBufferView must be either a valid
-- BufferView handle or NULL_HANDLE
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER and the
-- nullDescriptor feature is not enabled, each element of
-- pTexelBufferView must not be NULL_HANDLE
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER,
-- DESCRIPTOR_TYPE_STORAGE_BUFFER,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, pBufferInfo
-- must be a valid pointer to an array of descriptorCount
-- valid DescriptorBufferInfo structures
-- - If descriptorType is DESCRIPTOR_TYPE_SAMPLER or
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and dstSet was
-- not allocated with a layout that included immutable samplers for
-- dstBinding with descriptorType, the sampler
-- member of each element of pImageInfo must be a valid
-- Sampler object
-- - If descriptorType is
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT, the imageView member
-- of each element of pImageInfo must be either a valid
-- ImageView handle or NULL_HANDLE
-- - If descriptorType is
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT and the nullDescriptor
-- feature is not enabled, the imageView member of each element
-- of pImageInfo must not be NULL_HANDLE
-- - If descriptorType is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT, the pNext
-- chain must include a
-- WriteDescriptorSetInlineUniformBlockEXT structure whose
-- dataSize member equals descriptorCount
-- - If descriptorType is
-- DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, the pNext
-- chain must include a
-- WriteDescriptorSetAccelerationStructureKHR structure whose
-- accelerationStructureCount member equals
-- descriptorCount
-- - If descriptorType is
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE, then the imageView
-- member of each pImageInfo element must have been
-- created without a SamplerYcbcrConversionInfo structure in its
-- pNext chain
-- - If descriptorType is
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and if any element of
-- pImageInfo has a imageView member that was created
-- with a SamplerYcbcrConversionInfo structure in its
-- pNext chain, then dstSet must have been
-- allocated with a layout that included immutable samplers for
-- dstBinding, and the corresponding immutable sampler
-- must have been created with an identically defined
-- SamplerYcbcrConversionInfo object
-- - If descriptorType is
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and dstSet was
-- allocated with a layout that included immutable samplers for
-- dstBinding, then the imageView member of each
-- element of pImageInfo which corresponds to an immutable
-- sampler that enables sampler Y′CBCR conversion must have
-- been created with a SamplerYcbcrConversionInfo structure in its
-- pNext chain with an identically defined
-- SamplerYcbcrConversionInfo to the corresponding immutable
-- sampler
-- - If descriptorType is
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, for each descriptor that will be
-- accessed via load or store operations the imageLayout member
-- for corresponding elements of pImageInfo must be
-- IMAGE_LAYOUT_GENERAL
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, the offset
-- member of each element of pBufferInfo must be a
-- multiple of
-- PhysicalDeviceLimits::minUniformBufferOffsetAlignment
-- - If descriptorType is
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, the offset
-- member of each element of pBufferInfo must be a
-- multiple of
-- PhysicalDeviceLimits::minStorageBufferOffsetAlignment
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC,
-- DESCRIPTOR_TYPE_STORAGE_BUFFER, or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, and the buffer
-- member of any element of pBufferInfo is the handle of a
-- non-sparse buffer, then that buffer must be bound completely
-- and contiguously to a single DeviceMemory object
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, the buffer
-- member of each element of pBufferInfo must have been
-- created with BUFFER_USAGE_UNIFORM_BUFFER_BIT set
-- - If descriptorType is
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, the buffer
-- member of each element of pBufferInfo must have been
-- created with BUFFER_USAGE_STORAGE_BUFFER_BIT set
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, the range
-- member of each element of pBufferInfo, or the effective range
-- if range is WHOLE_SIZE, must be less than or
-- equal to
-- PhysicalDeviceLimits::maxUniformBufferRange
-- - If descriptorType is
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, the range
-- member of each element of pBufferInfo, or the effective range
-- if range is WHOLE_SIZE, must be less than or
-- equal to
-- PhysicalDeviceLimits::maxStorageBufferRange
-- - If descriptorType is
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, the Buffer that
-- each element of pTexelBufferView was created from must
-- have been created with BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT
-- set
-- - If descriptorType is
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, the Buffer that
-- each element of pTexelBufferView was created from must
-- have been created with BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT
-- set
-- - If descriptorType is DESCRIPTOR_TYPE_STORAGE_IMAGE
-- or DESCRIPTOR_TYPE_INPUT_ATTACHMENT, the imageView
-- member of each element of pImageInfo must have been
-- created with the identity swizzle
-- - If descriptorType is DESCRIPTOR_TYPE_SAMPLED_IMAGE
-- or DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, the
-- imageView member of each element of pImageInfo
-- must have been created with IMAGE_USAGE_SAMPLED_BIT
-- set
-- - If descriptorType is DESCRIPTOR_TYPE_SAMPLED_IMAGE
-- or DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, the
-- imageLayout member of each element of pImageInfo
-- must be a member of the list given in Sampled Image or
-- Combined Image Sampler, corresponding to its type
-- - If descriptorType is
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT, the imageView member
-- of each element of pImageInfo must have been created
-- with IMAGE_USAGE_INPUT_ATTACHMENT_BIT set
-- - If descriptorType is
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, the imageView member of
-- each element of pImageInfo must have been created with
-- IMAGE_USAGE_STORAGE_BIT set
-- - All consecutive bindings updated via a single
-- WriteDescriptorSet structure, except those with a
-- descriptorCount of zero, must have identical
-- DescriptorBindingFlagBits
-- - If descriptorType is DESCRIPTOR_TYPE_SAMPLER, then
-- dstSet must not have been allocated with a layout that
-- included immutable samplers for dstBinding
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - Each pNext member of any structure (including this one)
-- in the pNext chain must be either NULL or a
-- pointer to a valid instance of
-- WriteDescriptorSetAccelerationStructureKHR or
-- WriteDescriptorSetInlineUniformBlockEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - descriptorType must be a valid
-- DescriptorType value
-- - descriptorCount must be greater than
-- 0
-- - Both of dstSet, and the elements of
-- pTexelBufferView that are valid handles of non-ignored
-- parameters must have been created, allocated, or retrieved from
-- the same Device
--
--
-- See Also
--
-- BufferView, DescriptorBufferInfo,
-- DescriptorImageInfo, DescriptorSet,
-- DescriptorType, StructureType,
-- cmdPushDescriptorSetKHR, updateDescriptorSets
data WriteDescriptorSet (es :: [Type])
WriteDescriptorSet :: Chain es -> DescriptorSet -> Word32 -> Word32 -> Word32 -> DescriptorType -> Vector DescriptorImageInfo -> Vector DescriptorBufferInfo -> Vector BufferView -> WriteDescriptorSet (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Chain es
-- | dstSet is the destination descriptor set to update.
[$sel:dstSet:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> DescriptorSet
-- | dstBinding is the descriptor binding within that set.
[$sel:dstBinding:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Word32
-- | dstArrayElement is the starting element in that array. If the
-- descriptor binding identified by dstSet and
-- dstBinding has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- dstArrayElement specifies the starting byte offset within the
-- binding.
[$sel:dstArrayElement:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Word32
-- | descriptorCount is the number of descriptors to update (the
-- number of elements in pImageInfo, pBufferInfo, or
-- pTexelBufferView , or a value matching the dataSize
-- member of a WriteDescriptorSetInlineUniformBlockEXT structure
-- in the pNext chain , or a value matching the
-- accelerationStructureCount of a
-- WriteDescriptorSetAccelerationStructureKHR structure in the
-- pNext chain ). If the descriptor binding identified by
-- dstSet and dstBinding has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- descriptorCount specifies the number of bytes to update.
[$sel:descriptorCount:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Word32
-- | descriptorType is a DescriptorType specifying the type
-- of each descriptor in pImageInfo, pBufferInfo, or
-- pTexelBufferView, as described below. It must be the
-- same type as that specified in DescriptorSetLayoutBinding for
-- dstSet at dstBinding. The type of the descriptor
-- also controls which array the descriptors are taken from.
[$sel:descriptorType:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> DescriptorType
-- | pImageInfo is a pointer to an array of
-- DescriptorImageInfo structures or is ignored, as described
-- below.
[$sel:imageInfo:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Vector DescriptorImageInfo
-- | pBufferInfo is a pointer to an array of
-- DescriptorBufferInfo structures or is ignored, as described
-- below.
[$sel:bufferInfo:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Vector DescriptorBufferInfo
-- | pTexelBufferView is a pointer to an array of
-- BufferView handles as described in the Buffer Views
-- section or is ignored, as described below.
[$sel:texelBufferView:WriteDescriptorSet] :: WriteDescriptorSet (es :: [Type]) -> Vector BufferView
-- | VkCopyDescriptorSet - Structure specifying a copy descriptor set
-- operation
--
-- Valid Usage
--
--
-- - srcBinding must be a valid binding within
-- srcSet
--
--
--
-- - The sum of srcArrayElement and descriptorCount
-- must be less than or equal to the number of array elements in
-- the descriptor set binding specified by srcBinding, and all
-- applicable consecutive bindings, as described by
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates-consecutive
-- - dstBinding must be a valid binding within
-- dstSet
-- - The sum of dstArrayElement and descriptorCount
-- must be less than or equal to the number of array elements in
-- the descriptor set binding specified by dstBinding, and all
-- applicable consecutive bindings, as described by
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates-consecutive
-- - The type of dstBinding within dstSet must
-- be equal to the type of srcBinding within
-- srcSet
-- - If srcSet is equal to dstSet, then the source
-- and destination ranges of descriptors must not overlap, where
-- the ranges may include array elements from consecutive bindings
-- as described by
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#descriptorsets-updates-consecutive
-- - If the descriptor type of the descriptor set binding specified by
-- srcBinding is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
-- srcArrayElement must be an integer multiple of
-- 4
-- - If the descriptor type of the descriptor set binding specified by
-- dstBinding is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
-- dstArrayElement must be an integer multiple of
-- 4
-- - If the descriptor type of the descriptor set binding specified by
-- either srcBinding or dstBinding is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
-- descriptorCount must be an integer multiple of
-- 4
-- - If srcSet’s layout was created with the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT flag
-- set, then dstSet’s layout must also have been created
-- with the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT flag
-- set
-- - If srcSet’s layout was created without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT flag
-- set, then dstSet’s layout must also have been created
-- without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT flag
-- set
-- - If the descriptor pool from which srcSet was allocated
-- was created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT flag set, then the
-- descriptor pool from which dstSet was allocated must
-- also have been created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT flag set
-- - If the descriptor pool from which srcSet was allocated
-- was created without the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT flag set, then the
-- descriptor pool from which dstSet was allocated must
-- also have been created without the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT flag set
-- - If the descriptor type of the descriptor set binding specified by
-- dstBinding is DESCRIPTOR_TYPE_SAMPLER, then
-- dstSet must not have been allocated with a layout that
-- included immutable samplers for dstBinding
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL
-- - srcSet must be a valid DescriptorSet
-- handle
-- - dstSet must be a valid DescriptorSet
-- handle
-- - Both of dstSet, and srcSet must have been
-- created, allocated, or retrieved from the same Device
--
--
-- See Also
--
-- DescriptorSet, StructureType,
-- updateDescriptorSets
data CopyDescriptorSet
CopyDescriptorSet :: DescriptorSet -> Word32 -> Word32 -> DescriptorSet -> Word32 -> Word32 -> Word32 -> CopyDescriptorSet
-- | srcSet, srcBinding, and srcArrayElement are
-- the source set, binding, and array element, respectively. If the
-- descriptor binding identified by srcSet and
-- srcBinding has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- srcArrayElement specifies the starting byte offset within the
-- binding to copy from.
[$sel:srcSet:CopyDescriptorSet] :: CopyDescriptorSet -> DescriptorSet
[$sel:srcBinding:CopyDescriptorSet] :: CopyDescriptorSet -> Word32
[$sel:srcArrayElement:CopyDescriptorSet] :: CopyDescriptorSet -> Word32
-- | dstSet, dstBinding, and dstArrayElement are
-- the destination set, binding, and array element, respectively. If the
-- descriptor binding identified by dstSet and
-- dstBinding has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- dstArrayElement specifies the starting byte offset within the
-- binding to copy to.
[$sel:dstSet:CopyDescriptorSet] :: CopyDescriptorSet -> DescriptorSet
[$sel:dstBinding:CopyDescriptorSet] :: CopyDescriptorSet -> Word32
[$sel:dstArrayElement:CopyDescriptorSet] :: CopyDescriptorSet -> Word32
-- | descriptorCount is the number of descriptors to copy from the
-- source to destination. If descriptorCount is greater than the
-- number of remaining array elements in the source or destination
-- binding, those affect consecutive bindings in a manner similar to
-- WriteDescriptorSet above. If the descriptor binding identified
-- by srcSet and srcBinding has a descriptor type of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- descriptorCount specifies the number of bytes to copy and the
-- remaining array elements in the source or destination binding refer to
-- the remaining number of bytes in those.
[$sel:descriptorCount:CopyDescriptorSet] :: CopyDescriptorSet -> Word32
-- | VkDescriptorSetLayoutBinding - Structure specifying a descriptor set
-- layout binding
--
-- Description
--
--
-- - pImmutableSamplers affects initialization of samplers. If
-- descriptorType specifies a DESCRIPTOR_TYPE_SAMPLER or
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER type descriptor, then
-- pImmutableSamplers can be used to initialize a set of
-- immutable samplers. Immutable samplers are permanently bound
-- into the set layout and must not be changed; updating a
-- DESCRIPTOR_TYPE_SAMPLER descriptor with immutable samplers is
-- not allowed and updates to a
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER descriptor with
-- immutable samplers does not modify the samplers (the image views are
-- updated, but the sampler updates are ignored). If
-- pImmutableSamplers is not NULL, then it points to an
-- array of sampler handles that will be copied into the set layout and
-- used for the corresponding binding. Only the sampler handles are
-- copied; the sampler objects must not be destroyed before the
-- final use of the set layout and any descriptor pools and sets created
-- using it. If pImmutableSamplers is NULL, then the
-- sampler slots are dynamic and sampler handles must be bound
-- into descriptor sets using this layout. If descriptorType is
-- not one of these descriptor types, then pImmutableSamplers is
-- ignored.
--
--
-- The above layout definition allows the descriptor bindings to be
-- specified sparsely such that not all binding numbers between 0 and the
-- maximum binding number need to be specified in the pBindings
-- array. Bindings that are not specified have a descriptorCount
-- and stageFlags of zero, and the value of
-- descriptorType is undefined. However, all binding numbers
-- between 0 and the maximum binding number in the
-- DescriptorSetLayoutCreateInfo::pBindings array
-- may consume memory in the descriptor set layout even if not all
-- descriptor bindings are used, though it should not consume
-- additional memory from the descriptor pool.
--
-- Note
--
-- The maximum binding number specified should be as compact as
-- possible to avoid wasted memory.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- DescriptorSetLayoutCreateInfo, DescriptorType,
-- Sampler, ShaderStageFlags
data DescriptorSetLayoutBinding
DescriptorSetLayoutBinding :: Word32 -> DescriptorType -> Word32 -> ShaderStageFlags -> Vector Sampler -> DescriptorSetLayoutBinding
-- | binding is the binding number of this entry and corresponds
-- to a resource of the same binding number in the shader stages.
[$sel:binding:DescriptorSetLayoutBinding] :: DescriptorSetLayoutBinding -> Word32
-- | descriptorType is a DescriptorType specifying which
-- type of resource descriptors are used for this binding.
[$sel:descriptorType:DescriptorSetLayoutBinding] :: DescriptorSetLayoutBinding -> DescriptorType
-- | descriptorCount is the number of descriptors contained in the
-- binding, accessed in a shader as an array , except if
-- descriptorType is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT in which case
-- descriptorCount is the size in bytes of the inline uniform
-- block . If descriptorCount is zero this binding entry is
-- reserved and the resource must not be accessed from any stage
-- via this binding within any pipeline using the set layout.
[$sel:descriptorCount:DescriptorSetLayoutBinding] :: DescriptorSetLayoutBinding -> Word32
-- | stageFlags member is a bitmask of ShaderStageFlagBits
-- specifying which pipeline shader stages can access a resource
-- for this binding. SHADER_STAGE_ALL is a shorthand specifying
-- that all defined shader stages, including any additional stages
-- defined by extensions, can access the resource.
--
-- If a shader stage is not included in stageFlags, then a
-- resource must not be accessed from that stage via this binding
-- within any pipeline using the set layout. Other than input attachments
-- which are limited to the fragment shader, there are no limitations on
-- what combinations of stages can use a descriptor binding, and
-- in particular a binding can be used by both graphics stages and
-- the compute stage.
[$sel:stageFlags:DescriptorSetLayoutBinding] :: DescriptorSetLayoutBinding -> ShaderStageFlags
[$sel:immutableSamplers:DescriptorSetLayoutBinding] :: DescriptorSetLayoutBinding -> Vector Sampler
-- | VkDescriptorSetLayoutCreateInfo - Structure specifying parameters of a
-- newly created descriptor set layout
--
-- Valid Usage
--
--
-- - The DescriptorSetLayoutBinding::binding members of
-- the elements of the pBindings array must each have
-- different values
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DescriptorSetLayoutBinding,
-- DescriptorSetLayoutCreateFlags, StructureType,
-- createDescriptorSetLayout,
-- getDescriptorSetLayoutSupport,
-- getDescriptorSetLayoutSupportKHR
data DescriptorSetLayoutCreateInfo (es :: [Type])
DescriptorSetLayoutCreateInfo :: Chain es -> DescriptorSetLayoutCreateFlags -> Vector DescriptorSetLayoutBinding -> DescriptorSetLayoutCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:DescriptorSetLayoutCreateInfo] :: DescriptorSetLayoutCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of
-- DescriptorSetLayoutCreateFlagBits specifying options for
-- descriptor set layout creation.
[$sel:flags:DescriptorSetLayoutCreateInfo] :: DescriptorSetLayoutCreateInfo (es :: [Type]) -> DescriptorSetLayoutCreateFlags
-- | pBindings is a pointer to an array of
-- DescriptorSetLayoutBinding structures.
[$sel:bindings:DescriptorSetLayoutCreateInfo] :: DescriptorSetLayoutCreateInfo (es :: [Type]) -> Vector DescriptorSetLayoutBinding
-- | VkDescriptorPoolSize - Structure specifying descriptor pool size
--
-- Description
--
-- Note
--
-- When creating a descriptor pool that will contain descriptors for
-- combined image samplers of multi-planar formats, an application needs
-- to account for non-trivial descriptor consumption when choosing the
-- descriptorCount value, as indicated by
-- SamplerYcbcrConversionImageFormatProperties::combinedImageSamplerDescriptorCount.
--
-- Valid Usage
--
--
-- - descriptorCount must be greater than
-- 0
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- DescriptorPoolCreateInfo, DescriptorType
data DescriptorPoolSize
DescriptorPoolSize :: DescriptorType -> Word32 -> DescriptorPoolSize
-- | type is the type of descriptor.
[$sel:type':DescriptorPoolSize] :: DescriptorPoolSize -> DescriptorType
-- | descriptorCount is the number of descriptors of that type to
-- allocate. If type is
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then
-- descriptorCount is the number of bytes to allocate for
-- descriptors of this type.
[$sel:descriptorCount:DescriptorPoolSize] :: DescriptorPoolSize -> Word32
-- | VkDescriptorPoolCreateInfo - Structure specifying parameters of a
-- newly created descriptor pool
--
-- Description
--
-- If multiple DescriptorPoolSize structures appear in the
-- pPoolSizes array then the pool will be created with enough
-- storage for the total number of descriptors of each type.
--
-- Fragmentation of a descriptor pool is possible and may lead to
-- descriptor set allocation failures. A failure due to fragmentation is
-- defined as failing a descriptor set allocation despite the sum of all
-- outstanding descriptor set allocations from the pool plus the
-- requested allocation requiring no more than the total number of
-- descriptors requested at pool creation. Implementations provide
-- certain guarantees of when fragmentation must not cause
-- allocation failure, as described below.
--
-- If a descriptor pool has not had any descriptor sets freed since it
-- was created or most recently reset then fragmentation must not
-- cause an allocation failure (note that this is always the case for a
-- pool created without the
-- DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT bit set).
-- Additionally, if all sets allocated from the pool since it was created
-- or most recently reset use the same number of descriptors (of each
-- type) and the requested allocation also uses that same number of
-- descriptors (of each type), then fragmentation must not cause
-- an allocation failure.
--
-- If an allocation failure occurs due to fragmentation, an application
-- can create an additional descriptor pool to perform further
-- descriptor set allocations.
--
-- If flags has the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT bit set,
-- descriptor pool creation may fail with the error
-- ERROR_FRAGMENTATION if the total number of descriptors across
-- all pools (including this one) created with this bit set exceeds
-- maxUpdateAfterBindDescriptorsInAllPools, or if fragmentation
-- of the underlying hardware resources occurs.
--
-- Valid Usage
--
--
-- - maxSets must be greater than 0
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- DescriptorPoolCreateFlags, DescriptorPoolSize,
-- StructureType, createDescriptorPool
data DescriptorPoolCreateInfo (es :: [Type])
DescriptorPoolCreateInfo :: Chain es -> DescriptorPoolCreateFlags -> Word32 -> Vector DescriptorPoolSize -> DescriptorPoolCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:DescriptorPoolCreateInfo] :: DescriptorPoolCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of DescriptorPoolCreateFlagBits
-- specifying certain supported operations on the pool.
[$sel:flags:DescriptorPoolCreateInfo] :: DescriptorPoolCreateInfo (es :: [Type]) -> DescriptorPoolCreateFlags
-- | maxSets is the maximum number of descriptor sets that
-- can be allocated from the pool.
[$sel:maxSets:DescriptorPoolCreateInfo] :: DescriptorPoolCreateInfo (es :: [Type]) -> Word32
-- | pPoolSizes is a pointer to an array of
-- DescriptorPoolSize structures, each containing a descriptor
-- type and number of descriptors of that type to be allocated in the
-- pool.
[$sel:poolSizes:DescriptorPoolCreateInfo] :: DescriptorPoolCreateInfo (es :: [Type]) -> Vector DescriptorPoolSize
-- | VkDescriptorSetAllocateInfo - Structure specifying the allocation
-- parameters for descriptor sets
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of
-- DescriptorSetVariableDescriptorCountAllocateInfo
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - descriptorPool must be a valid
-- DescriptorPool handle
-- - pSetLayouts must be a valid pointer to an array of
-- descriptorSetCount valid DescriptorSetLayout
-- handles
-- - descriptorSetCount must be greater than
-- 0
-- - Both of descriptorPool, and the elements of
-- pSetLayouts must have been created, allocated, or
-- retrieved from the same Device
--
--
-- See Also
--
-- DescriptorPool, DescriptorSetLayout,
-- StructureType, allocateDescriptorSets
data DescriptorSetAllocateInfo (es :: [Type])
DescriptorSetAllocateInfo :: Chain es -> DescriptorPool -> Vector DescriptorSetLayout -> DescriptorSetAllocateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:DescriptorSetAllocateInfo] :: DescriptorSetAllocateInfo (es :: [Type]) -> Chain es
-- | descriptorPool is the pool which the sets will be allocated
-- from.
[$sel:descriptorPool:DescriptorSetAllocateInfo] :: DescriptorSetAllocateInfo (es :: [Type]) -> DescriptorPool
-- | pSetLayouts is a pointer to an array of descriptor set
-- layouts, with each member specifying how the corresponding descriptor
-- set is allocated.
[$sel:setLayouts:DescriptorSetAllocateInfo] :: DescriptorSetAllocateInfo (es :: [Type]) -> Vector DescriptorSetLayout
-- | VkDescriptorSet - Opaque handle to a descriptor set object
--
-- See Also
--
-- CopyDescriptorSet, WriteDescriptorSet,
-- allocateDescriptorSets, cmdBindDescriptorSets,
-- freeDescriptorSets, updateDescriptorSetWithTemplate,
-- updateDescriptorSetWithTemplateKHR
newtype DescriptorSet
DescriptorSet :: Word64 -> DescriptorSet
-- | VkDescriptorSetLayout - Opaque handle to a descriptor set layout
-- object
--
-- See Also
--
-- DescriptorSetAllocateInfo,
-- DescriptorUpdateTemplateCreateInfo,
-- PipelineLayoutCreateInfo, createDescriptorSetLayout,
-- destroyDescriptorSetLayout
newtype DescriptorSetLayout
DescriptorSetLayout :: Word64 -> DescriptorSetLayout
-- | VkDescriptorPool - Opaque handle to a descriptor pool object
--
-- See Also
--
-- DescriptorSetAllocateInfo, createDescriptorPool,
-- destroyDescriptorPool, freeDescriptorSets,
-- resetDescriptorPool
newtype DescriptorPool
DescriptorPool :: Word64 -> DescriptorPool
-- | VkDescriptorPoolResetFlags - Reserved for future use
--
-- Description
--
-- DescriptorPoolResetFlags is a bitmask type for setting a mask,
-- but is currently reserved for future use.
--
-- See Also
--
-- resetDescriptorPool
newtype DescriptorPoolResetFlags
DescriptorPoolResetFlags :: Flags -> DescriptorPoolResetFlags
-- | VkDescriptorType - Specifies the type of a descriptor in a descriptor
-- set
--
-- Description
--
--
--
--
--
-- When a descriptor set is updated via elements of
-- WriteDescriptorSet, members of pImageInfo,
-- pBufferInfo and pTexelBufferView are only accessed
-- by the implementation when they correspond to descriptor type being
-- defined - otherwise they are ignored. The members accessed are as
-- follows for each descriptor type:
--
--
-- - For DESCRIPTOR_TYPE_SAMPLER, only the sampler
-- member of each element of
-- WriteDescriptorSet::pImageInfo is accessed.
-- - For DESCRIPTOR_TYPE_SAMPLED_IMAGE,
-- DESCRIPTOR_TYPE_STORAGE_IMAGE, or
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT, only the imageView
-- and imageLayout members of each element of
-- WriteDescriptorSet::pImageInfo are accessed.
-- - For DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, all members of
-- each element of WriteDescriptorSet::pImageInfo are
-- accessed.
-- - For DESCRIPTOR_TYPE_UNIFORM_BUFFER,
-- DESCRIPTOR_TYPE_STORAGE_BUFFER,
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, all members of each
-- element of WriteDescriptorSet::pBufferInfo are
-- accessed.
-- - For DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, each element of
-- WriteDescriptorSet::pTexelBufferView is accessed.
--
--
-- When updating descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT, none of the
-- pImageInfo, pBufferInfo, or
-- pTexelBufferView members are accessed, instead the source
-- data of the descriptor update operation is taken from the
-- WriteDescriptorSetInlineUniformBlockEXT structure in the
-- pNext chain of WriteDescriptorSet. When updating
-- descriptors with a descriptorType of
-- DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, none of the
-- pImageInfo, pBufferInfo, or
-- pTexelBufferView members are accessed, instead the source
-- data of the descriptor update operation is taken from the
-- WriteDescriptorSetAccelerationStructureKHR structure in the
-- pNext chain of WriteDescriptorSet.
--
-- See Also
--
-- DescriptorPoolSize, DescriptorSetLayoutBinding,
-- DescriptorUpdateTemplateEntry, ImageViewHandleInfoNVX,
-- WriteDescriptorSet
newtype DescriptorType
DescriptorType :: Int32 -> DescriptorType
pattern DESCRIPTOR_TYPE_SAMPLER :: DescriptorType
pattern DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER :: DescriptorType
pattern DESCRIPTOR_TYPE_SAMPLED_IMAGE :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_IMAGE :: DescriptorType
pattern DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_UNIFORM_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_BUFFER :: DescriptorType
pattern DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC :: DescriptorType
pattern DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC :: DescriptorType
pattern DESCRIPTOR_TYPE_INPUT_ATTACHMENT :: DescriptorType
pattern DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR :: DescriptorType
pattern DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT :: DescriptorType
-- | VkDescriptorPoolCreateFlagBits - Bitmask specifying certain supported
-- operations on a descriptor pool
--
-- See Also
--
-- DescriptorPoolCreateFlags
newtype DescriptorPoolCreateFlagBits
DescriptorPoolCreateFlagBits :: Flags -> DescriptorPoolCreateFlagBits
-- | DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT specifies that
-- descriptor sets can return their individual allocations to the
-- pool, i.e. all of allocateDescriptorSets,
-- freeDescriptorSets, and resetDescriptorPool are allowed.
-- Otherwise, descriptor sets allocated from the pool must not be
-- individually freed back to the pool, i.e. only
-- allocateDescriptorSets and resetDescriptorPool are
-- allowed.
pattern DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT :: DescriptorPoolCreateFlagBits
-- | DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT specifies that
-- descriptor sets allocated from this pool can include bindings
-- with the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit set. It
-- is valid to allocate descriptor sets that have bindings that do not
-- set the DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit from a
-- pool that has DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT set.
pattern DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT :: DescriptorPoolCreateFlagBits
type DescriptorPoolCreateFlags = DescriptorPoolCreateFlagBits
-- | VkDescriptorSetLayoutCreateFlagBits - Bitmask specifying descriptor
-- set layout properties
--
-- See Also
--
-- DescriptorSetLayoutCreateFlags
newtype DescriptorSetLayoutCreateFlagBits
DescriptorSetLayoutCreateFlagBits :: Flags -> DescriptorSetLayoutCreateFlagBits
-- | DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR specifies
-- that descriptor sets must not be allocated using this layout,
-- and descriptors are instead pushed by cmdPushDescriptorSetKHR.
pattern DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR :: DescriptorSetLayoutCreateFlagBits
-- | DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
-- specifies that descriptor sets using this layout must be
-- allocated from a descriptor pool created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT bit set.
-- Descriptor set layouts created with this bit set have alternate limits
-- for the maximum number of descriptors per-stage and per-pipeline
-- layout. The non-UpdateAfterBind limits only count descriptors in sets
-- created without this flag. The UpdateAfterBind limits count all
-- descriptors, but the limits may be higher than the
-- non-UpdateAfterBind limits.
pattern DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT :: DescriptorSetLayoutCreateFlagBits
type DescriptorSetLayoutCreateFlags = DescriptorSetLayoutCreateFlagBits
instance GHC.Classes.Eq Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance GHC.Classes.Eq Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance GHC.Classes.Eq Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance GHC.Classes.Eq Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
instance GHC.Generics.Generic Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
instance GHC.Show.Show Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
instance GHC.Generics.Generic Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance GHC.Show.Show Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance GHC.Generics.Generic (Vulkan.Core10.DescriptorSet.WriteDescriptorSet es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.DescriptorSet.WriteDescriptorSet es)
instance GHC.Generics.Generic Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance GHC.Show.Show Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance GHC.Generics.Generic Vulkan.Core10.DescriptorSet.DescriptorSetLayoutBinding
instance GHC.Show.Show Vulkan.Core10.DescriptorSet.DescriptorSetLayoutBinding
instance GHC.Generics.Generic (Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es)
instance GHC.Generics.Generic Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance GHC.Show.Show Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance GHC.Generics.Generic (Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.DescriptorSet.DescriptorSetAllocateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.DescriptorSet.DescriptorPoolCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance Foreign.Storable.Storable Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance Vulkan.Zero.Zero Vulkan.Core10.DescriptorSet.DescriptorPoolSize
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.DescriptorSet.DescriptorSetLayoutCreateInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DescriptorSet.DescriptorSetLayoutBinding
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DescriptorSet.DescriptorSetLayoutBinding
instance Vulkan.Zero.Zero Vulkan.Core10.DescriptorSet.DescriptorSetLayoutBinding
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance Foreign.Storable.Storable Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance Vulkan.Zero.Zero Vulkan.Core10.DescriptorSet.CopyDescriptorSet
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.DescriptorSet.WriteDescriptorSet
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.WriteDescriptorSet es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.DescriptorSet.WriteDescriptorSet es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.DescriptorSet.WriteDescriptorSet es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.DescriptorSet.WriteDescriptorSet es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.DescriptorSet.WriteDescriptorSet es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance Foreign.Storable.Storable Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance Vulkan.Zero.Zero Vulkan.Core10.DescriptorSet.DescriptorImageInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
instance Foreign.Storable.Storable Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
instance Vulkan.Zero.Zero Vulkan.Core10.DescriptorSet.DescriptorBufferInfo
module Vulkan.Extensions.VK_KHR_push_descriptor
-- | vkCmdPushDescriptorSetKHR - Pushes descriptor updates into a command
-- buffer
--
-- Description
--
-- Push descriptors are a small bank of descriptors whose storage
-- is internally managed by the command buffer rather than being written
-- into a descriptor set and later bound to a command buffer. Push
-- descriptors allow for incremental updates of descriptors without
-- managing the lifetime of descriptor sets.
--
-- When a command buffer begins recording, all push descriptors are
-- undefined. Push descriptors can be updated incrementally and
-- cause shaders to use the updated descriptors for subsequent rendering
-- commands (either compute or graphics, according to the
-- pipelineBindPoint) until the descriptor is overwritten, or
-- else until the set is disturbed as described in Pipeline Layout
-- Compatibility. When the set is disturbed or push descriptors with
-- a different descriptor set layout are set, all push descriptors are
-- undefined.
--
-- Push descriptors that are statically used by a pipeline
-- must not be undefined at the time that a draw or dispatch
-- command is recorded to execute using that pipeline. This includes
-- immutable sampler descriptors, which must be pushed before they
-- are accessed by a pipeline (the immutable samplers are pushed, rather
-- than the samplers in pDescriptorWrites). Push descriptors
-- that are not statically used can remain undefined.
--
-- Push descriptors do not use dynamic offsets. Instead, the
-- corresponding non-dynamic descriptor types can be used and the
-- offset member of DescriptorBufferInfo can be
-- changed each time the descriptor is written.
--
-- Each element of pDescriptorWrites is interpreted as in
-- WriteDescriptorSet, except the dstSet member is
-- ignored.
--
-- To push an immutable sampler, use a WriteDescriptorSet with
-- dstBinding and dstArrayElement selecting the
-- immutable sampler’s binding. If the descriptor type is
-- DESCRIPTOR_TYPE_SAMPLER, the pImageInfo parameter is
-- ignored and the immutable sampler is taken from the push descriptor
-- set layout in the pipeline layout. If the descriptor type is
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, the sampler
-- member of the pImageInfo parameter is ignored and the
-- immutable sampler is taken from the push descriptor set layout in the
-- pipeline layout.
--
-- Valid Usage
--
--
-- - pipelineBindPoint must be supported by the
-- commandBuffer’s parent CommandPool’s queue family
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - layout must be a valid PipelineLayout
-- handle
-- - pDescriptorWrites must be a valid pointer to an
-- array of descriptorWriteCount valid WriteDescriptorSet
-- structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - descriptorWriteCount must be greater than
-- 0
-- - Both of commandBuffer, and layout must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, PipelineBindPoint, PipelineLayout,
-- WriteDescriptorSet
cmdPushDescriptorSetKHR :: forall io. MonadIO io => CommandBuffer -> PipelineBindPoint -> PipelineLayout -> ("set" ::: Word32) -> ("descriptorWrites" ::: Vector (SomeStruct WriteDescriptorSet)) -> io ()
-- | vkCmdPushDescriptorSetWithTemplateKHR - Pushes descriptor updates into
-- a command buffer using a descriptor update template
--
-- Valid Usage
--
--
-- - The pipelineBindPoint specified during the creation of
-- the descriptor update template must be supported by the
-- commandBuffer’s parent CommandPool’s queue family
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - descriptorUpdateTemplate must be a valid
-- DescriptorUpdateTemplate handle
-- - layout must be a valid PipelineLayout
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Each of commandBuffer, descriptorUpdateTemplate,
-- and layout must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- API example.
--
--
-- struct AppDataStructure
-- {
-- VkDescriptorImageInfo imageInfo; // a single image info
-- // ... some more application related data
-- };
--
-- const VkDescriptorUpdateTemplateEntry descriptorUpdateTemplateEntries[] =
-- {
-- // binding to a single image descriptor
-- {
-- 0, // binding
-- 0, // dstArrayElement
-- 1, // descriptorCount
-- VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, // descriptorType
-- offsetof(AppDataStructure, imageInfo), // offset
-- 0 // stride is not required if descriptorCount is 1
-- }
-- };
--
-- // create a descriptor update template for descriptor set updates
-- const VkDescriptorUpdateTemplateCreateInfo createInfo =
-- {
-- VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, // sType
-- NULL, // pNext
-- 0, // flags
-- 1, // descriptorUpdateEntryCount
-- descriptorUpdateTemplateEntries, // pDescriptorUpdateEntries
-- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR, // templateType
-- 0, // descriptorSetLayout, ignored by given templateType
-- VK_PIPELINE_BIND_POINT_GRAPHICS, // pipelineBindPoint
-- myPipelineLayout, // pipelineLayout
-- 0, // set
-- };
--
-- VkDescriptorUpdateTemplate myDescriptorUpdateTemplate;
-- myResult = vkCreateDescriptorUpdateTemplate(
-- myDevice,
-- &createInfo,
-- NULL,
-- &myDescriptorUpdateTemplate);
-- }
--
-- AppDataStructure appData;
-- // fill appData here or cache it in your engine
-- vkCmdPushDescriptorSetWithTemplateKHR(myCmdBuffer, myDescriptorUpdateTemplate, myPipelineLayout, 0,&appData);
--
--
-- See Also
--
-- CommandBuffer, DescriptorUpdateTemplate,
-- PipelineLayout
cmdPushDescriptorSetWithTemplateKHR :: forall io. MonadIO io => CommandBuffer -> DescriptorUpdateTemplate -> PipelineLayout -> ("set" ::: Word32) -> ("data" ::: Ptr ()) -> io ()
-- | VkPhysicalDevicePushDescriptorPropertiesKHR - Structure describing
-- push descriptor limits that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDevicePushDescriptorPropertiesKHR
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDevicePushDescriptorPropertiesKHR structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDevicePushDescriptorPropertiesKHR
PhysicalDevicePushDescriptorPropertiesKHR :: Word32 -> PhysicalDevicePushDescriptorPropertiesKHR
-- | maxPushDescriptors is the maximum number of descriptors that
-- can be used in a descriptor set created with
-- DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR set.
[$sel:maxPushDescriptors:PhysicalDevicePushDescriptorPropertiesKHR] :: PhysicalDevicePushDescriptorPropertiesKHR -> Word32
type KHR_PUSH_DESCRIPTOR_SPEC_VERSION = 2
pattern KHR_PUSH_DESCRIPTOR_SPEC_VERSION :: forall a. Integral a => a
type KHR_PUSH_DESCRIPTOR_EXTENSION_NAME = "VK_KHR_push_descriptor"
pattern KHR_PUSH_DESCRIPTOR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
instance GHC.Generics.Generic Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
instance GHC.Show.Show Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
instance Foreign.Storable.Storable Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_KHR_push_descriptor.PhysicalDevicePushDescriptorPropertiesKHR
module Vulkan.Extensions.VK_KHR_descriptor_update_template
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR :: StructureType
pattern OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR :: ObjectType
pattern DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR :: DescriptorUpdateTemplateType
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT :: DebugReportObjectTypeEXT
createDescriptorUpdateTemplateKHR :: MonadIO io => Device -> DescriptorUpdateTemplateCreateInfo -> ("allocator" ::: Maybe AllocationCallbacks) -> io DescriptorUpdateTemplate
destroyDescriptorUpdateTemplateKHR :: MonadIO io => Device -> DescriptorUpdateTemplate -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
updateDescriptorSetWithTemplateKHR :: MonadIO io => Device -> DescriptorSet -> DescriptorUpdateTemplate -> ("data" ::: Ptr ()) -> io ()
type DescriptorUpdateTemplateCreateFlagsKHR = DescriptorUpdateTemplateCreateFlags
type DescriptorUpdateTemplateKHR = DescriptorUpdateTemplate
type DescriptorUpdateTemplateTypeKHR = DescriptorUpdateTemplateType
type DescriptorUpdateTemplateEntryKHR = DescriptorUpdateTemplateEntry
type DescriptorUpdateTemplateCreateInfoKHR = DescriptorUpdateTemplateCreateInfo
type KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION = 1
pattern KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION :: forall a. Integral a => a
type KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = "VK_KHR_descriptor_update_template"
pattern KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
-- | vkCmdPushDescriptorSetWithTemplateKHR - Pushes descriptor updates into
-- a command buffer using a descriptor update template
--
-- Valid Usage
--
--
-- - The pipelineBindPoint specified during the creation of
-- the descriptor update template must be supported by the
-- commandBuffer’s parent CommandPool’s queue family
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - descriptorUpdateTemplate must be a valid
-- DescriptorUpdateTemplate handle
-- - layout must be a valid PipelineLayout
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Each of commandBuffer, descriptorUpdateTemplate,
-- and layout must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- API example.
--
--
-- struct AppDataStructure
-- {
-- VkDescriptorImageInfo imageInfo; // a single image info
-- // ... some more application related data
-- };
--
-- const VkDescriptorUpdateTemplateEntry descriptorUpdateTemplateEntries[] =
-- {
-- // binding to a single image descriptor
-- {
-- 0, // binding
-- 0, // dstArrayElement
-- 1, // descriptorCount
-- VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, // descriptorType
-- offsetof(AppDataStructure, imageInfo), // offset
-- 0 // stride is not required if descriptorCount is 1
-- }
-- };
--
-- // create a descriptor update template for descriptor set updates
-- const VkDescriptorUpdateTemplateCreateInfo createInfo =
-- {
-- VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, // sType
-- NULL, // pNext
-- 0, // flags
-- 1, // descriptorUpdateEntryCount
-- descriptorUpdateTemplateEntries, // pDescriptorUpdateEntries
-- VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR, // templateType
-- 0, // descriptorSetLayout, ignored by given templateType
-- VK_PIPELINE_BIND_POINT_GRAPHICS, // pipelineBindPoint
-- myPipelineLayout, // pipelineLayout
-- 0, // set
-- };
--
-- VkDescriptorUpdateTemplate myDescriptorUpdateTemplate;
-- myResult = vkCreateDescriptorUpdateTemplate(
-- myDevice,
-- &createInfo,
-- NULL,
-- &myDescriptorUpdateTemplate);
-- }
--
-- AppDataStructure appData;
-- // fill appData here or cache it in your engine
-- vkCmdPushDescriptorSetWithTemplateKHR(myCmdBuffer, myDescriptorUpdateTemplate, myPipelineLayout, 0,&appData);
--
--
-- See Also
--
-- CommandBuffer, DescriptorUpdateTemplate,
-- PipelineLayout
cmdPushDescriptorSetWithTemplateKHR :: forall io. MonadIO io => CommandBuffer -> DescriptorUpdateTemplate -> PipelineLayout -> ("set" ::: Word32) -> ("data" ::: Ptr ()) -> io ()
-- | VkDebugReportObjectTypeEXT - Specify the type of an object handle
--
-- Description
--
-- '
--
-- TODO: table
--
-- DebugReportObjectTypeEXT and Vulkan Handle Relationship
--
-- Note
--
-- The primary expected use of ERROR_VALIDATION_FAILED_EXT is for
-- validation layer testing. It is not expected that an application would
-- see this error code during normal use of the validation layers.
--
-- See Also
--
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT, debugReportMessageEXT
newtype DebugReportObjectTypeEXT
DebugReportObjectTypeEXT :: Int32 -> DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: DebugReportObjectTypeEXT
pattern DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DebugReportObjectTypeEXT
module Vulkan.Core11.Promoted_From_VK_KHR_maintenance3
-- | vkGetDescriptorSetLayoutSupport - Query whether a descriptor set
-- layout can be created
--
-- Description
--
-- Some implementations have limitations on what fits in a descriptor set
-- which are not easily expressible in terms of existing limits like
-- maxDescriptorSet*, for example if all descriptor types share
-- a limited space in memory but each descriptor is a different size or
-- alignment. This command returns information about whether a descriptor
-- set satisfies this limit. If the descriptor set layout satisfies the
-- PhysicalDeviceMaintenance3Properties::maxPerSetDescriptors
-- limit, this command is guaranteed to return TRUE in
-- DescriptorSetLayoutSupport::supported. If the
-- descriptor set layout exceeds the
-- PhysicalDeviceMaintenance3Properties::maxPerSetDescriptors
-- limit, whether the descriptor set layout is supported is
-- implementation-dependent and may depend on whether the
-- descriptor sizes and alignments cause the layout to exceed an internal
-- limit.
--
-- This command does not consider other limits such as
-- maxPerStageDescriptor*, and so a descriptor set layout that
-- is supported according to this command must still satisfy the
-- pipeline layout limits such as maxPerStageDescriptor* in
-- order to be used in a pipeline layout.
--
-- Note
--
-- This is a Device query rather than PhysicalDevice
-- because the answer may depend on enabled features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport, Device
getDescriptorSetLayoutSupport :: forall a b io. (Extendss DescriptorSetLayoutCreateInfo a, Extendss DescriptorSetLayoutSupport b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => Device -> DescriptorSetLayoutCreateInfo a -> io (DescriptorSetLayoutSupport b)
-- | VkPhysicalDeviceMaintenance3Properties - Structure describing
-- descriptor set properties
--
-- Members
--
-- The members of the PhysicalDeviceMaintenance3Properties
-- structure describe the following implementation-dependent limits:
--
-- Description
--
-- If the PhysicalDeviceMaintenance3Properties structure is
-- included in the pNext chain of
-- PhysicalDeviceProperties2, it is filled with the
-- implementation-dependent limits.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- DeviceSize, StructureType
data PhysicalDeviceMaintenance3Properties
PhysicalDeviceMaintenance3Properties :: Word32 -> DeviceSize -> PhysicalDeviceMaintenance3Properties
-- | maxPerSetDescriptors is a maximum number of descriptors
-- (summed over all descriptor types) in a single descriptor set that is
-- guaranteed to satisfy any implementation-dependent constraints on the
-- size of a descriptor set itself. Applications can query whether
-- a descriptor set that goes beyond this limit is supported using
-- getDescriptorSetLayoutSupport.
[$sel:maxPerSetDescriptors:PhysicalDeviceMaintenance3Properties] :: PhysicalDeviceMaintenance3Properties -> Word32
-- | maxMemoryAllocationSize is the maximum size of a memory
-- allocation that can be created, even if there is more space
-- available in the heap.
[$sel:maxMemoryAllocationSize:PhysicalDeviceMaintenance3Properties] :: PhysicalDeviceMaintenance3Properties -> DeviceSize
-- | VkDescriptorSetLayoutSupport - Structure returning information about
-- whether a descriptor set layout can be supported
--
-- Description
--
-- supported is set to TRUE if the descriptor set
-- can be created, or else is set to FALSE.
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, StructureType,
-- getDescriptorSetLayoutSupport,
-- getDescriptorSetLayoutSupportKHR
data DescriptorSetLayoutSupport (es :: [Type])
DescriptorSetLayoutSupport :: Chain es -> Bool -> DescriptorSetLayoutSupport (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:DescriptorSetLayoutSupport] :: DescriptorSetLayoutSupport (es :: [Type]) -> Chain es
-- | supported specifies whether the descriptor set layout
-- can be created.
[$sel:supported:DescriptorSetLayoutSupport] :: DescriptorSetLayoutSupport (es :: [Type]) -> Bool
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
instance GHC.Generics.Generic Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
instance GHC.Show.Show Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
instance GHC.Generics.Generic (Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.DescriptorSetLayoutSupport es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
instance Vulkan.CStruct.FromCStruct Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
instance Foreign.Storable.Storable Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
instance Vulkan.Zero.Zero Vulkan.Core11.Promoted_From_VK_KHR_maintenance3.PhysicalDeviceMaintenance3Properties
module Vulkan.Extensions.VK_KHR_maintenance3
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR :: StructureType
getDescriptorSetLayoutSupportKHR :: forall (a :: [Type]) (b :: [Type]) io. (Extendss DescriptorSetLayoutCreateInfo a, Extendss DescriptorSetLayoutSupport b, PokeChain a, PokeChain b, PeekChain b, MonadIO io) => Device -> DescriptorSetLayoutCreateInfo a -> io (DescriptorSetLayoutSupport b)
type PhysicalDeviceMaintenance3PropertiesKHR = PhysicalDeviceMaintenance3Properties
type DescriptorSetLayoutSupportKHR = DescriptorSetLayoutSupport
type KHR_MAINTENANCE3_SPEC_VERSION = 1
pattern KHR_MAINTENANCE3_SPEC_VERSION :: forall a. Integral a => a
type KHR_MAINTENANCE3_EXTENSION_NAME = "VK_KHR_maintenance3"
pattern KHR_MAINTENANCE3_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core11
pattern API_VERSION_1_1 :: Word32
module Vulkan.Core10.CommandBufferBuilding
-- | vkCmdBindPipeline - Bind a pipeline object to a command buffer
--
-- Description
--
-- Once bound, a pipeline binding affects subsequent graphics or compute
-- commands in the command buffer until a different pipeline is bound to
-- the bind point. The pipeline bound to
-- PIPELINE_BIND_POINT_COMPUTE controls the behavior of
-- cmdDispatch and cmdDispatchIndirect. The pipeline bound
-- to PIPELINE_BIND_POINT_GRAPHICS controls the behavior of all
-- drawing commands. The pipeline bound to
-- PIPELINE_BIND_POINT_RAY_TRACING_KHR controls the behavior of
-- cmdTraceRaysKHR. No other commands are affected by the pipeline
-- state.
--
-- Valid Usage
--
--
--
--
-- - If pipelineBindPoint is
-- PIPELINE_BIND_POINT_GRAPHICS, the CommandPool that
-- commandBuffer was allocated from must support graphics
-- operations
-- - If pipelineBindPoint is
-- PIPELINE_BIND_POINT_COMPUTE, pipeline must be a
-- compute pipeline
-- - If pipelineBindPoint is
-- PIPELINE_BIND_POINT_GRAPHICS, pipeline must be
-- a graphics pipeline
-- - If the variable multisample rate feature is not supported,
-- pipeline is a graphics pipeline, the current subpass uses
-- no attachments, and this is not the first call to this function
-- with a graphics pipeline after transitioning to the current subpass,
-- then the sample count specified by this pipeline must match
-- that set in the previous pipeline
-- - If
-- PhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations
-- is FALSE, and pipeline is a graphics pipeline created
-- with a PipelineSampleLocationsStateCreateInfoEXT structure
-- having its sampleLocationsEnable member set to TRUE
-- but without DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT enabled then the
-- current render pass instance must have been begun by specifying
-- a RenderPassSampleLocationsBeginInfoEXT structure whose
-- pPostSubpassSampleLocations member contains an element with a
-- subpassIndex matching the current subpass index and the
-- sampleLocationsInfo member of that element must match
-- the sampleLocationsInfo specified in
-- PipelineSampleLocationsStateCreateInfoEXT when the pipeline was
-- created
-- - This command must not be recorded when transform feedback
-- is active
-- - If pipelineBindPoint is
-- PIPELINE_BIND_POINT_RAY_TRACING_KHR, the CommandPool
-- that commandBuffer was allocated from must support
-- compute operations
-- - If pipelineBindPoint is
-- PIPELINE_BIND_POINT_RAY_TRACING_KHR, the pipeline
-- must be a ray tracing pipeline
-- - The pipeline must not have been created with
-- PIPELINE_CREATE_LIBRARY_BIT_KHR set
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - pipeline must be a valid Pipeline
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Both of commandBuffer, and pipeline must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Pipeline, PipelineBindPoint
cmdBindPipeline :: forall io. MonadIO io => CommandBuffer -> PipelineBindPoint -> Pipeline -> io ()
-- | vkCmdSetViewport - Set the viewport on a command buffer
--
-- Description
--
-- The viewport parameters taken from element i of pViewports
-- replace the current state for the viewport index
-- firstViewport + i, for i in [0, viewportCount).
--
-- Valid Usage
--
--
--
--
-- - The sum of firstViewport and viewportCount
-- must be between 1 and
-- PhysicalDeviceLimits::maxViewports, inclusive
-- - If the multiple viewports feature is not enabled,
-- firstViewport must be 0
-- - If the multiple viewports feature is not enabled,
-- viewportCount must be 1
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pViewports must be a valid pointer to an array of
-- viewportCount valid Viewport structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - viewportCount must be greater than 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Viewport
cmdSetViewport :: forall io. MonadIO io => CommandBuffer -> ("firstViewport" ::: Word32) -> ("viewports" ::: Vector Viewport) -> io ()
-- | vkCmdSetScissor - Set the dynamic scissor rectangles on a command
-- buffer
--
-- Description
--
-- The scissor rectangles taken from element i of pScissors
-- replace the current state for the scissor index firstScissor
-- + i, for i in [0, scissorCount).
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_SCISSOR set in
-- PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage
--
--
--
--
-- - The sum of firstScissor and scissorCount
-- must be between 1 and
-- PhysicalDeviceLimits::maxViewports, inclusive
-- - If the multiple viewports feature is not enabled,
-- firstScissor must be 0
-- - If the multiple viewports feature is not enabled,
-- scissorCount must be 1
-- - The x and y members of offset member of
-- any element of pScissors must be greater than or equal
-- to 0
-- - Evaluation of (offset.x + extent.width)
-- must not cause a signed integer addition overflow for any
-- element of pScissors
-- - Evaluation of (offset.y + extent.height)
-- must not cause a signed integer addition overflow for any
-- element of pScissors
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pScissors must be a valid pointer to an array of
-- scissorCount Rect2D structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - scissorCount must be greater than 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Rect2D
cmdSetScissor :: forall io. MonadIO io => CommandBuffer -> ("firstScissor" ::: Word32) -> ("scissors" ::: Vector Rect2D) -> io ()
-- | vkCmdSetLineWidth - Set the dynamic line width state
--
-- Valid Usage
--
--
-- - If the wide lines feature is not enabled,
-- lineWidth must be 1.0
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdSetLineWidth :: forall io. MonadIO io => CommandBuffer -> ("lineWidth" ::: Float) -> io ()
-- | vkCmdSetDepthBias - Set the depth bias dynamic state
--
-- Description
--
-- If depthBiasEnable is FALSE, no depth bias is applied
-- and the fragment’s depth values are unchanged.
--
-- depthBiasSlopeFactor scales the maximum depth slope of the
-- polygon, and depthBiasConstantFactor scales an
-- implementation-dependent constant that relates to the usable
-- resolution of the depth buffer. The resulting values are summed to
-- produce the depth bias value which is then clamped to a minimum or
-- maximum value specified by depthBiasClamp.
-- depthBiasSlopeFactor, depthBiasConstantFactor, and
-- depthBiasClamp can each be positive, negative, or
-- zero.
--
-- The maximum depth slope m of a triangle is
--
-- <math>
--
-- where (xf, yf, zf) is a point on the triangle. m may be
-- approximated as
--
-- <math>
--
-- The minimum resolvable difference r is an implementation-dependent
-- parameter that depends on the depth buffer representation. It is the
-- smallest difference in framebuffer coordinate z values that is
-- guaranteed to remain distinct throughout polygon rasterization and in
-- the depth buffer. All pairs of fragments generated by the
-- rasterization of two polygons with otherwise identical vertices, but
-- zf values that differ by r, will have distinct depth values.
--
-- For fixed-point depth buffer representations, r is constant throughout
-- the range of the entire depth buffer. For floating-point depth
-- buffers, there is no single minimum resolvable difference. In this
-- case, the minimum resolvable difference for a given polygon is
-- dependent on the maximum exponent, e, in the range of z values spanned
-- by the primitive. If n is the number of bits in the floating-point
-- mantissa, the minimum resolvable difference, r, for the given
-- primitive is defined as
--
--
--
-- If a triangle is rasterized using the
-- POLYGON_MODE_FILL_RECTANGLE_NV polygon mode, then this minimum
-- resolvable difference may not be resolvable for samples outside
-- of the triangle, where the depth is extrapolated.
--
-- If no depth buffer is present, r is undefined.
--
-- The bias value o for a polygon is
--
-- [begin{aligned} o &= mathrm{dbclamp}( m times
-- mathtt{depthBiasSlopeFactor} + r times mathtt{depthBiasConstantFactor}
-- ) -- text{where} &quad mathrm{dbclamp}(x) =
--
-- Command Buffer Levels | Render Pass Scope | Supported
-- Queue Types | Pipeline Type |
-- +============================================================================================================================+========================================================================================================================+=======================================================================================================================+=====================================================================================================================================+
-- | Primary | Both | Graphics | | | Secondary | | | |
-- +----------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+
--
-- See Also
--
-- CommandBuffer
cmdSetDepthBias :: forall io. MonadIO io => CommandBuffer -> ("depthBiasConstantFactor" ::: Float) -> ("depthBiasClamp" ::: Float) -> ("depthBiasSlopeFactor" ::: Float) -> io ()
-- | vkCmdSetBlendConstants - Set the values of blend constants
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdSetBlendConstants :: forall io. MonadIO io => CommandBuffer -> ("blendConstants" ::: (Float, Float, Float, Float)) -> io ()
-- | vkCmdSetDepthBounds - Set the depth bounds test values for a command
-- buffer
--
-- Description
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_DEPTH_BOUNDS set in
-- PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage
--
--
-- - Unless the VK_EXT_depth_range_unrestricted extension is
-- enabled minDepthBounds must be between 0.0
-- and 1.0, inclusive
--
--
--
-- - Unless the VK_EXT_depth_range_unrestricted extension is
-- enabled maxDepthBounds must be between 0.0
-- and 1.0, inclusive
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdSetDepthBounds :: forall io. MonadIO io => CommandBuffer -> ("minDepthBounds" ::: Float) -> ("maxDepthBounds" ::: Float) -> io ()
-- | vkCmdSetStencilCompareMask - Set the stencil compare mask dynamic
-- state
--
-- Description
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_STENCIL_COMPARE_MASK set
-- in PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - faceMask must be a valid combination of
-- StencilFaceFlagBits values
-- - faceMask must not be 0
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, StencilFaceFlags
cmdSetStencilCompareMask :: forall io. MonadIO io => CommandBuffer -> ("faceMask" ::: StencilFaceFlags) -> ("compareMask" ::: Word32) -> io ()
-- | vkCmdSetStencilWriteMask - Set the stencil write mask dynamic state
--
-- Description
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_STENCIL_WRITE_MASK set
-- in PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - faceMask must be a valid combination of
-- StencilFaceFlagBits values
-- - faceMask must not be 0
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, StencilFaceFlags
cmdSetStencilWriteMask :: forall io. MonadIO io => CommandBuffer -> ("faceMask" ::: StencilFaceFlags) -> ("writeMask" ::: Word32) -> io ()
-- | vkCmdSetStencilReference - Set the stencil reference dynamic state
--
-- Description
--
-- This command sets the state for a given draw when the graphics
-- pipeline is created with DYNAMIC_STATE_STENCIL_REFERENCE set in
-- PipelineDynamicStateCreateInfo::pDynamicStates.
--
-- Valid Usage (Implicit)
--
--
--
--
-- - faceMask must be a valid combination of
-- StencilFaceFlagBits values
-- - faceMask must not be 0
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, StencilFaceFlags
cmdSetStencilReference :: forall io. MonadIO io => CommandBuffer -> ("faceMask" ::: StencilFaceFlags) -> ("reference" ::: Word32) -> io ()
-- | vkCmdBindDescriptorSets - Binds descriptor sets to a command buffer
--
-- Description
--
-- cmdBindDescriptorSets causes the sets numbered
-- [firstSet.. firstSet+descriptorSetCount-1]
-- to use the bindings stored in
-- pDescriptorSets[0..descriptorSetCount-1] for subsequent
-- rendering commands (either compute or graphics, according to the
-- pipelineBindPoint). Any bindings that were previously applied
-- via these sets are no longer valid.
--
-- Once bound, a descriptor set affects rendering of subsequent graphics
-- or compute commands in the command buffer until a different set is
-- bound to the same set number, or else until the set is disturbed as
-- described in Pipeline Layout Compatibility.
--
-- A compatible descriptor set must be bound for all set numbers
-- that any shaders in a pipeline access, at the time that a draw or
-- dispatch command is recorded to execute using that pipeline. However,
-- if none of the shaders in a pipeline statically use any bindings with
-- a particular set number, then no descriptor set need be bound for that
-- set number, even if the pipeline layout includes a non-trivial
-- descriptor set layout for that set number.
--
-- If any of the sets being bound include dynamic uniform or storage
-- buffers, then pDynamicOffsets includes one element for each
-- array element in each dynamic descriptor type binding in each set.
-- Values are taken from pDynamicOffsets in an order such that
-- all entries for set N come before set N+1; within a set, entries are
-- ordered by the binding numbers in the descriptor set layouts; and
-- within a binding array, elements are in order.
-- dynamicOffsetCount must equal the total number of
-- dynamic descriptors in the sets being bound.
--
-- The effective offset used for dynamic uniform and storage buffer
-- bindings is the sum of the relative offset taken from
-- pDynamicOffsets, and the base address of the buffer plus base
-- offset in the descriptor set. The range of the dynamic uniform and
-- storage buffer bindings is the buffer range as specified in the
-- descriptor set.
--
-- Each of the pDescriptorSets must be compatible with
-- the pipeline layout specified by layout. The layout used to
-- program the bindings must also be compatible with the pipeline
-- used in subsequent graphics or compute commands, as defined in the
-- Pipeline Layout Compatibility section.
--
-- The descriptor set contents bound by a call to
-- cmdBindDescriptorSets may be consumed at the following
-- times:
--
--
-- - For descriptor bindings created with the
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit set, the contents
-- may be consumed when the command buffer is submitted to a
-- queue, or during shader execution of the resulting draws and
-- dispatches, or any time in between. Otherwise,
-- - during host execution of the command, or during shader execution
-- of the resulting draws and dispatches, or any time in between.
--
--
-- Thus, the contents of a descriptor set binding must not be
-- altered (overwritten by an update command, or freed) between the first
-- point in time that it may be consumed, and when the command
-- completes executing on the queue.
--
-- The contents of pDynamicOffsets are consumed immediately
-- during execution of cmdBindDescriptorSets. Once all pending
-- uses have completed, it is legal to update and reuse a descriptor set.
--
-- Valid Usage
--
--
-- - Each element of pDescriptorSets must have been
-- allocated with a DescriptorSetLayout that matches (is the same
-- as, or identically defined as) the DescriptorSetLayout at set
-- n in layout, where n is the sum of
-- firstSet and the index into pDescriptorSets
--
--
--
-- - dynamicOffsetCount must be equal to the total
-- number of dynamic descriptors in pDescriptorSets
-- - The sum of firstSet and descriptorSetCount
-- must be less than or equal to
-- PipelineLayoutCreateInfo::setLayoutCount provided when
-- layout was created
-- - pipelineBindPoint must be supported by the
-- commandBuffer’s parent CommandPool’s queue family
-- - Each element of pDynamicOffsets which corresponds to a
-- descriptor binding with type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC must be a
-- multiple of
-- PhysicalDeviceLimits::minUniformBufferOffsetAlignment
-- - Each element of pDynamicOffsets which corresponds to a
-- descriptor binding with type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must be a
-- multiple of
-- PhysicalDeviceLimits::minStorageBufferOffsetAlignment
-- - For each dynamic uniform or storage buffer binding in
-- pDescriptorSets, the sum of the effective offset, as defined
-- above, and the range of the binding must be less than or equal
-- to the size of the buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - layout must be a valid PipelineLayout
-- handle
-- - pDescriptorSets must be a valid pointer to an
-- array of descriptorSetCount valid DescriptorSet
-- handles
-- - If dynamicOffsetCount is not 0,
-- pDynamicOffsets must be a valid pointer to an array of
-- dynamicOffsetCount uint32_t values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - descriptorSetCount must be greater than
-- 0
-- - Each of commandBuffer, layout, and the elements
-- of pDescriptorSets must have been created, allocated,
-- or retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, DescriptorSet, PipelineBindPoint,
-- PipelineLayout
cmdBindDescriptorSets :: forall io. MonadIO io => CommandBuffer -> PipelineBindPoint -> PipelineLayout -> ("firstSet" ::: Word32) -> ("descriptorSets" ::: Vector DescriptorSet) -> ("dynamicOffsets" ::: Vector Word32) -> io ()
-- | vkCmdBindIndexBuffer - Bind an index buffer to a command buffer
--
-- Valid Usage
--
--
-- - offset must be less than the size of
-- buffer
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - indexType must be a valid IndexType
-- value
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - Both of buffer, and commandBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize,
-- IndexType
cmdBindIndexBuffer :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> IndexType -> io ()
-- | vkCmdBindVertexBuffers - Bind vertex buffers to a command buffer
--
-- Description
--
-- The values taken from elements i of pBuffers and
-- pOffsets replace the current state for the vertex input
-- binding firstBinding + i, for i in [0,
-- bindingCount). The vertex input binding is updated to start
-- at the offset indicated by pOffsets[i] from the start of the
-- buffer pBuffers[i]. All vertex input attributes that use each
-- of these bindings will use these updated addresses in their address
-- calculations for subsequent draw commands. If the
-- nullDescriptor feature is enabled, elements of
-- pBuffers can be NULL_HANDLE, and can be
-- used by the vertex shader. If a vertex input attribute is bound to a
-- vertex input binding that is NULL_HANDLE, the values taken from
-- memory are considered to be zero, and missing G, B, or A components
-- are filled with (0,0,1).
--
-- Valid Usage
--
--
--
--
-- - The sum of firstBinding and bindingCount
-- must be less than or equal to
-- PhysicalDeviceLimits::maxVertexInputBindings
-- - All elements of pOffsets must be less than the
-- size of the corresponding element in pBuffers
-- - All elements of pBuffers must have been created
-- with the BUFFER_USAGE_VERTEX_BUFFER_BIT flag
-- - Each element of pBuffers that is non-sparse must
-- be bound completely and contiguously to a single DeviceMemory
-- object
-- - If the nullDescriptor feature is not enabled, all elements
-- of pBuffers must not be NULL_HANDLE
-- - If an element of pBuffers is NULL_HANDLE, then the
-- corresponding element of pOffsets must be zero
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pBuffers must be a valid pointer to an array of
-- bindingCount valid or NULL_HANDLE Buffer
-- handles
-- - pOffsets must be a valid pointer to an array of
-- bindingCount DeviceSize values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - bindingCount must be greater than 0
-- - Both of commandBuffer, and the elements of
-- pBuffers that are valid handles of non-ignored parameters
-- must have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdBindVertexBuffers :: forall io. MonadIO io => CommandBuffer -> ("firstBinding" ::: Word32) -> ("buffers" ::: Vector Buffer) -> ("offsets" ::: Vector DeviceSize) -> io ()
-- | vkCmdDraw - Draw primitives
--
-- Description
--
-- When the command is executed, primitives are assembled using the
-- current primitive topology and vertexCount consecutive vertex
-- indices with the first vertexIndex value equal to
-- firstVertex. The primitives are drawn instanceCount
-- times with instanceIndex starting with firstInstance
-- and increasing sequentially for each instance. The assembled
-- primitives execute the bound graphics pipeline.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - If commandBuffer is a protected command buffer, any
-- resource written to by the Pipeline object bound to the
-- pipeline bind point used by this command must not be an
-- unprotected resource
-- - If commandBuffer is a protected command buffer, pipeline
-- stages other than the framebuffer-space and compute stages in the
-- Pipeline object bound to the pipeline bind point must
-- not write to any resource
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdDraw :: forall io. MonadIO io => CommandBuffer -> ("vertexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstVertex" ::: Word32) -> ("firstInstance" ::: Word32) -> io ()
-- | vkCmdDrawIndexed - Issue an indexed draw into a command buffer
--
-- Description
--
-- When the command is executed, primitives are assembled using the
-- current primitive topology and indexCount vertices whose
-- indices are retrieved from the index buffer. The index buffer is
-- treated as an array of tightly packed unsigned integers of size
-- defined by the cmdBindIndexBuffer::indexType parameter
-- with which the buffer was bound.
--
-- The first vertex index is at an offset of firstIndex *
-- indexSize + offset within the bound index buffer,
-- where offset is the offset specified by
-- cmdBindIndexBuffer and indexSize is the byte size of
-- the type specified by indexType. Subsequent index values are
-- retrieved from consecutive locations in the index buffer. Indices are
-- first compared to the primitive restart value, then zero extended to
-- 32 bits (if the indexType is INDEX_TYPE_UINT8_EXT or
-- INDEX_TYPE_UINT16) and have vertexOffset added to
-- them, before being supplied as the vertexIndex value.
--
-- The primitives are drawn instanceCount times with
-- instanceIndex starting with firstInstance and
-- increasing sequentially for each instance. The assembled primitives
-- execute the bound graphics pipeline.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - If commandBuffer is a protected command buffer, any
-- resource written to by the Pipeline object bound to the
-- pipeline bind point used by this command must not be an
-- unprotected resource
-- - If commandBuffer is a protected command buffer, pipeline
-- stages other than the framebuffer-space and compute stages in the
-- Pipeline object bound to the pipeline bind point must
-- not write to any resource
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
-- - (indexSize * (firstIndex + indexCount)
-- + offset) must be less than or equal to the size of
-- the bound index buffer, with indexSize being based on the
-- type specified by indexType, where the index buffer,
-- indexType, and offset are specified via
-- cmdBindIndexBuffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdDrawIndexed :: forall io. MonadIO io => CommandBuffer -> ("indexCount" ::: Word32) -> ("instanceCount" ::: Word32) -> ("firstIndex" ::: Word32) -> ("vertexOffset" ::: Int32) -> ("firstInstance" ::: Word32) -> io ()
-- | vkCmdDrawIndirect - Issue an indirect draw into a command buffer
--
-- Description
--
-- cmdDrawIndirect behaves similarly to cmdDraw except that
-- the parameters are read by the device from a buffer during execution.
-- drawCount draws are executed by the command, with parameters
-- taken from buffer starting at offset and increasing
-- by stride bytes for each successive draw. The parameters of
-- each draw are encoded in an array of DrawIndirectCommand
-- structures. If drawCount is less than or equal to one,
-- stride is ignored.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - If the multi-draw indirect feature is not enabled,
-- drawCount must be 0 or 1
-- - drawCount must be less than or equal to
-- PhysicalDeviceLimits::maxDrawIndirectCount
-- - If the drawIndirectFirstInstance feature is not enabled,
-- all the firstInstance members of the
-- DrawIndirectCommand structures accessed by this command
-- must be 0
-- - If drawCount is greater than 1, stride
-- must be a multiple of 4 and must be greater
-- than or equal to sizeof(DrawIndirectCommand)
-- - If drawCount is equal to 1, (offset +
-- sizeof(DrawIndirectCommand)) must be less than
-- or equal to the size of buffer
-- - If drawCount is greater than 1, (stride
-- × (drawCount - 1) + offset +
-- sizeof(DrawIndirectCommand)) must be less than
-- or equal to the size of buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Both of buffer, and commandBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawIndirect :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
-- | vkCmdDrawIndexedIndirect - Perform an indexed indirect draw
--
-- Description
--
-- cmdDrawIndexedIndirect behaves similarly to
-- cmdDrawIndexed except that the parameters are read by the
-- device from a buffer during execution. drawCount draws are
-- executed by the command, with parameters taken from buffer
-- starting at offset and increasing by stride bytes
-- for each successive draw. The parameters of each draw are encoded in
-- an array of DrawIndexedIndirectCommand structures. If
-- drawCount is less than or equal to one, stride is
-- ignored.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - The current render pass must be compatible with the
-- renderPass member of the GraphicsPipelineCreateInfo
-- structure specified when creating the Pipeline bound to
-- PIPELINE_BIND_POINT_GRAPHICS
-- - The subpass index of the current render pass must be equal
-- to the subpass member of the
-- GraphicsPipelineCreateInfo structure specified when creating
-- the Pipeline bound to PIPELINE_BIND_POINT_GRAPHICS
-- - Every input attachment used by the current subpass must be
-- bound to the pipeline via a descriptor set
-- - Image subresources used as attachments in the current render pass
-- must not be accessed in any way other than as an attachment by
-- this command
-- - If the draw is recorded in a render pass instance with multiview
-- enabled, the maximum instance index must be less than or equal
-- to
-- PhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex
-- - If the bound graphics pipeline was created with
-- PipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable
-- set to TRUE and the current subpass has a depth/stencil
-- attachment, then that attachment must have been created with
-- the IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit
-- set
-- - All vertex input bindings accessed via vertex input variables
-- declared in the vertex shader entry point’s interface must have
-- either valid or NULL_HANDLE buffers bound
-- - If the nullDescriptor feature is not enabled, all vertex
-- input bindings accessed via vertex input variables declared in the
-- vertex shader entry point’s interface must not be
-- NULL_HANDLE
-- - For a given vertex buffer binding, any attribute data fetched
-- must be entirely contained within the corresponding vertex
-- buffer binding, as described in ???
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - If the multi-draw indirect feature is not enabled,
-- drawCount must be 0 or 1
-- - drawCount must be less than or equal to
-- PhysicalDeviceLimits::maxDrawIndirectCount
-- - If drawCount is greater than 1, stride
-- must be a multiple of 4 and must be greater
-- than or equal to
-- sizeof(DrawIndexedIndirectCommand)
-- - If the drawIndirectFirstInstance feature is not enabled,
-- all the firstInstance members of the
-- DrawIndexedIndirectCommand structures accessed by this command
-- must be 0
-- - If drawCount is equal to 1, (offset +
-- sizeof(DrawIndexedIndirectCommand)) must be
-- less than or equal to the size of buffer
-- - If drawCount is greater than 1, (stride
-- × (drawCount - 1) + offset +
-- sizeof(DrawIndexedIndirectCommand)) must be
-- less than or equal to the size of buffer
-- - If drawIndirectCount is not enabled this function
-- must not be used
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - Both of buffer, and commandBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDrawIndexedIndirect :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> ("drawCount" ::: Word32) -> ("stride" ::: Word32) -> io ()
-- | vkCmdDispatch - Dispatch compute work items
--
-- Description
--
-- When the command is executed, a global workgroup consisting of
-- groupCountX × groupCountY × groupCountZ
-- local workgroups is assembled.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - If commandBuffer is a protected command buffer, any
-- resource written to by the Pipeline object bound to the
-- pipeline bind point used by this command must not be an
-- unprotected resource
-- - If commandBuffer is a protected command buffer, pipeline
-- stages other than the framebuffer-space and compute stages in the
-- Pipeline object bound to the pipeline bind point must
-- not write to any resource
-- - groupCountX must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[0]
-- - groupCountY must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[1]
-- - groupCountZ must be less than or equal to
-- PhysicalDeviceLimits::maxComputeWorkGroupCount[2]
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdDispatch :: forall io. MonadIO io => CommandBuffer -> ("groupCountX" ::: Word32) -> ("groupCountY" ::: Word32) -> ("groupCountZ" ::: Word32) -> io ()
-- | vkCmdDispatchIndirect - Dispatch compute work items using indirect
-- parameters
--
-- Description
--
-- cmdDispatchIndirect behaves similarly to cmdDispatch
-- except that the parameters are read by the device from a buffer during
-- execution. The parameters of the dispatch are encoded in a
-- DispatchIndirectCommand structure taken from buffer
-- starting at offset.
--
-- Valid Usage
--
--
--
--
-- - If a ImageView is accessed using atomic operations as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
-- - If a ImageView is sampled with FILTER_CUBIC_EXT as a
-- result of this command, then the image view’s format features
-- must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - Any ImageView being sampled with FILTER_CUBIC_EXT as
-- a result of this command must have a ImageViewType and
-- format that supports cubic filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubic
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any ImageView being sampled with FILTER_CUBIC_EXT
-- with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN or
-- SAMPLER_REDUCTION_MODE_MAX as a result of this command
-- must have a ImageViewType and format that supports cubic
-- filtering together with minmax filtering, as specified by
-- FilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax
-- returned by getPhysicalDeviceImageFormatProperties2
-- - Any Image created with a
-- ImageCreateInfo::flags containing
-- IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this
-- command must only be sampled using a SamplerAddressMode
-- of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE
-- - For each set n that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a descriptor set must have been bound to n at the same
-- pipeline bind point, with a PipelineLayout that is compatible
-- for set n, with the PipelineLayout used to create the
-- current Pipeline, as described in ???
-- - For each push constant that is statically used by the
-- Pipeline bound to the pipeline bind point used by this command,
-- a push constant value must have been set for the same pipeline
-- bind point, with a PipelineLayout that is compatible for push
-- constants, with the PipelineLayout used to create the current
-- Pipeline, as described in ???
-- - Descriptors in each bound descriptor set, specified via
-- cmdBindDescriptorSets, must be valid if they are
-- statically used by the Pipeline bound to the pipeline bind
-- point used by this command
-- - A valid pipeline must be bound to the pipeline bind point
-- used by this command
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command requires any dynamic state, that state
-- must have been set for commandBuffer, and done so
-- after any previously bound pipeline with the corresponding state not
-- specified as dynamic
-- - There must not have been any calls to dynamic state setting
-- commands for any state not specified as dynamic in the Pipeline
-- object bound to the pipeline bind point used by this command, since
-- that pipeline was bound
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used to
-- sample from any Image with a ImageView of the type
-- IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE,
-- IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or
-- IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions with ImplicitLod,
-- Dref or Proj in their name, in any shader stage
-- - If the Pipeline object bound to the pipeline bind point
-- used by this command accesses a Sampler object that uses
-- unnormalized coordinates, that sampler must not be used with
-- any of the SPIR-V OpImageSample* or
-- OpImageSparseSample* instructions that includes a LOD bias or
-- any offset values, in any shader stage
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a uniform buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If the robust buffer access feature is not enabled, and if
-- the Pipeline object bound to the pipeline bind point used by
-- this command accesses a storage buffer, it must not access
-- values outside of the range of the buffer as specified in the
-- descriptor set bound to the same pipeline bind point
-- - If commandBuffer is an unprotected command buffer, any
-- resource accessed by the Pipeline object bound to the pipeline
-- bind point used by this command must not be a protected
-- resource
-- - If buffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - buffer must have been created with the
-- BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set
-- - offset must be a multiple of 4
-- - commandBuffer must not be a protected command
-- buffer
-- - The sum of offset and the size of
-- DispatchIndirectCommand must be less than or equal to
-- the size of buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - buffer must be a valid Buffer handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of buffer, and commandBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdDispatchIndirect :: forall io. MonadIO io => CommandBuffer -> Buffer -> ("offset" ::: DeviceSize) -> io ()
-- | vkCmdCopyBuffer - Copy data between buffer regions
--
-- Description
--
-- Each region in pRegions is copied from the source buffer to
-- the same region of the destination buffer. srcBuffer and
-- dstBuffer can be the same buffer or alias the same
-- memory, but the resulting values are undefined if the copy regions
-- overlap in memory.
--
-- Valid Usage
--
--
-- - The srcOffset member of each element of pRegions
-- must be less than the size of srcBuffer
--
--
--
-- - The dstOffset member of each element of pRegions
-- must be less than the size of dstBuffer
-- - The size member of each element of pRegions
-- must be less than or equal to the size of srcBuffer
-- minus srcOffset
-- - The size member of each element of pRegions
-- must be less than or equal to the size of dstBuffer
-- minus dstOffset
-- - The union of the source regions, and the union of the destination
-- regions, specified by the elements of pRegions, must
-- not overlap in memory
-- - srcBuffer must have been created with
-- BUFFER_USAGE_TRANSFER_SRC_BIT usage flag
-- - If srcBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - dstBuffer must have been created with
-- BUFFER_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - If commandBuffer is an unprotected command buffer, then
-- srcBuffer must not be a protected buffer
-- - If commandBuffer is an unprotected command buffer, then
-- dstBuffer must not be a protected buffer
-- - If commandBuffer is a protected command buffer, then
-- dstBuffer must not be an unprotected buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcBuffer must be a valid Buffer
-- handle
-- - dstBuffer must be a valid Buffer
-- handle
-- - pRegions must be a valid pointer to an array of
-- regionCount valid BufferCopy structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - This command must only be called outside of a render pass
-- instance
-- - regionCount must be greater than 0
-- - Each of commandBuffer, dstBuffer, and
-- srcBuffer must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, BufferCopy, CommandBuffer
cmdCopyBuffer :: forall io. MonadIO io => CommandBuffer -> ("srcBuffer" ::: Buffer) -> ("dstBuffer" ::: Buffer) -> ("regions" ::: Vector BufferCopy) -> io ()
-- | vkCmdCopyImage - Copy data between images
--
-- Description
--
-- Each region in pRegions is copied from the source image to
-- the same region of the destination image. srcImage and
-- dstImage can be the same image or alias the same
-- memory.
--
-- The formats of srcImage and dstImage must be
-- compatible. Formats are compatible if they share the same class, as
-- shown in the Compatible Formats table. Depth/stencil formats
-- must match exactly.
--
-- If the format of srcImage or dstImage is a
-- multi-planar image format, regions of each plane to be copied
-- must be specified separately using the srcSubresource
-- and dstSubresource members of the ImageCopy structure.
-- In this case, the aspectMask of the srcSubresource
-- or dstSubresource that refers to the multi-planar image
-- must be IMAGE_ASPECT_PLANE_0_BIT,
-- IMAGE_ASPECT_PLANE_1_BIT, or IMAGE_ASPECT_PLANE_2_BIT.
-- For the purposes of cmdCopyImage, each plane of a multi-planar
-- image is treated as having the format listed in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes
-- for the plane identified by the aspectMask of the
-- corresponding subresource. This applies both to Format and to
-- coordinates used in the copy, which correspond to texels in the
-- plane rather than how these texels map to coordinates in the
-- image as a whole.
--
-- Note
--
-- For example, the IMAGE_ASPECT_PLANE_1_BIT plane of a
-- FORMAT_G8_B8R8_2PLANE_420_UNORM image is compatible with an
-- image of format FORMAT_R8G8_UNORM and (less usefully) with the
-- IMAGE_ASPECT_PLANE_0_BIT plane of an image of format
-- FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16, as each
-- texel is 2 bytes in size.
--
-- cmdCopyImage allows copying between size-compatible
-- compressed and uncompressed internal formats. Formats are
-- size-compatible if the texel block size of the uncompressed format is
-- equal to the texel block size of the compressed format. Such a copy
-- does not perform on-the-fly compression or decompression. When copying
-- from an uncompressed format to a compressed format, each texel of
-- uncompressed data of the source image is copied as a raw value to the
-- corresponding compressed texel block of the destination image. When
-- copying from a compressed format to an uncompressed format, each
-- compressed texel block of the source image is copied as a raw value to
-- the corresponding texel of uncompressed data in the destination image.
-- Thus, for example, it is legal to copy between a 128-bit uncompressed
-- format and a compressed format which has a 128-bit sized compressed
-- texel block representing 4×4 texels (using 8 bits per texel), or
-- between a 64-bit uncompressed format and a compressed format which has
-- a 64-bit sized compressed texel block representing 4×4 texels (using 4
-- bits per texel).
--
-- When copying between compressed and uncompressed formats the
-- extent members represent the texel dimensions of the source
-- image and not the destination. When copying from a compressed image to
-- an uncompressed image the image texel dimensions written to the
-- uncompressed image will be source extent divided by the compressed
-- texel block dimensions. When copying from an uncompressed image to a
-- compressed image the image texel dimensions written to the compressed
-- image will be the source extent multiplied by the compressed texel
-- block dimensions. In both cases the number of bytes read and the
-- number of bytes written will be identical.
--
-- Copying to or from block-compressed images is typically done in
-- multiples of the compressed texel block size. For this reason the
-- extent must be a multiple of the compressed texel
-- block dimension. There is one exception to this rule which is
-- required to handle compressed images created with dimensions
-- that are not a multiple of the compressed texel block dimensions: if
-- the srcImage is compressed, then:
--
--
-- - If extent.width is not a multiple of the compressed texel
-- block width, then (extent.width + srcOffset.x)
-- must equal the image subresource width.
-- - If extent.height is not a multiple of the compressed
-- texel block height, then (extent.height +
-- srcOffset.y) must equal the image subresource
-- height.
-- - If extent.depth is not a multiple of the compressed texel
-- block depth, then (extent.depth + srcOffset.z)
-- must equal the image subresource depth.
--
--
-- Similarly, if the dstImage is compressed, then:
--
--
-- - If extent.width is not a multiple of the compressed texel
-- block width, then (extent.width + dstOffset.x)
-- must equal the image subresource width.
-- - If extent.height is not a multiple of the compressed
-- texel block height, then (extent.height +
-- dstOffset.y) must equal the image subresource
-- height.
-- - If extent.depth is not a multiple of the compressed texel
-- block depth, then (extent.depth + dstOffset.z)
-- must equal the image subresource depth.
--
--
-- This allows the last compressed texel block of the image in each
-- non-multiple dimension to be included as a source or destination of
-- the copy.
--
-- “_422” image formats that are not multi-planar are
-- treated as having a 2×1 compressed texel block for the purposes of
-- these rules.
--
-- cmdCopyImage can be used to copy image data between
-- multisample images, but both images must have the same number
-- of samples.
--
-- Valid Usage
--
--
-- - The union of all source regions, and the union of all destination
-- regions, specified by the elements of pRegions, must
-- not overlap in memory
--
--
--
-- - The format features of srcImage must
-- contain FORMAT_FEATURE_TRANSFER_SRC_BIT
-- - srcImage must have been created with
-- IMAGE_USAGE_TRANSFER_SRC_BIT usage flag
-- - If srcImage is non-sparse then the image or
-- disjoint plane to be copied must be bound completely and
-- contiguously to a single DeviceMemory object
-- - srcImageLayout must specify the layout of the
-- image subresources of srcImage specified in pRegions
-- at the time this command is executed on a Device
-- - srcImageLayout must be
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, IMAGE_LAYOUT_GENERAL,
-- or IMAGE_LAYOUT_SHARED_PRESENT_KHR
-- - The format features of dstImage must
-- contain FORMAT_FEATURE_TRANSFER_DST_BIT
-- - dstImage must have been created with
-- IMAGE_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstImage is non-sparse then the image or
-- disjoint plane that is the destination of the copy must
-- be bound completely and contiguously to a single DeviceMemory
-- object
-- - dstImageLayout must specify the layout of the
-- image subresources of dstImage specified in pRegions
-- at the time this command is executed on a Device
-- - dstImageLayout must be
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, IMAGE_LAYOUT_GENERAL,
-- or IMAGE_LAYOUT_SHARED_PRESENT_KHR
-- - If the Format of each of srcImage and
-- dstImage is not a multi-planar format, the
-- Format of each of srcImage and dstImage
-- must be compatible, as defined above
-- - In a copy to or from a plane of a multi-planar image, the
-- Format of the image and plane must be compatible
-- according to the description of compatible planes for the plane
-- being copied
-- - The sample count of srcImage and dstImage
-- must match
-- - If commandBuffer is an unprotected command buffer, then
-- srcImage must not be a protected image
-- - If commandBuffer is an unprotected command buffer, then
-- dstImage must not be a protected image
-- - If commandBuffer is a protected command buffer, then
-- dstImage must not be an unprotected image
-- - The srcSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when srcImage was
-- created
-- - The dstSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when dstImage was
-- created
-- - The srcSubresource.baseArrayLayer +
-- srcSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- srcImage was created
-- - The dstSubresource.baseArrayLayer +
-- dstSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- dstImage was created
-- - The srcOffset and extent members of each element
-- of pRegions must respect the image transfer
-- granularity requirements of commandBuffer’s command pool’s
-- queue family, as described in QueueFamilyProperties
-- - The dstOffset and extent members of each element
-- of pRegions must respect the image transfer
-- granularity requirements of commandBuffer’s command pool’s
-- queue family, as described in QueueFamilyProperties
-- - dstImage and srcImage must not have been
-- created with flags containing
-- IMAGE_CREATE_SUBSAMPLED_BIT_EXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcImage must be a valid Image handle
-- - srcImageLayout must be a valid ImageLayout
-- value
-- - dstImage must be a valid Image handle
-- - dstImageLayout must be a valid ImageLayout
-- value
-- - pRegions must be a valid pointer to an array of
-- regionCount valid ImageCopy structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - This command must only be called outside of a render pass
-- instance
-- - regionCount must be greater than 0
-- - Each of commandBuffer, dstImage, and
-- srcImage must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Image, ImageCopy,
-- ImageLayout
cmdCopyImage :: forall io. MonadIO io => CommandBuffer -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regions" ::: Vector ImageCopy) -> io ()
-- | vkCmdBlitImage - Copy regions of an image, potentially performing
-- format conversion,
--
-- Description
--
-- cmdBlitImage must not be used for multisampled source or
-- destination images. Use cmdResolveImage for this purpose.
--
-- As the sizes of the source and destination extents can differ
-- in any dimension, texels in the source extent are scaled and filtered
-- to the destination extent. Scaling occurs via the following
-- operations:
--
--
-- - For each destination texel, the integer coordinate of that texel
-- is converted to an unnormalized texture coordinate, using the
-- effective inverse of the equations described in unnormalized to
-- integer conversion:
- ubase = i + ½
- vbase = j +
-- ½
- wbase = k + ½
-- - These base coordinates are then offset by the first destination
-- offset:
- uoffset = ubase - xdst0
- voffset = vbase -
-- ydst0
- woffset = wbase - zdst0
- aoffset = a -
-- baseArrayCountdst
-- - The scale is determined from the source and destination regions,
-- and applied to the offset coordinates:
- scale_u = (xsrc1 -
-- xsrc0) / (xdst1 - xdst0)
- scale_v = (ysrc1 - ysrc0) / (ydst1 -
-- ydst0)
- scale_w = (zsrc1 - zsrc0) / (zdst1 -
-- zdst0)
- uscaled = uoffset * scaleu
- vscaled = voffset *
-- scalev
- wscaled = woffset * scalew
-- - Finally the source offset is added to the scaled coordinates, to
-- determine the final unnormalized coordinates used to sample from
-- srcImage:
- u = uscaled + xsrc0
- v = vscaled +
-- ysrc0
- w = wscaled + zsrc0
- q =
-- mipLevel
- a = aoffset +
-- baseArrayCountsrc
--
--
-- These coordinates are used to sample from the source image, as
-- described in Image Operations chapter, with the filter mode
-- equal to that of filter, a mipmap mode of
-- SAMPLER_MIPMAP_MODE_NEAREST and an address mode of
-- SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE. Implementations must
-- clamp at the edge of the source image, and may additionally
-- clamp to the edge of the source region.
--
-- Note
--
-- 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.
--
-- Blits are done layer by layer starting with the
-- baseArrayLayer member of srcSubresource for the
-- source and dstSubresource for the destination.
-- layerCount layers are blitted to the destination image.
--
-- 3D textures are blitted slice by slice. Slices in the source region
-- bounded by srcOffsets[0].z and srcOffsets[1].z are
-- copied to slices in the destination region bounded by
-- dstOffsets[0].z and dstOffsets[1].z. For each
-- destination slice, a source z coordinate is linearly
-- interpolated between srcOffsets[0].z and
-- srcOffsets[1].z. If the filter parameter is
-- FILTER_LINEAR then the value sampled from the source image is
-- taken by doing linear filtering using the interpolated z
-- coordinate. If filter parameter is FILTER_NEAREST then
-- the value sampled from the source image is taken from the single
-- nearest slice, with an implementation-dependent arithmetic rounding
-- mode.
--
-- The following filtering and conversion rules apply:
--
--
-- - Integer formats can only be converted to other integer
-- formats with the same signedness.
-- - No format conversion is supported between depth/stencil images.
-- The formats must match.
-- - Format conversions on unorm, snorm, unscaled and packed float
-- formats of the copied aspect of the image are performed by first
-- converting the pixels to float values.
-- - For sRGB source formats, nonlinear RGB values are converted to
-- linear representation prior to filtering.
-- - After filtering, the float values are first clamped and then cast
-- to the destination image format. In case of sRGB destination format,
-- linear RGB values are converted to nonlinear representation before
-- writing the pixel to the image.
--
--
-- Signed and unsigned integers are converted by first clamping to the
-- representable range of the destination format, then casting the value.
--
-- Valid Usage
--
--
-- - The source region specified by each element of pRegions
-- must be a region that is contained within
-- srcImage
--
--
--
-- - The destination region specified by each element of
-- pRegions must be a region that is contained within
-- dstImage
-- - The union of all destination regions, specified by the elements of
-- pRegions, must not overlap in memory with any texel
-- that may be sampled during the blit operation
-- - The format features of srcImage must
-- contain FORMAT_FEATURE_BLIT_SRC_BIT
-- - srcImage must not use a format listed in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-requiring-sampler-ycbcr-conversion
-- - srcImage must have been created with
-- IMAGE_USAGE_TRANSFER_SRC_BIT usage flag
-- - If srcImage is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - srcImageLayout must specify the layout of the
-- image subresources of srcImage specified in pRegions
-- at the time this command is executed on a Device
-- - srcImageLayout must be
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR,
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL or
-- IMAGE_LAYOUT_GENERAL
-- - The format features of dstImage must
-- contain FORMAT_FEATURE_BLIT_DST_BIT
-- - dstImage must not use a format listed in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-requiring-sampler-ycbcr-conversion
-- - dstImage must have been created with
-- IMAGE_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstImage is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - dstImageLayout must specify the layout of the
-- image subresources of dstImage specified in pRegions
-- at the time this command is executed on a Device
-- - dstImageLayout must be
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR,
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL or
-- IMAGE_LAYOUT_GENERAL
-- - If either of srcImage or dstImage was created
-- with a signed integer Format, the other must also have
-- been created with a signed integer Format
-- - If either of srcImage or dstImage was created
-- with an unsigned integer Format, the other must also
-- have been created with an unsigned integer Format
-- - If either of srcImage or dstImage was created
-- with a depth/stencil format, the other must have exactly the
-- same format
-- - If srcImage was created with a depth/stencil format,
-- filter must be FILTER_NEAREST
-- - srcImage must have been created with a
-- samples value of SAMPLE_COUNT_1_BIT
-- - dstImage must have been created with a
-- samples value of SAMPLE_COUNT_1_BIT
-- - If filter is FILTER_LINEAR, then the format
-- features of srcImage must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
-- - If filter is FILTER_CUBIC_EXT, then the format
-- features of srcImage must contain
-- FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
-- - If filter is FILTER_CUBIC_EXT, srcImage
-- must have a ImageType of IMAGE_TYPE_2D
-- - If commandBuffer is an unprotected command buffer, then
-- srcImage must not be a protected image
-- - If commandBuffer is an unprotected command buffer, then
-- dstImage must not be a protected image
-- - If commandBuffer is a protected command buffer, then
-- dstImage must not be an unprotected image
-- - The srcSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when srcImage was
-- created
-- - The dstSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when dstImage was
-- created
-- - The srcSubresource.baseArrayLayer +
-- srcSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- srcImage was created
-- - The dstSubresource.baseArrayLayer +
-- dstSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- dstImage was created
-- - dstImage and srcImage must not have been
-- created with flags containing
-- IMAGE_CREATE_SUBSAMPLED_BIT_EXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcImage must be a valid Image handle
-- - srcImageLayout must be a valid ImageLayout
-- value
-- - dstImage must be a valid Image handle
-- - dstImageLayout must be a valid ImageLayout
-- value
-- - pRegions must be a valid pointer to an array of
-- regionCount valid ImageBlit structures
-- - filter must be a valid Filter value
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called outside of a render pass
-- instance
-- - regionCount must be greater than 0
-- - Each of commandBuffer, dstImage, and
-- srcImage must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Filter, Image, ImageBlit,
-- ImageLayout
cmdBlitImage :: forall io. MonadIO io => CommandBuffer -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regions" ::: Vector ImageBlit) -> Filter -> io ()
-- | vkCmdCopyBufferToImage - Copy data from a buffer into an image
--
-- Description
--
-- Each region in pRegions is copied from the specified region
-- of the source buffer to the specified region of the destination image.
--
-- If the format of dstImage is a multi-planar image
-- format), regions of each plane to be a target of a copy
-- must be specified separately using the pRegions member
-- of the BufferImageCopy structure. In this case, the
-- aspectMask of imageSubresource must be
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT. For the purposes of
-- cmdCopyBufferToImage, each plane of a multi-planar image is
-- treated as having the format listed in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes
-- for the plane identified by the aspectMask of the
-- corresponding subresource. This applies both to Format and to
-- coordinates used in the copy, which correspond to texels in the
-- plane rather than how these texels map to coordinates in the
-- image as a whole.
--
-- Valid Usage
--
--
-- - srcBuffer must be large enough to contain all
-- buffer locations that are accessed according to Buffer and Image
-- Addressing, for each element of pRegions
--
--
--
-- - The image region specified by each element of pRegions
-- must be a region that is contained within dstImage if
-- the dstImage’s Format is not a multi-planar
-- format, and must be a region that is contained within the
-- plane being copied to if the dstImage’s Format is a
-- multi-planar format
-- - The union of all source regions, and the union of all destination
-- regions, specified by the elements of pRegions, must
-- not overlap in memory
-- - srcBuffer must have been created with
-- BUFFER_USAGE_TRANSFER_SRC_BIT usage flag
-- - The format features of dstImage must
-- contain FORMAT_FEATURE_TRANSFER_DST_BIT
-- - If srcBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - dstImage must have been created with
-- IMAGE_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstImage is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - dstImage must have a sample count equal to
-- SAMPLE_COUNT_1_BIT
-- - dstImageLayout must specify the layout of the
-- image subresources of dstImage specified in pRegions
-- at the time this command is executed on a Device
-- - dstImageLayout must be
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, IMAGE_LAYOUT_GENERAL,
-- or IMAGE_LAYOUT_SHARED_PRESENT_KHR
-- - If commandBuffer is an unprotected command buffer, then
-- srcBuffer must not be a protected buffer
-- - If commandBuffer is an unprotected command buffer, then
-- dstImage must not be a protected image
-- - If commandBuffer is a protected command buffer, then
-- dstImage must not be an unprotected image
-- - The imageSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when dstImage was
-- created
-- - The imageSubresource.baseArrayLayer +
-- imageSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- dstImage was created
-- - The imageOffset and imageExtent members of each
-- element of pRegions must respect the image transfer
-- granularity requirements of commandBuffer’s command pool’s
-- queue family, as described in QueueFamilyProperties
-- - dstImage must not have been created with
-- flags containing IMAGE_CREATE_SUBSAMPLED_BIT_EXT
-- - If the queue family used to create the CommandPool which
-- commandBuffer was allocated from does not support
-- QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT, the
-- bufferOffset member of any element of pRegions
-- must be a multiple of 4
-- - If dstImage has a depth/stencil format, the
-- bufferOffset member of any element of pRegions
-- must be a multiple of 4
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcBuffer must be a valid Buffer
-- handle
-- - dstImage must be a valid Image handle
-- - dstImageLayout must be a valid ImageLayout
-- value
-- - pRegions must be a valid pointer to an array of
-- regionCount valid BufferImageCopy structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - This command must only be called outside of a render pass
-- instance
-- - regionCount must be greater than 0
-- - Each of commandBuffer, dstImage, and
-- srcBuffer must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, BufferImageCopy, CommandBuffer,
-- Image, ImageLayout
cmdCopyBufferToImage :: forall io. MonadIO io => CommandBuffer -> ("srcBuffer" ::: Buffer) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regions" ::: Vector BufferImageCopy) -> io ()
-- | vkCmdCopyImageToBuffer - Copy image data into a buffer
--
-- Description
--
-- Each region in pRegions is copied from the specified region
-- of the source image to the specified region of the destination buffer.
--
-- If the Format of srcImage is a multi-planar image
-- format, regions of each plane to be a source of a copy must
-- be specified separately using the pRegions member of the
-- BufferImageCopy structure. In this case, the
-- aspectMask of imageSubresource must be
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT. For the purposes of
-- cmdCopyBufferToImage, each plane of a multi-planar image is
-- treated as having the format listed in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes
-- for the plane identified by the aspectMask of the
-- corresponding subresource. This applies both to Format and to
-- coordinates used in the copy, which correspond to texels in the
-- plane rather than how these texels map to coordinates in the
-- image as a whole.
--
-- Valid Usage
--
--
-- - The image region specified by each element of pRegions
-- must be a region that is contained within srcImage if
-- the srcImage’s Format is not a multi-planar
-- format, and must be a region that is contained within the
-- plane being copied if the srcImage’s Format is a
-- multi-planar format
--
--
--
-- - dstBuffer must be large enough to contain all
-- buffer locations that are accessed according to Buffer and Image
-- Addressing, for each element of pRegions
-- - The union of all source regions, and the union of all destination
-- regions, specified by the elements of pRegions, must
-- not overlap in memory
-- - The format features of srcImage must
-- contain FORMAT_FEATURE_TRANSFER_SRC_BIT
-- - srcImage must have been created with
-- IMAGE_USAGE_TRANSFER_SRC_BIT usage flag
-- - If srcImage is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - srcImage must have a sample count equal to
-- SAMPLE_COUNT_1_BIT
-- - srcImageLayout must specify the layout of the
-- image subresources of srcImage specified in pRegions
-- at the time this command is executed on a Device
-- - srcImageLayout must be
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR,
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL or
-- IMAGE_LAYOUT_GENERAL
-- - dstBuffer must have been created with
-- BUFFER_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - If commandBuffer is an unprotected command buffer, then
-- srcImage must not be a protected image
-- - If commandBuffer is an unprotected command buffer, then
-- dstBuffer must not be a protected buffer
-- - If commandBuffer is a protected command buffer, then
-- dstBuffer must not be an unprotected buffer
-- - The imageSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when srcImage was
-- created
-- - The imageSubresource.baseArrayLayer +
-- imageSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- srcImage was created
-- - The imageOffset and imageExtent members of each
-- element of pRegions must respect the image transfer
-- granularity requirements of commandBuffer’s command pool’s
-- queue family, as described in QueueFamilyProperties
-- - srcImage must not have been created with
-- flags containing IMAGE_CREATE_SUBSAMPLED_BIT_EXT
-- - If the queue family used to create the CommandPool which
-- commandBuffer was allocated from does not support
-- QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT, the
-- bufferOffset member of any element of pRegions
-- must be a multiple of 4
-- - If srcImage has a depth/stencil format, the
-- bufferOffset member of any element of pRegions
-- must be a multiple of 4
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcImage must be a valid Image handle
-- - srcImageLayout must be a valid ImageLayout
-- value
-- - dstBuffer must be a valid Buffer
-- handle
-- - pRegions must be a valid pointer to an array of
-- regionCount valid BufferImageCopy structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - This command must only be called outside of a render pass
-- instance
-- - regionCount must be greater than 0
-- - Each of commandBuffer, dstBuffer, and
-- srcImage must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, BufferImageCopy, CommandBuffer,
-- Image, ImageLayout
cmdCopyImageToBuffer :: forall io. MonadIO io => CommandBuffer -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstBuffer" ::: Buffer) -> ("regions" ::: Vector BufferImageCopy) -> io ()
-- | vkCmdUpdateBuffer - Update a buffer’s contents from host memory
--
-- Description
--
-- dataSize must be less than or equal to 65536 bytes.
-- For larger updates, applications can use buffer to buffer
-- copies.
--
-- Note
--
-- Buffer updates performed with cmdUpdateBuffer first copy the
-- data into command buffer memory when the command is recorded (which
-- requires additional storage and may incur an additional allocation),
-- and then copy the data from the command buffer into dstBuffer
-- when the command is executed on a device.
--
-- The additional cost of this functionality compared to buffer to
-- buffer copies means it is only recommended for very small amounts
-- of data, and is why it is limited to only 65536 bytes.
--
-- Applications can work around this by issuing multiple
-- cmdUpdateBuffer commands to different ranges of the same
-- buffer, but it is strongly recommended that they should not.
--
-- The source data is copied from the user pointer to the command buffer
-- when the command is called.
--
-- cmdUpdateBuffer is only allowed outside of a render pass. This
-- command is treated as “transfer” operation, for the purposes of
-- synchronization barriers. The BUFFER_USAGE_TRANSFER_DST_BIT
-- must be specified in usage of BufferCreateInfo
-- in order for the buffer to be compatible with cmdUpdateBuffer.
--
-- Valid Usage
--
--
-- - dstOffset must be less than the size of
-- dstBuffer
--
--
--
-- - dataSize must be less than or equal to the size of
-- dstBuffer minus dstOffset
-- - dstBuffer must have been created with
-- BUFFER_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - dstOffset must be a multiple of 4
-- - dataSize must be less than or equal to
-- 65536
-- - dataSize must be a multiple of 4
-- - If commandBuffer is an unprotected command buffer, then
-- dstBuffer must not be a protected buffer
-- - If commandBuffer is a protected command buffer, then
-- dstBuffer must not be an unprotected buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - dstBuffer must be a valid Buffer
-- handle
-- - pData must be a valid pointer to an array of
-- dataSize bytes
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - This command must only be called outside of a render pass
-- instance
-- - dataSize must be greater than 0
-- - Both of commandBuffer, and dstBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdUpdateBuffer :: forall io. MonadIO io => CommandBuffer -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("dataSize" ::: DeviceSize) -> ("data" ::: Ptr ()) -> io ()
-- | vkCmdFillBuffer - Fill a region of a buffer with a fixed value
--
-- Description
--
-- cmdFillBuffer is treated as “transfer” operation for the
-- purposes of synchronization barriers. The
-- BUFFER_USAGE_TRANSFER_DST_BIT must be specified in
-- usage of BufferCreateInfo in order for the buffer to
-- be compatible with cmdFillBuffer.
--
-- Valid Usage
--
--
-- - dstOffset must be less than the size of
-- dstBuffer
--
--
--
-- - dstOffset must be a multiple of 4
-- - If size is not equal to WHOLE_SIZE, size
-- must be greater than 0
-- - If size is not equal to WHOLE_SIZE, size
-- must be less than or equal to the size of dstBuffer
-- minus dstOffset
-- - If size is not equal to WHOLE_SIZE, size
-- must be a multiple of 4
-- - dstBuffer must have been created with
-- BUFFER_USAGE_TRANSFER_DST_BIT usage flag
-- - If dstBuffer is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - If commandBuffer is an unprotected command buffer, then
-- dstBuffer must not be a protected buffer
-- - If commandBuffer is a protected command buffer, then
-- dstBuffer must not be an unprotected buffer
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - dstBuffer must be a valid Buffer
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics or compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of commandBuffer, and dstBuffer must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize
cmdFillBuffer :: forall io. MonadIO io => CommandBuffer -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> DeviceSize -> ("data" ::: Word32) -> io ()
-- | vkCmdClearColorImage - Clear regions of a color image
--
-- Description
--
-- Each specified range in pRanges is cleared to the value
-- specified by pColor.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - image must be a valid Image handle
-- - imageLayout must be a valid ImageLayout
-- value
-- - pColor must be a valid pointer to a valid
-- ClearColorValue union
-- - pRanges must be a valid pointer to an array of
-- rangeCount valid ImageSubresourceRange structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - rangeCount must be greater than 0
-- - Both of commandBuffer, and image must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- ClearColorValue, CommandBuffer, Image,
-- ImageLayout, ImageSubresourceRange
cmdClearColorImage :: forall io. MonadIO io => CommandBuffer -> Image -> ImageLayout -> ClearColorValue -> ("ranges" ::: Vector ImageSubresourceRange) -> io ()
-- | vkCmdClearDepthStencilImage - Fill regions of a combined depth/stencil
-- image
--
-- Valid Usage
--
--
--
--
-- - If the aspect member of any element of pRanges
-- includes IMAGE_ASPECT_STENCIL_BIT, and image was
-- created with separate stencil usage,
-- IMAGE_USAGE_TRANSFER_DST_BIT must have been included in
-- the ImageStencilUsageCreateInfo::stencilUsage used to
-- create image
-- - If the aspect member of any element of pRanges
-- includes IMAGE_ASPECT_STENCIL_BIT, and image was not
-- created with separate stencil usage,
-- IMAGE_USAGE_TRANSFER_DST_BIT must have been included in
-- the ImageCreateInfo::usage used to create
-- image
-- - If the aspect member of any element of pRanges
-- includes IMAGE_ASPECT_DEPTH_BIT,
-- IMAGE_USAGE_TRANSFER_DST_BIT must have been included in
-- the ImageCreateInfo::usage used to create
-- image
-- - If image is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - imageLayout must specify the layout of the image
-- subresource ranges of image specified in pRanges at
-- the time this command is executed on a Device
-- - imageLayout must be either of
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL or
-- IMAGE_LAYOUT_GENERAL
-- - The ImageSubresourceRange::aspectMask member of
-- each element of the pRanges array must not include
-- bits other than IMAGE_ASPECT_DEPTH_BIT or
-- IMAGE_ASPECT_STENCIL_BIT
-- - If the image’s format does not have a stencil component,
-- then the ImageSubresourceRange::aspectMask member of
-- each element of the pRanges array must not include the
-- IMAGE_ASPECT_STENCIL_BIT bit
-- - If the image’s format does not have a depth component,
-- then the ImageSubresourceRange::aspectMask member of
-- each element of the pRanges array must not include the
-- IMAGE_ASPECT_DEPTH_BIT bit
-- - The ImageSubresourceRange::baseMipLevel members of
-- the elements of the pRanges array must each be less
-- than the mipLevels specified in ImageCreateInfo when
-- image was created
-- - For each ImageSubresourceRange element of pRanges,
-- if the levelCount member is not REMAINING_MIP_LEVELS,
-- then baseMipLevel + levelCount must be less
-- than the mipLevels specified in ImageCreateInfo when
-- image was created
-- - The ImageSubresourceRange::baseArrayLayer members
-- of the elements of the pRanges array must each be less
-- than the arrayLayers specified in ImageCreateInfo when
-- image was created
-- - For each ImageSubresourceRange element of pRanges,
-- if the layerCount member is not
-- REMAINING_ARRAY_LAYERS, then baseArrayLayer +
-- layerCount must be less than the arrayLayers
-- specified in ImageCreateInfo when image was
-- created
-- - image must have a depth/stencil format
-- - If commandBuffer is an unprotected command buffer, then
-- image must not be a protected image
-- - If commandBuffer is a protected command buffer, then
-- image must not be an unprotected image
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - image must be a valid Image handle
-- - imageLayout must be a valid ImageLayout
-- value
-- - pDepthStencil must be a valid pointer to a valid
-- ClearDepthStencilValue structure
-- - pRanges must be a valid pointer to an array of
-- rangeCount valid ImageSubresourceRange structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called outside of a render pass
-- instance
-- - rangeCount must be greater than 0
-- - Both of commandBuffer, and image must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- ClearDepthStencilValue, CommandBuffer, Image,
-- ImageLayout, ImageSubresourceRange
cmdClearDepthStencilImage :: forall io. MonadIO io => CommandBuffer -> Image -> ImageLayout -> ClearDepthStencilValue -> ("ranges" ::: Vector ImageSubresourceRange) -> io ()
-- | vkCmdClearAttachments - Clear regions within bound framebuffer
-- attachments
--
-- Description
--
-- cmdClearAttachments can clear multiple regions of each
-- attachment used in the current subpass of a render pass instance. This
-- command must be called only inside a render pass instance, and
-- implicitly selects the images to clear based on the current
-- framebuffer attachments and the command parameters.
--
-- If the render pass has a fragment density map attachment,
-- clears follow the operations of fragment density maps as if
-- each clear region was a primitive which generates fragments. The clear
-- color is applied to all pixels inside each fragment’s area regardless
-- if the pixels lie outside of the clear region. Clears may have
-- a different set of supported fragment areas than draws.
--
-- Unlike other clear commands, cmdClearAttachments
-- executes as a drawing command, rather than a transfer command, with
-- writes performed by it executing in rasterization order. Clears
-- to color attachments are executed as color attachment writes, by the
-- PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT stage. Clears to
-- depth/stencil attachments are executed as depth writes and
-- writes by the PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT
-- and PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT stages.
--
-- Valid Usage
--
--
-- - If the aspectMask member of any element of
-- pAttachments contains IMAGE_ASPECT_COLOR_BIT, then the
-- colorAttachment member of that element must either
-- refer to a color attachment which is ATTACHMENT_UNUSED, or
-- must be a valid color attachment
--
--
--
-- - If the aspectMask member of any element of
-- pAttachments contains IMAGE_ASPECT_DEPTH_BIT, then the
-- current subpass' depth/stencil attachment must either be
-- ATTACHMENT_UNUSED, or must have a depth component
-- - If the aspectMask member of any element of
-- pAttachments contains IMAGE_ASPECT_STENCIL_BIT, then
-- the current subpass' depth/stencil attachment must either be
-- ATTACHMENT_UNUSED, or must have a stencil component
-- - The rect member of each element of pRects
-- must have an extent.width greater than 0
-- - The rect member of each element of pRects
-- must have an extent.height greater than
-- 0
-- - The rectangular region specified by each element of
-- pRects must be contained within the render area of the
-- current render pass instance
-- - The layers specified by each element of pRects
-- must be contained within every attachment that
-- pAttachments refers to
-- - The layerCount member of each element of pRects
-- must not be 0
-- - If commandBuffer is an unprotected command buffer, then
-- each attachment to be cleared must not be a protected
-- image
-- - If commandBuffer is a protected command buffer, then each
-- attachment to be cleared must not be an unprotected image
-- - If the render pass instance this is recorded in uses multiview,
-- then baseArrayLayer must be zero and
-- layerCount must be one
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pAttachments must be a valid pointer to an array
-- of attachmentCount valid ClearAttachment
-- structures
-- - pRects must be a valid pointer to an array of
-- rectCount ClearRect structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - attachmentCount must be greater than
-- 0
-- - rectCount must be greater than 0
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- ClearAttachment, ClearRect, CommandBuffer
cmdClearAttachments :: forall io. MonadIO io => CommandBuffer -> ("attachments" ::: Vector ClearAttachment) -> ("rects" ::: Vector ClearRect) -> io ()
-- | vkCmdResolveImage - Resolve regions of an image
--
-- Description
--
-- During the resolve the samples corresponding to each pixel location in
-- the source are converted to a single sample before being written to
-- the destination. If the source formats are floating-point or
-- normalized types, the sample values for each pixel are resolved in an
-- implementation-dependent manner. If the source formats are integer
-- types, a single sample’s value is selected for each pixel.
--
-- srcOffset and dstOffset select the initial
-- x, y, and z offsets in texels of the
-- sub-regions of the source and destination image data. extent
-- is the size in texels of the source image to resolve in
-- width, height and depth.
--
-- Resolves are done layer by layer starting with baseArrayLayer
-- member of srcSubresource for the source and
-- dstSubresource for the destination. layerCount
-- layers are resolved to the destination image.
--
-- Valid Usage
--
--
-- - The source region specified by each element of pRegions
-- must be a region that is contained within
-- srcImage
--
--
--
-- - The destination region specified by each element of
-- pRegions must be a region that is contained within
-- dstImage
-- - The union of all source regions, and the union of all destination
-- regions, specified by the elements of pRegions, must
-- not overlap in memory
-- - If srcImage is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - srcImage must have a sample count equal to any
-- valid sample count value other than SAMPLE_COUNT_1_BIT
-- - If dstImage is non-sparse then it must be bound
-- completely and contiguously to a single DeviceMemory
-- object
-- - dstImage must have a sample count equal to
-- SAMPLE_COUNT_1_BIT
-- - srcImageLayout must specify the layout of the
-- image subresources of srcImage specified in pRegions
-- at the time this command is executed on a Device
-- - srcImageLayout must be
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR,
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL or
-- IMAGE_LAYOUT_GENERAL
-- - dstImageLayout must specify the layout of the
-- image subresources of dstImage specified in pRegions
-- at the time this command is executed on a Device
-- - dstImageLayout must be
-- IMAGE_LAYOUT_SHARED_PRESENT_KHR,
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL or
-- IMAGE_LAYOUT_GENERAL
-- - The format features of dstImage must
-- contain FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
-- - srcImage and dstImage must have been
-- created with the same image format
-- - If commandBuffer is an unprotected command buffer, then
-- srcImage must not be a protected image
-- - If commandBuffer is an unprotected command buffer, then
-- dstImage must not be a protected image
-- - If commandBuffer is a protected command buffer, then
-- dstImage must not be an unprotected image
-- - The srcSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when srcImage was
-- created
-- - The dstSubresource.mipLevel member of each element of
-- pRegions must be less than the mipLevels
-- specified in ImageCreateInfo when dstImage was
-- created
-- - The srcSubresource.baseArrayLayer +
-- srcSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- srcImage was created
-- - The dstSubresource.baseArrayLayer +
-- dstSubresource.layerCount of each element of
-- pRegions must be less than or equal to the
-- arrayLayers specified in ImageCreateInfo when
-- dstImage was created
-- - dstImage and srcImage must not have been
-- created with flags containing
-- IMAGE_CREATE_SUBSAMPLED_BIT_EXT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcImage must be a valid Image handle
-- - srcImageLayout must be a valid ImageLayout
-- value
-- - dstImage must be a valid Image handle
-- - dstImageLayout must be a valid ImageLayout
-- value
-- - pRegions must be a valid pointer to an array of
-- regionCount valid ImageResolve structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called outside of a render pass
-- instance
-- - regionCount must be greater than 0
-- - Each of commandBuffer, dstImage, and
-- srcImage must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Image, ImageLayout,
-- ImageResolve
cmdResolveImage :: forall io. MonadIO io => CommandBuffer -> ("srcImage" ::: Image) -> ("srcImageLayout" ::: ImageLayout) -> ("dstImage" ::: Image) -> ("dstImageLayout" ::: ImageLayout) -> ("regions" ::: Vector ImageResolve) -> io ()
-- | vkCmdSetEvent - Set an event object to signaled state
--
-- Description
--
-- When cmdSetEvent is submitted to a queue, it defines an
-- execution dependency on commands that were submitted before it, and
-- defines an event signal operation which sets the event to the signaled
-- state.
--
-- The first synchronization scope includes all commands that
-- occur earlier in submission order. The synchronization scope is
-- limited to operations on the pipeline stages determined by the
-- source stage mask specified by stageMask.
--
-- The second synchronization scope includes only the event signal
-- operation.
--
-- If event is already in the signaled state when
-- cmdSetEvent is executed on the device, then cmdSetEvent
-- has no effect, no event signal operation occurs, and no execution
-- dependency is generated.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - event must be a valid Event handle
-- - stageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - stageMask must not be 0
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of commandBuffer, and event must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Event, PipelineStageFlags
cmdSetEvent :: forall io. MonadIO io => CommandBuffer -> Event -> ("stageMask" ::: PipelineStageFlags) -> io ()
-- | vkCmdResetEvent - Reset an event object to non-signaled state
--
-- Description
--
-- When cmdResetEvent is submitted to a queue, it defines an
-- execution dependency on commands that were submitted before it, and
-- defines an event unsignal operation which resets the event to the
-- unsignaled state.
--
-- The first synchronization scope includes all commands that
-- occur earlier in submission order. The synchronization scope is
-- limited to operations on the pipeline stages determined by the
-- source stage mask specified by stageMask.
--
-- The second synchronization scope includes only the event
-- unsignal operation.
--
-- If event is already in the unsignaled state when
-- cmdResetEvent is executed on the device, then
-- cmdResetEvent has no effect, no event unsignal operation
-- occurs, and no execution dependency is generated.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - event must be a valid Event handle
-- - stageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - stageMask must not be 0
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of commandBuffer, and event must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, Event, PipelineStageFlags
cmdResetEvent :: forall io. MonadIO io => CommandBuffer -> Event -> ("stageMask" ::: PipelineStageFlags) -> io ()
-- | vkCmdWaitEvents - Wait for one or more events and insert a set of
-- memory
--
-- Description
--
-- When cmdWaitEvents is submitted to a queue, it defines a memory
-- dependency between prior event signal operations on the same queue or
-- the host, and subsequent commands. cmdWaitEvents must
-- not be used to wait on event signal operations occurring on other
-- queues.
--
-- The first synchronization scope only includes event signal operations
-- that operate on members of pEvents, and the operations that
-- happened-before the event signal operations. Event signal operations
-- performed by cmdSetEvent that occur earlier in submission
-- order are included in the first synchronization scope, if the
-- logically latest pipeline stage in their stageMask
-- parameter is logically earlier than or equal to the
-- logically latest pipeline stage in srcStageMask. Event
-- signal operations performed by setEvent are only included in
-- the first synchronization scope if PIPELINE_STAGE_HOST_BIT is
-- included in srcStageMask.
--
-- The second synchronization scope includes all commands that
-- occur later in submission order. The second synchronization
-- scope is limited to operations on the pipeline stages determined by
-- the destination stage mask specified by dstStageMask.
--
-- The first access scope is limited to access in the pipeline
-- stages determined by the source stage mask specified by
-- srcStageMask. Within that, the first access scope only
-- includes the first access scopes defined by elements of the
-- pMemoryBarriers, pBufferMemoryBarriers and
-- pImageMemoryBarriers arrays, which each define a set of
-- memory barriers. If no memory barriers are specified, then the
-- first access scope includes no accesses.
--
-- The second access scope is limited to access in the pipeline
-- stages determined by the destination stage mask specified by
-- dstStageMask. Within that, the second access scope only
-- includes the second access scopes defined by elements of the
-- pMemoryBarriers, pBufferMemoryBarriers and
-- pImageMemoryBarriers arrays, which each define a set of
-- memory barriers. If no memory barriers are specified, then the
-- second access scope includes no accesses.
--
-- Note
--
-- cmdWaitEvents is used with cmdSetEvent to define a
-- memory dependency between two sets of action commands, roughly in the
-- same way as pipeline barriers, but split into two commands such that
-- work between the two may execute unhindered.
--
-- Unlike cmdPipelineBarrier, a queue family ownership
-- transfer cannot be performed using cmdWaitEvents.
--
-- Note
--
-- Applications should be careful to avoid race conditions when
-- using events. There is no direct ordering guarantee between a
-- cmdResetEvent command and a cmdWaitEvents command
-- submitted after it, so some other execution dependency must be
-- included between these commands (e.g. a semaphore).
--
-- Valid Usage
--
--
-- - The srcAccessMask member of each element of
-- pMemoryBarriers must only include access flags that
-- are supported by one or more of the pipeline stages in
-- srcStageMask, as specified in the table of supported
-- access types
--
--
--
-- - The dstAccessMask member of each element of
-- pMemoryBarriers must only include access flags that
-- are supported by one or more of the pipeline stages in
-- dstStageMask, as specified in the table of supported
-- access types
-- - For any element of pBufferMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its srcQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- srcAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- srcStageMask, as specified in the table of supported
-- access types
-- - For any element of pBufferMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its dstQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- dstAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- dstStageMask, as specified in the table of supported
-- access types
-- - For any element of pImageMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its srcQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- srcAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- srcStageMask, as specified in the table of supported
-- access types
-- - For any element of pImageMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its dstQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- dstAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- dstStageMask, as specified in the table of supported
-- access types
-- - srcStageMask must be the bitwise OR of the
-- stageMask parameter used in previous calls to
-- cmdSetEvent with any of the members of pEvents and
-- PIPELINE_STAGE_HOST_BIT if any of the members of
-- pEvents was set using setEvent
-- - If the geometry shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT
-- - If the geometry shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - If pEvents includes one or more events that will be
-- signaled by setEvent after commandBuffer has been
-- submitted to a queue, then cmdWaitEvents must not be
-- called inside a render pass instance
-- - Any pipeline stage included in srcStageMask or
-- dstStageMask must be supported by the capabilities of
-- the queue family specified by the queueFamilyIndex member of
-- the CommandPoolCreateInfo structure that was used to create the
-- CommandPool that commandBuffer was allocated from, as
-- specified in the table of supported pipeline stages
-- - The srcQueueFamilyIndex and dstQueueFamilyIndex
-- members of any element of pBufferMemoryBarriers or
-- pImageMemoryBarriers must be equal
-- - commandBuffer’s current device mask must include
-- exactly one physical device
-- - If the mesh shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
-- - If the mesh shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pEvents must be a valid pointer to an array of
-- eventCount valid Event handles
-- - srcStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - srcStageMask must not be 0
-- - dstStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - dstStageMask must not be 0
-- - If memoryBarrierCount is not 0,
-- pMemoryBarriers must be a valid pointer to an array of
-- memoryBarrierCount valid MemoryBarrier structures
-- - If bufferMemoryBarrierCount is not 0,
-- pBufferMemoryBarriers must be a valid pointer to an
-- array of bufferMemoryBarrierCount valid
-- BufferMemoryBarrier structures
-- - If imageMemoryBarrierCount is not 0,
-- pImageMemoryBarriers must be a valid pointer to an
-- array of imageMemoryBarrierCount valid
-- ImageMemoryBarrier structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - eventCount must be greater than 0
-- - Both of commandBuffer, and the elements of
-- pEvents must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- BufferMemoryBarrier, CommandBuffer, Event,
-- ImageMemoryBarrier, MemoryBarrier,
-- PipelineStageFlags
cmdWaitEvents :: forall io. MonadIO io => CommandBuffer -> ("events" ::: Vector Event) -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> ("memoryBarriers" ::: Vector MemoryBarrier) -> ("bufferMemoryBarriers" ::: Vector BufferMemoryBarrier) -> ("imageMemoryBarriers" ::: Vector (SomeStruct ImageMemoryBarrier)) -> io ()
-- | A variant of cmdWaitEvents which makes a *safe* FFI call
cmdWaitEventsSafe :: forall io. MonadIO io => CommandBuffer -> ("events" ::: Vector Event) -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> ("memoryBarriers" ::: Vector MemoryBarrier) -> ("bufferMemoryBarriers" ::: Vector BufferMemoryBarrier) -> ("imageMemoryBarriers" ::: Vector (SomeStruct ImageMemoryBarrier)) -> io ()
-- | vkCmdPipelineBarrier - Insert a memory dependency
--
-- Description
--
-- When cmdPipelineBarrier is submitted to a queue, it defines a
-- memory dependency between commands that were submitted before it, and
-- those submitted after it.
--
-- If cmdPipelineBarrier was recorded outside a render pass
-- instance, the first synchronization scope includes all commands
-- that occur earlier in submission order. If
-- cmdPipelineBarrier was recorded inside a render pass instance,
-- the first synchronization scope includes only commands that occur
-- earlier in submission order within the same subpass. In either
-- case, the first synchronization scope is limited to operations on the
-- pipeline stages determined by the source stage mask specified
-- by srcStageMask.
--
-- If cmdPipelineBarrier was recorded outside a render pass
-- instance, the second synchronization scope includes all
-- commands that occur later in submission order. If
-- cmdPipelineBarrier was recorded inside a render pass instance,
-- the second synchronization scope includes only commands that occur
-- later in submission order within the same subpass. In either
-- case, the second synchronization scope is limited to operations on the
-- pipeline stages determined by the destination stage mask
-- specified by dstStageMask.
--
-- The first access scope is limited to access in the pipeline
-- stages determined by the source stage mask specified by
-- srcStageMask. Within that, the first access scope only
-- includes the first access scopes defined by elements of the
-- pMemoryBarriers, pBufferMemoryBarriers and
-- pImageMemoryBarriers arrays, which each define a set of
-- memory barriers. If no memory barriers are specified, then the
-- first access scope includes no accesses.
--
-- The second access scope is limited to access in the pipeline
-- stages determined by the destination stage mask specified by
-- dstStageMask. Within that, the second access scope only
-- includes the second access scopes defined by elements of the
-- pMemoryBarriers, pBufferMemoryBarriers and
-- pImageMemoryBarriers arrays, which each define a set of
-- memory barriers. If no memory barriers are specified, then the
-- second access scope includes no accesses.
--
-- If dependencyFlags includes DEPENDENCY_BY_REGION_BIT,
-- then any dependency between framebuffer-space pipeline stages
-- is framebuffer-local - otherwise it is
-- framebuffer-global.
--
-- Valid Usage
--
--
--
--
-- - If cmdPipelineBarrier is called within a render pass
-- instance, it must not include any buffer memory barriers
-- - If cmdPipelineBarrier is called within a render pass
-- instance, the image member of any image memory barrier
-- included in this command must be an attachment used in the
-- current subpass both as an input attachment, and as either a color or
-- depth/stencil attachment
-- - If cmdPipelineBarrier is called within a render pass
-- instance, the oldLayout and newLayout members of any
-- image memory barrier included in this command must be
-- equal
-- - If cmdPipelineBarrier is called within a render pass
-- instance, the srcQueueFamilyIndex and
-- dstQueueFamilyIndex members of any image memory barrier
-- included in this command must be equal
-- - If cmdPipelineBarrier is called outside of a render pass
-- instance, DEPENDENCY_VIEW_LOCAL_BIT must not be included
-- in the dependency flags
-- - If the geometry shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT
-- - If the geometry shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - Any pipeline stage included in srcStageMask or
-- dstStageMask must be supported by the capabilities of
-- the queue family specified by the queueFamilyIndex member of
-- the CommandPoolCreateInfo structure that was used to create the
-- CommandPool that commandBuffer was allocated from, as
-- specified in the table of supported pipeline stages
-- - If the mesh shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
-- - If the mesh shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
-- - The srcAccessMask member of each element of
-- pMemoryBarriers must only include access flags that
-- are supported by one or more of the pipeline stages in
-- srcStageMask, as specified in the table of supported
-- access types
-- - The dstAccessMask member of each element of
-- pMemoryBarriers must only include access flags that
-- are supported by one or more of the pipeline stages in
-- dstStageMask, as specified in the table of supported
-- access types
-- - For any element of pBufferMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its srcQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- srcAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- srcStageMask, as specified in the table of supported
-- access types
-- - For any element of pBufferMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its dstQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- dstAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- dstStageMask, as specified in the table of supported
-- access types
-- - For any element of pImageMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its srcQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- srcAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- srcStageMask, as specified in the table of supported
-- access types
-- - For any element of pImageMemoryBarriers, if its
-- srcQueueFamilyIndex and dstQueueFamilyIndex members
-- are equal, or if its dstQueueFamilyIndex is the queue family
-- index that was used to create the command pool that
-- commandBuffer was allocated from, then its
-- dstAccessMask member must only contain access flags
-- that are supported by one or more of the pipeline stages in
-- dstStageMask, as specified in the table of supported
-- access types
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - srcStageMask must not be 0
-- - dstStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - dstStageMask must not be 0
-- - dependencyFlags must be a valid combination of
-- DependencyFlagBits values
-- - If memoryBarrierCount is not 0,
-- pMemoryBarriers must be a valid pointer to an array of
-- memoryBarrierCount valid MemoryBarrier structures
-- - If bufferMemoryBarrierCount is not 0,
-- pBufferMemoryBarriers must be a valid pointer to an
-- array of bufferMemoryBarrierCount valid
-- BufferMemoryBarrier structures
-- - If imageMemoryBarrierCount is not 0,
-- pImageMemoryBarriers must be a valid pointer to an
-- array of imageMemoryBarrierCount valid
-- ImageMemoryBarrier structures
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- BufferMemoryBarrier, CommandBuffer,
-- DependencyFlags, ImageMemoryBarrier,
-- MemoryBarrier, PipelineStageFlags
cmdPipelineBarrier :: forall io. MonadIO io => CommandBuffer -> ("srcStageMask" ::: PipelineStageFlags) -> ("dstStageMask" ::: PipelineStageFlags) -> DependencyFlags -> ("memoryBarriers" ::: Vector MemoryBarrier) -> ("bufferMemoryBarriers" ::: Vector BufferMemoryBarrier) -> ("imageMemoryBarriers" ::: Vector (SomeStruct ImageMemoryBarrier)) -> io ()
-- | vkCmdBeginQuery - Begin a query
--
-- Description
--
-- If the queryType of the pool is QUERY_TYPE_OCCLUSION
-- and flags contains QUERY_CONTROL_PRECISE_BIT, an
-- implementation must return a result that matches the actual
-- number of samples passed. This is described in more detail in
-- Occlusion Queries.
--
-- Calling cmdBeginQuery is equivalent to calling
-- cmdBeginQueryIndexedEXT with the index parameter set
-- to zero.
--
-- After beginning a query, that query is considered active within
-- the command buffer it was called in until that same query is ended.
-- Queries active in a primary command buffer when secondary command
-- buffers are executed are considered active for those secondary command
-- buffers.
--
-- Valid Usage
--
--
-- - queryPool must have been created with a
-- queryType that differs from that of any queries that are
-- active within commandBuffer
--
--
--
-- - All queries used by the command must be unavailable
-- - The queryType used to create queryPool
-- must not be QUERY_TYPE_TIMESTAMP
-- - If the precise occlusion queries feature is not enabled, or
-- the queryType used to create queryPool was not
-- QUERY_TYPE_OCCLUSION, flags must not contain
-- QUERY_CONTROL_PRECISE_BIT
-- - query must be less than the number of queries in
-- queryPool
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_OCCLUSION, the CommandPool that
-- commandBuffer was allocated from must support graphics
-- operations
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_PIPELINE_STATISTICS and any of the
-- pipelineStatistics indicate graphics operations, the
-- CommandPool that commandBuffer was allocated from
-- must support graphics operations
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_PIPELINE_STATISTICS and any of the
-- pipelineStatistics indicate compute operations, the
-- CommandPool that commandBuffer was allocated from
-- must support compute operations
-- - commandBuffer must not be a protected command
-- buffer
-- - If called within a render pass instance, the sum of query
-- and the number of bits set in the current subpass’s view mask
-- must be less than or equal to the number of queries in
-- queryPool
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT the CommandPool
-- that commandBuffer was allocated from must support
-- graphics operations
-- - If the queryType used to create queryPool was
-- QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT then
-- PhysicalDeviceTransformFeedbackPropertiesEXT::transformFeedbackQueries
-- must be supported
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR, the profiling lock
-- must have been held before beginCommandBuffer was called
-- on commandBuffer
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used
-- to create queryPool was
-- PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR, the query begin
-- must be the first recorded command in
-- commandBuffer
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used
-- to create queryPool was
-- PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR, the begin command
-- must not be recorded within a render pass instance
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR and another query pool with a
-- queryType QUERY_TYPE_PERFORMANCE_QUERY_KHR has been
-- used within commandBuffer, its parent primary command buffer
-- or secondary command buffer recorded within the same parent primary
-- command buffer as commandBuffer, the
-- performanceCounterMultipleQueryPools feature must be
-- enabled
-- - If queryPool was created with a queryType of
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR, this command must not
-- be recorded in a command buffer that, either directly or through
-- secondary command buffers, also contains a cmdResetQueryPool
-- command affecting the same query
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - flags must be a valid combination of
-- QueryControlFlagBits values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Both of commandBuffer, and queryPool must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, QueryControlFlags, QueryPool
cmdBeginQuery :: forall io. MonadIO io => CommandBuffer -> QueryPool -> ("query" ::: Word32) -> QueryControlFlags -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginQuery and cmdEndQuery
--
-- Note that cmdEndQuery is *not* called if an exception is thrown
-- by the inner action.
cmdUseQuery :: forall io r. MonadIO io => CommandBuffer -> QueryPool -> Word32 -> QueryControlFlags -> io r -> io r
-- | vkCmdEndQuery - Ends a query
--
-- Description
--
-- Calling cmdEndQuery is equivalent to calling
-- cmdEndQueryIndexedEXT with the index parameter set to
-- zero.
--
-- As queries operate asynchronously, ending a query does not immediately
-- set the query’s status to available. A query is considered
-- finished when the final results of the query are ready to be
-- retrieved by getQueryPoolResults and
-- cmdCopyQueryPoolResults, and this is when the query’s status is
-- set to available.
--
-- Once a query is ended the query must finish in finite time,
-- unless the state of the query is changed using other commands, e.g. by
-- issuing a reset of the query.
--
-- Valid Usage
--
--
-- - All queries used by the command must be active
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - Both of commandBuffer, and queryPool must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, QueryPool
cmdEndQuery :: forall io. MonadIO io => CommandBuffer -> QueryPool -> ("query" ::: Word32) -> io ()
-- | vkCmdResetQueryPool - Reset queries in a query pool
--
-- Description
--
-- When executed on a queue, this command sets the status of query
-- indices [firstQuery, firstQuery +
-- queryCount - 1] to unavailable.
--
-- If the queryType used to create queryPool was
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR, this command sets the status
-- of query indices [firstQuery, firstQuery +
-- queryCount - 1] to unavailable for each pass of
-- queryPool, as indicated by a call to
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR.
--
-- Note
--
-- Because cmdResetQueryPool resets all the passes of the
-- indicated queries, applications must not record a
-- cmdResetQueryPool command for a queryPool created with
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR in a command buffer that needs
-- to be submitted multiple times as indicated by a call to
-- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR.
-- Otherwise applications will never be able to complete the recorded
-- queries.
--
-- Valid Usage
--
--
-- - firstQuery must be less than the number of queries
-- in queryPool
--
--
--
-- - The sum of firstQuery and queryCount must
-- be less than or equal to the number of queries in
-- queryPool
-- - All queries used by the command must not be active
-- - If queryPool was created with
-- QUERY_TYPE_PERFORMANCE_QUERY_KHR, this command must not
-- be recorded in a command buffer that, either directly or through
-- secondary command buffers, also contains begin commands for a query
-- from the set of queries [firstQuery, firstQuery +
-- queryCount - 1]
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Both of commandBuffer, and queryPool must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, QueryPool
cmdResetQueryPool :: forall io. MonadIO io => CommandBuffer -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> io ()
-- | vkCmdWriteTimestamp - Write a device timestamp into a query object
--
-- Description
--
-- cmdWriteTimestamp latches the value of the timer when all
-- previous commands have completed executing as far as the specified
-- pipeline stage, and writes the timestamp value to memory. When the
-- timestamp value is written, the availability status of the query is
-- set to available.
--
-- Note
--
-- If an implementation is unable to detect completion and latch the
-- timer at any specific stage of the pipeline, it may instead do
-- so at any logically later stage.
--
-- Timestamps may only be meaningfully compared if they are
-- written by commands submitted to the same queue.
--
-- Note
--
-- An example of such a comparison is determining the execution time of a
-- sequence of commands.
--
-- If cmdWriteTimestamp is called while executing a render pass
-- instance that has multiview enabled, the timestamp uses N consecutive
-- query indices in the query pool (starting at query) where N
-- is the number of bits set in the view mask of the subpass the command
-- is executed in. The resulting query values are determined by an
-- implementation-dependent choice of one of the following behaviors:
--
--
-- - The first query is a timestamp value and (if more than one bit is
-- set in the view mask) zero is written to the remaining queries. If two
-- timestamps are written in the same subpass, the sum of the execution
-- time of all views between those commands is the difference between the
-- first query written by each command.
-- - All N queries are timestamp values. If two timestamps are written
-- in the same subpass, the sum of the execution time of all views
-- between those commands is the sum of the difference between
-- corresponding queries written by each command. The difference between
-- corresponding queries may be the execution time of a single
-- view.
--
--
-- In either case, the application can sum the differences between
-- all N queries to determine the total execution time.
--
-- Valid Usage
--
--
-- - pipelineStage must be a valid stage for the
-- queue family that was used to create the command pool that
-- commandBuffer was allocated from
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pipelineStage must be a valid
-- PipelineStageFlagBits value
-- - queryPool must be a valid QueryPool
-- handle
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - Both of commandBuffer, and queryPool must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, PipelineStageFlagBits, QueryPool
cmdWriteTimestamp :: forall io. MonadIO io => CommandBuffer -> PipelineStageFlagBits -> QueryPool -> ("query" ::: Word32) -> io ()
-- | vkCmdCopyQueryPoolResults - Copy the results of queries in a query
-- pool to a buffer object
--
-- Description
--
-- cmdCopyQueryPoolResults is guaranteed to see the effect of
-- previous uses of cmdResetQueryPool in the same queue, without
-- any additional synchronization. Thus, the results will always reflect
-- the most recent use of the query.
--
-- flags has the same possible values described above for the
-- flags parameter of getQueryPoolResults, but the
-- different style of execution causes some subtle behavioral
-- differences. Because cmdCopyQueryPoolResults executes in order
-- with respect to other query commands, there is less ambiguity about
-- which use of a query is being requested.
--
-- Results for all requested occlusion queries, pipeline statistics
-- queries, transform feedback queries, and timestamp queries are written
-- as 64-bit unsigned integer values if QUERY_RESULT_64_BIT is set
-- or 32-bit unsigned integer values otherwise. Performance queries store
-- results in a tightly packed array whose type is determined by the
-- unit member of the corresponding
-- PerformanceCounterKHR.
--
-- If neither of QUERY_RESULT_WAIT_BIT and
-- QUERY_RESULT_WITH_AVAILABILITY_BIT are set, results are only
-- written out for queries in the available state.
--
-- If QUERY_RESULT_WAIT_BIT is set, the implementation will wait
-- for each query’s status to be in the available state before retrieving
-- the numerical results for that query. This is guaranteed to reflect
-- the most recent use of the query on the same queue, assuming that the
-- query is not being simultaneously used by other queues. If the query
-- does not become available in a finite amount of time (e.g. due to not
-- issuing a query since the last reset), a ERROR_DEVICE_LOST
-- error may occur.
--
-- Similarly, if QUERY_RESULT_WITH_AVAILABILITY_BIT is set and
-- QUERY_RESULT_WAIT_BIT is not set, the availability is
-- guaranteed to reflect the most recent use of the query on the same
-- queue, assuming that the query is not being simultaneously used by
-- other queues. As with getQueryPoolResults, implementations
-- must guarantee that if they return a non-zero availability
-- value, then the numerical results are valid.
--
-- If QUERY_RESULT_PARTIAL_BIT is set,
-- QUERY_RESULT_WAIT_BIT is not set, and the query’s status is
-- unavailable, an intermediate result value between zero and the final
-- result value is written for that query.
--
-- QUERY_RESULT_PARTIAL_BIT must not be used if the pool’s
-- queryType is QUERY_TYPE_TIMESTAMP.
--
-- cmdCopyQueryPoolResults is considered to be a transfer
-- operation, and its writes to buffer memory must be synchronized
-- using PIPELINE_STAGE_TRANSFER_BIT and
-- ACCESS_TRANSFER_WRITE_BIT before using the results.
--
-- Valid Usage
--
--
-- - dstOffset must be less than the size of
-- dstBuffer
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - queryPool must be a valid QueryPool
-- handle
-- - dstBuffer must be a valid Buffer
-- handle
-- - flags must be a valid combination of
-- QueryResultFlagBits values
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - This command must only be called outside of a render pass
-- instance
-- - Each of commandBuffer, dstBuffer, and
-- queryPool must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- Buffer, CommandBuffer, DeviceSize,
-- QueryPool, QueryResultFlags
cmdCopyQueryPoolResults :: forall io. MonadIO io => CommandBuffer -> QueryPool -> ("firstQuery" ::: Word32) -> ("queryCount" ::: Word32) -> ("dstBuffer" ::: Buffer) -> ("dstOffset" ::: DeviceSize) -> ("stride" ::: DeviceSize) -> QueryResultFlags -> io ()
-- | vkCmdPushConstants - Update the values of push constants
--
-- Description
--
-- Note
--
-- As stageFlags needs to include all flags the relevant push
-- constant ranges were created with, any flags that are not supported by
-- the queue family that the CommandPool used to allocate
-- commandBuffer was created on are ignored.
--
-- Valid Usage
--
--
-- - For each byte in the range specified by offset and
-- size and for each shader stage in stageFlags, there
-- must be a push constant range in layout that includes
-- that byte and that stage
--
--
--
-- - For each byte in the range specified by offset and
-- size and for each push constant range that overlaps that
-- byte, stageFlags must include all stages in that push
-- constant range’s PushConstantRange::stageFlags
-- - offset must be a multiple of 4
-- - size must be a multiple of 4
-- - offset must be less than
-- PhysicalDeviceLimits::maxPushConstantsSize
-- - size must be less than or equal to
-- PhysicalDeviceLimits::maxPushConstantsSize minus
-- offset
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - layout must be a valid PipelineLayout
-- handle
-- - stageFlags must be a valid combination of
-- ShaderStageFlagBits values
-- - stageFlags must not be 0
-- - pValues must be a valid pointer to an array of
-- size bytes
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics, or compute operations
-- - size must be greater than 0
-- - Both of commandBuffer, and layout must
-- have been created, allocated, or retrieved from the same
-- Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, PipelineLayout, ShaderStageFlags
cmdPushConstants :: forall io. MonadIO io => CommandBuffer -> PipelineLayout -> ShaderStageFlags -> ("offset" ::: Word32) -> ("size" ::: Word32) -> ("values" ::: Ptr ()) -> io ()
-- | vkCmdBeginRenderPass - Begin a new render pass
--
-- Description
--
-- After beginning a render pass instance, the command buffer is ready to
-- record the commands for the first subpass of that render pass.
--
-- Valid Usage
--
--
--
--
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL then the
-- corresponding attachment image view of the framebuffer specified in
-- the framebuffer member of pRenderPassBegin
-- must have been created with a usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If any of the stencilInitialLayout or
-- stencilFinalLayout member of the
-- AttachmentDescriptionStencilLayout structures or the
-- stencilLayout member of the
-- AttachmentReferenceStencilLayout structures specified when
-- creating the render pass specified in the renderPass member
-- of pRenderPassBegin is
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_TRANSFER_SRC_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_TRANSFER_DST_BIT
-- - If any of the initialLayout members of the
-- AttachmentDescription structures specified when creating the
-- render pass specified in the renderPass member of
-- pRenderPassBegin is not IMAGE_LAYOUT_UNDEFINED, then
-- each such initialLayout must be equal to the current
-- layout of the corresponding attachment image subresource of the
-- framebuffer specified in the framebuffer member of
-- pRenderPassBegin
-- - The srcStageMask and dstStageMask members of any
-- element of the pDependencies member of
-- RenderPassCreateInfo used to create renderPass
-- must be supported by the capabilities of the queue family
-- identified by the queueFamilyIndex member of the
-- CommandPoolCreateInfo used to create the command pool which
-- commandBuffer was allocated from
-- - For any attachment in framebuffer that is used by
-- renderPass and is bound to memory locations that are also
-- bound to another attachment used by renderPass, and if at
-- least one of those uses causes either attachment to be written to,
-- both attachments must have had the
-- ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT set
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pRenderPassBegin must be a valid pointer to a
-- valid RenderPassBeginInfo structure
-- - contents must be a valid SubpassContents
-- value
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called outside of a render pass
-- instance
-- - commandBuffer must be a primary
-- CommandBuffer
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, RenderPassBeginInfo,
-- SubpassContents
cmdBeginRenderPass :: forall a io. (Extendss RenderPassBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> RenderPassBeginInfo a -> SubpassContents -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginRenderPass and cmdEndRenderPass
--
-- Note that cmdEndRenderPass is *not* called if an exception is
-- thrown by the inner action.
cmdUseRenderPass :: forall a io r. (Extendss RenderPassBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> RenderPassBeginInfo a -> SubpassContents -> io r -> io r
-- | vkCmdNextSubpass - Transition to the next subpass of a render pass
--
-- Description
--
-- The subpass index for a render pass begins at zero when
-- cmdBeginRenderPass is recorded, and increments each time
-- cmdNextSubpass is recorded.
--
-- Moving to the next subpass automatically performs any multisample
-- resolve operations in the subpass being ended. End-of-subpass
-- multisample resolves are treated as color attachment writes for the
-- purposes of synchronization. This applies to resolve operations for
-- both color and depth/stencil attachments. That is, they are considered
-- to execute in the PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT
-- pipeline stage and their writes are synchronized with
-- ACCESS_COLOR_ATTACHMENT_WRITE_BIT. Synchronization between
-- rendering within a subpass and any resolve operations at the end of
-- the subpass occurs automatically, without need for explicit
-- dependencies or pipeline barriers. However, if the resolve attachment
-- is also used in a different subpass, an explicit dependency is needed.
--
-- After transitioning to the next subpass, the application can
-- record the commands for that subpass.
--
-- Valid Usage
--
--
-- - The current subpass index must be less than the number of
-- subpasses in the render pass minus one
--
--
--
-- - This command must not be recorded when transform feedback
-- is active
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - contents must be a valid SubpassContents
-- value
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - commandBuffer must be a primary
-- CommandBuffer
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, SubpassContents
cmdNextSubpass :: forall io. MonadIO io => CommandBuffer -> SubpassContents -> io ()
-- | vkCmdEndRenderPass - End the current render pass
--
-- Description
--
-- Ending a render pass instance performs any multisample resolve
-- operations on the final subpass.
--
-- Valid Usage
--
--
-- - The current subpass index must be equal to the number of
-- subpasses in the render pass minus one
--
--
--
-- - This command must not be recorded when transform feedback
-- is active
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - commandBuffer must be a primary
-- CommandBuffer
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdEndRenderPass :: forall io. MonadIO io => CommandBuffer -> io ()
-- | vkCmdExecuteCommands - Execute a secondary command buffer from a
-- primary command buffer
--
-- Description
--
-- If any element of pCommandBuffers was not recorded with the
-- COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT flag, and it was
-- recorded into any other primary command buffer which is currently in
-- the executable or recording state, that primary command buffer
-- becomes invalid.
--
-- Valid Usage
--
--
--
--
-- - Each element of pCommandBuffers must be in the
-- pending or executable state
-- - If any element of pCommandBuffers was not recorded with
-- the COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT flag, it
-- must not be in the pending state
-- - If any element of pCommandBuffers was not recorded with
-- the COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT flag, it
-- must not have already been recorded to
-- commandBuffer
-- - If any element of pCommandBuffers was not recorded with
-- the COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT flag, it
-- must not appear more than once in pCommandBuffers
-- - Each element of pCommandBuffers must have been
-- allocated from a CommandPool that was created for the same
-- queue family as the CommandPool from which
-- commandBuffer was allocated
-- - If cmdExecuteCommands is being called within a render pass
-- instance, that render pass instance must have been begun with
-- the contents parameter of cmdBeginRenderPass set to
-- SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS
-- - If cmdExecuteCommands is being called within a render pass
-- instance, each element of pCommandBuffers must have
-- been recorded with the
-- COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT
-- - If cmdExecuteCommands is being called within a render pass
-- instance, each element of pCommandBuffers must have
-- been recorded with
-- CommandBufferInheritanceInfo::subpass set to the index
-- of the subpass which the given command buffer will be executed in
-- - If cmdExecuteCommands is being called within a render pass
-- instance, the render passes specified in the
-- pBeginInfo->pInheritanceInfo->renderPass members of the
-- beginCommandBuffer commands used to begin recording each
-- element of pCommandBuffers must be compatible
-- with the current render pass
-- - If cmdExecuteCommands is being called within a render pass
-- instance, and any element of pCommandBuffers was recorded
-- with CommandBufferInheritanceInfo::framebuffer not
-- equal to NULL_HANDLE, that Framebuffer must match
-- the Framebuffer used in the current render pass instance
-- - If cmdExecuteCommands is being called within a render pass
-- instance that included RenderPassTransformBeginInfoQCOM in the
-- pNext chain of RenderPassBeginInfo, then each element
-- of pCommandBuffers must have been recorded with
-- CommandBufferInheritanceRenderPassTransformInfoQCOM in the
-- pNext chain of CommandBufferBeginInfo
-- - If cmdExecuteCommands is being called within a render pass
-- instance that included RenderPassTransformBeginInfoQCOM in the
-- pNext chain of RenderPassBeginInfo, then each element
-- of pCommandBuffers must have been recorded with
-- CommandBufferInheritanceRenderPassTransformInfoQCOM::transform
-- identical to
-- RenderPassTransformBeginInfoQCOM::transform
-- - If cmdExecuteCommands is being called within a render pass
-- instance that included RenderPassTransformBeginInfoQCOM in the
-- pNext chain of RenderPassBeginInfo, then each element
-- of pCommandBuffers must have been recorded with
-- CommandBufferInheritanceRenderPassTransformInfoQCOM::renderArea
-- identical to RenderPassBeginInfo::renderArea
-- - If cmdExecuteCommands is not being called within a render
-- pass instance, each element of pCommandBuffers must
-- not have been recorded with the
-- COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT
-- - If the inherited queries feature is not enabled,
-- commandBuffer must not have any queries
-- active
-- - If commandBuffer has a QUERY_TYPE_OCCLUSION query
-- active, then each element of pCommandBuffers
-- must have been recorded with
-- CommandBufferInheritanceInfo::occlusionQueryEnable set
-- to TRUE
-- - If commandBuffer has a QUERY_TYPE_OCCLUSION query
-- active, then each element of pCommandBuffers
-- must have been recorded with
-- CommandBufferInheritanceInfo::queryFlags having all
-- bits set that are set for the query
-- - If commandBuffer has a
-- QUERY_TYPE_PIPELINE_STATISTICS query active, then each
-- element of pCommandBuffers must have been recorded
-- with CommandBufferInheritanceInfo::pipelineStatistics
-- having all bits set that are set in the QueryPool the query
-- uses
-- - Each element of pCommandBuffers must not begin any
-- query types that are active in commandBuffer
-- - If commandBuffer is a protected command buffer, then each
-- element of pCommandBuffers must be a protected command
-- buffer
-- - If commandBuffer is an unprotected command buffer, then
-- each element of pCommandBuffers must be an unprotected
-- command buffer
-- - This command must not be recorded when transform feedback
-- is active
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pCommandBuffers must be a valid pointer to an
-- array of commandBufferCount valid CommandBuffer
-- handles
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support transfer, graphics, or compute
-- operations
-- - commandBuffer must be a primary
-- CommandBuffer
-- - commandBufferCount must be greater than
-- 0
-- - Both of commandBuffer, and the elements of
-- pCommandBuffers must have been created, allocated, or
-- retrieved from the same Device
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer
cmdExecuteCommands :: forall io. MonadIO io => CommandBuffer -> ("commandBuffers" ::: Vector CommandBuffer) -> io ()
-- | VkClearRect - Structure specifying a clear rectangle
--
-- Description
--
-- The layers [baseArrayLayer, baseArrayLayer +
-- layerCount) counting from the base layer of the attachment
-- image view are cleared.
--
-- See Also
--
-- Rect2D, cmdClearAttachments
data ClearRect
ClearRect :: Rect2D -> Word32 -> Word32 -> ClearRect
-- | rect is the two-dimensional region to be cleared.
[$sel:rect:ClearRect] :: ClearRect -> Rect2D
-- | baseArrayLayer is the first layer to be cleared.
[$sel:baseArrayLayer:ClearRect] :: ClearRect -> Word32
-- | layerCount is the number of layers to clear.
[$sel:layerCount:ClearRect] :: ClearRect -> Word32
-- | VkImageSubresourceLayers - Structure specifying an image subresource
-- layers
--
-- Valid Usage
--
--
--
--
-- - aspectMask must not contain
-- IMAGE_ASPECT_METADATA_BIT
-- - aspectMask must not include
-- VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT for any index
-- i
-- - layerCount must be greater than 0
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - aspectMask must not be 0
--
--
-- See Also
--
-- BufferImageCopy, ImageAspectFlags, ImageBlit,
-- ImageCopy, ImageResolve
data ImageSubresourceLayers
ImageSubresourceLayers :: ImageAspectFlags -> Word32 -> Word32 -> Word32 -> ImageSubresourceLayers
-- | aspectMask is a combination of ImageAspectFlagBits,
-- selecting the color, depth and/or stencil aspects to be copied.
[$sel:aspectMask:ImageSubresourceLayers] :: ImageSubresourceLayers -> ImageAspectFlags
-- | mipLevel is the mipmap level to copy from.
[$sel:mipLevel:ImageSubresourceLayers] :: ImageSubresourceLayers -> Word32
-- | baseArrayLayer and layerCount are the starting layer
-- and number of layers to copy.
[$sel:baseArrayLayer:ImageSubresourceLayers] :: ImageSubresourceLayers -> Word32
[$sel:layerCount:ImageSubresourceLayers] :: ImageSubresourceLayers -> Word32
-- | VkBufferCopy - Structure specifying a buffer copy operation
--
-- Valid Usage
--
--
-- - The size must be greater than 0
--
--
-- See Also
--
-- DeviceSize, cmdCopyBuffer
data BufferCopy
BufferCopy :: DeviceSize -> DeviceSize -> DeviceSize -> BufferCopy
-- | srcOffset is the starting offset in bytes from the start of
-- srcBuffer.
[$sel:srcOffset:BufferCopy] :: BufferCopy -> DeviceSize
-- | dstOffset is the starting offset in bytes from the start of
-- dstBuffer.
[$sel:dstOffset:BufferCopy] :: BufferCopy -> DeviceSize
-- | size is the number of bytes to copy.
[$sel:size:BufferCopy] :: BufferCopy -> DeviceSize
-- | VkImageCopy - Structure specifying an image copy operation
--
-- Description
--
-- For IMAGE_TYPE_3D images, copies are performed slice by slice
-- starting with the z member of the srcOffset or
-- dstOffset, and copying depth slices. For images with
-- multiple layers, copies are performed layer by layer starting with the
-- baseArrayLayer member of the srcSubresource or
-- dstSubresource and copying layerCount layers. Image
-- data can be copied between images with different image types.
-- If one image is IMAGE_TYPE_3D and the other image is
-- IMAGE_TYPE_2D with multiple layers, then each slice is copied
-- to or from a different layer.
--
-- Copies involving a multi-planar image format specify the region
-- to be copied in terms of the plane to be copied, not the
-- coordinates of the multi-planar image. This means that copies
-- accessing the R/B planes of “_422” format images must
-- fit the copied region within half the width of the parent
-- image, and that copies accessing the R/B planes of “_420”
-- format images must fit the copied region within half the
-- width and height of the parent image.
--
-- Valid Usage
--
--
-- - If neither the calling command’s srcImage nor the calling
-- command’s dstImage has a multi-planar image format
-- then the aspectMask member of srcSubresource and
-- dstSubresource must match
--
--
--
-- - If the calling command’s srcImage has a Format
-- with two planes then the srcSubresource
-- aspectMask must be IMAGE_ASPECT_PLANE_0_BIT or
-- IMAGE_ASPECT_PLANE_1_BIT
-- - If the calling command’s srcImage has a Format
-- with three planes then the srcSubresource
-- aspectMask must be IMAGE_ASPECT_PLANE_0_BIT,
-- IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT
-- - If the calling command’s dstImage has a Format
-- with two planes then the dstSubresource
-- aspectMask must be IMAGE_ASPECT_PLANE_0_BIT or
-- IMAGE_ASPECT_PLANE_1_BIT
-- - If the calling command’s dstImage has a Format
-- with three planes then the dstSubresource
-- aspectMask must be IMAGE_ASPECT_PLANE_0_BIT,
-- IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT
-- - If the calling command’s srcImage has a multi-planar
-- image format and the dstImage does not have a
-- multi-planar image format, the dstSubresource
-- aspectMask must be IMAGE_ASPECT_COLOR_BIT
-- - If the calling command’s dstImage has a multi-planar
-- image format and the srcImage does not have a
-- multi-planar image format, the srcSubresource
-- aspectMask must be IMAGE_ASPECT_COLOR_BIT
-- - The number of slices of the extent (for 3D) or layers of
-- the srcSubresource (for non-3D) must match the number
-- of slices of the extent (for 3D) or layers of the
-- dstSubresource (for non-3D)
-- - If either of the calling command’s srcImage or
-- dstImage parameters are of ImageType
-- IMAGE_TYPE_3D, the baseArrayLayer and
-- layerCount members of the corresponding subresource
-- must be 0 and 1, respectively
-- - The aspectMask member of srcSubresource
-- must specify aspects present in the calling command’s
-- srcImage
-- - The aspectMask member of dstSubresource
-- must specify aspects present in the calling command’s
-- dstImage
-- - srcOffset.x and (extent.width +
-- srcOffset.x) must both be greater than or equal to
-- 0 and less than or equal to the source image subresource
-- width
-- - srcOffset.y and (extent.height +
-- srcOffset.y) must both be greater than or equal to
-- 0 and less than or equal to the source image subresource
-- height
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_1D, then srcOffset.y must be
-- 0 and extent.height must be 1
-- - srcOffset.z and (extent.depth +
-- srcOffset.z) must both be greater than or equal to
-- 0 and less than or equal to the source image subresource
-- depth
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_1D, then srcOffset.z must be
-- 0 and extent.depth must be 1
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_1D, then dstOffset.z must be
-- 0 and extent.depth must be 1
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_2D, then srcOffset.z must be
-- 0
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_2D, then dstOffset.z must be
-- 0
-- - If both srcImage and dstImage are of type
-- IMAGE_TYPE_2D then extent.depth must be
-- 1
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_2D, and the dstImage is of type
-- IMAGE_TYPE_3D, then extent.depth must equal to
-- the layerCount member of srcSubresource
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_2D, and the srcImage is of type
-- IMAGE_TYPE_3D, then extent.depth must equal to
-- the layerCount member of dstSubresource
-- - dstOffset.x and (extent.width +
-- dstOffset.x) must both be greater than or equal to
-- 0 and less than or equal to the destination image subresource
-- width
-- - dstOffset.y and (extent.height +
-- dstOffset.y) must both be greater than or equal to
-- 0 and less than or equal to the destination image subresource
-- height
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_1D, then dstOffset.y must be
-- 0 and extent.height must be 1
-- - dstOffset.z and (extent.depth +
-- dstOffset.z) must both be greater than or equal to
-- 0 and less than or equal to the destination image subresource
-- depth
-- - If the calling command’s srcImage is a compressed image,
-- or a single-plane, “_422” image format, all members of
-- srcOffset must be a multiple of the corresponding
-- dimensions of the compressed texel block
-- - If the calling command’s srcImage is a compressed image,
-- or a single-plane, “_422” image format,
-- extent.width must be a multiple of the compressed
-- texel block width or (extent.width + srcOffset.x)
-- must equal the source image subresource width
-- - If the calling command’s srcImage is a compressed image,
-- or a single-plane, “_422” image format,
-- extent.height must be a multiple of the compressed
-- texel block height or (extent.height + srcOffset.y)
-- must equal the source image subresource height
-- - If the calling command’s srcImage is a compressed image,
-- or a single-plane, “_422” image format,
-- extent.depth must be a multiple of the compressed
-- texel block depth or (extent.depth + srcOffset.z)
-- must equal the source image subresource depth
-- - If the calling command’s dstImage is a compressed format
-- image, or a single-plane, “_422” image format, all
-- members of dstOffset must be a multiple of the
-- corresponding dimensions of the compressed texel block
-- - If the calling command’s dstImage is a compressed format
-- image, or a single-plane, “_422” image format,
-- extent.width must be a multiple of the compressed
-- texel block width or (extent.width + dstOffset.x)
-- must equal the destination image subresource width
-- - If the calling command’s dstImage is a compressed format
-- image, or a single-plane, “_422” image format,
-- extent.height must be a multiple of the compressed
-- texel block height or (extent.height + dstOffset.y)
-- must equal the destination image subresource height
-- - If the calling command’s dstImage is a compressed format
-- image, or a single-plane, “_422” image format,
-- extent.depth must be a multiple of the compressed
-- texel block depth or (extent.depth + dstOffset.z)
-- must equal the destination image subresource depth
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Extent3D, ImageSubresourceLayers, Offset3D,
-- cmdCopyImage
data ImageCopy
ImageCopy :: ImageSubresourceLayers -> Offset3D -> ImageSubresourceLayers -> Offset3D -> Extent3D -> ImageCopy
-- | srcSubresource and dstSubresource are
-- ImageSubresourceLayers structures specifying the image
-- subresources of the images used for the source and destination image
-- data, respectively.
[$sel:srcSubresource:ImageCopy] :: ImageCopy -> ImageSubresourceLayers
-- | srcOffset and dstOffset select the initial
-- x, y, and z offsets in texels of the
-- sub-regions of the source and destination image data.
[$sel:srcOffset:ImageCopy] :: ImageCopy -> Offset3D
[$sel:dstSubresource:ImageCopy] :: ImageCopy -> ImageSubresourceLayers
[$sel:dstOffset:ImageCopy] :: ImageCopy -> Offset3D
-- | extent is the size in texels of the image to copy in
-- width, height and depth.
[$sel:extent:ImageCopy] :: ImageCopy -> Extent3D
-- | VkImageBlit - Structure specifying an image blit operation
--
-- Description
--
-- For each element of the pRegions array, a blit operation is
-- performed the specified source and destination regions.
--
-- Valid Usage
--
--
-- - The aspectMask member of srcSubresource and
-- dstSubresource must match
--
--
--
-- - The layerCount member of srcSubresource and
-- dstSubresource must match
-- - If either of the calling command’s srcImage or
-- dstImage parameters are of ImageType
-- IMAGE_TYPE_3D, the baseArrayLayer and
-- layerCount members of both srcSubresource and
-- dstSubresource must be 0 and 1,
-- respectively
-- - The aspectMask member of srcSubresource
-- must specify aspects present in the calling command’s
-- srcImage
-- - The aspectMask member of dstSubresource
-- must specify aspects present in the calling command’s
-- dstImage
-- - srcOffset[0].x and srcOffset[1].x must
-- both be greater than or equal to 0 and less than or equal to
-- the source image subresource width
-- - srcOffset[0].y and srcOffset[1].y must
-- both be greater than or equal to 0 and less than or equal to
-- the source image subresource height
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_1D, then srcOffset[0].y must be
-- 0 and srcOffset[1].y must be 1
-- - srcOffset[0].z and srcOffset[1].z must
-- both be greater than or equal to 0 and less than or equal to
-- the source image subresource depth
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_1D or IMAGE_TYPE_2D, then
-- srcOffset[0].z must be 0 and
-- srcOffset[1].z must be 1
-- - dstOffset[0].x and dstOffset[1].x must
-- both be greater than or equal to 0 and less than or equal to
-- the destination image subresource width
-- - dstOffset[0].y and dstOffset[1].y must
-- both be greater than or equal to 0 and less than or equal to
-- the destination image subresource height
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_1D, then dstOffset[0].y must be
-- 0 and dstOffset[1].y must be 1
-- - dstOffset[0].z and dstOffset[1].z must
-- both be greater than or equal to 0 and less than or equal to
-- the destination image subresource depth
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_1D or IMAGE_TYPE_2D, then
-- dstOffset[0].z must be 0 and
-- dstOffset[1].z must be 1
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ImageSubresourceLayers, Offset3D, cmdBlitImage
data ImageBlit
ImageBlit :: ImageSubresourceLayers -> (Offset3D, Offset3D) -> ImageSubresourceLayers -> (Offset3D, Offset3D) -> ImageBlit
-- | srcSubresource is the subresource to blit from.
[$sel:srcSubresource:ImageBlit] :: ImageBlit -> ImageSubresourceLayers
-- | srcOffsets is a pointer to an array of two Offset3D
-- structures specifying the bounds of the source region within
-- srcSubresource.
[$sel:srcOffsets:ImageBlit] :: ImageBlit -> (Offset3D, Offset3D)
-- | dstSubresource is the subresource to blit into.
[$sel:dstSubresource:ImageBlit] :: ImageBlit -> ImageSubresourceLayers
-- | dstOffsets is a pointer to an array of two Offset3D
-- structures specifying the bounds of the destination region within
-- dstSubresource.
[$sel:dstOffsets:ImageBlit] :: ImageBlit -> (Offset3D, Offset3D)
-- | VkBufferImageCopy - Structure specifying a buffer image copy operation
--
-- Description
--
-- When copying to or from a depth or stencil aspect, the data in buffer
-- memory uses a layout that is a (mostly) tightly packed representation
-- of the depth or stencil data. Specifically:
--
--
--
-- Note
--
-- To copy both the depth and stencil aspects of a depth/stencil format,
-- two entries in pRegions can be used, where one
-- specifies the depth aspect in imageSubresource, and the other
-- specifies the stencil aspect.
--
-- Because depth or stencil aspect buffer to image copies may
-- require format conversions on some implementations, they are not
-- supported on queues that do not support graphics.
--
-- When copying to a depth aspect, and the
-- VK_EXT_depth_range_unrestricted extension is not enabled, the
-- data in buffer memory must be in the range [0,1], or the
-- resulting values are undefined.
--
-- Copies are done layer by layer starting with image layer
-- baseArrayLayer member of imageSubresource.
-- layerCount layers are copied from the source image or to the
-- destination image.
--
-- Valid Usage
--
--
-- - If the calling command’s Image parameter’s format is not a
-- depth/stencil format or a multi-planar format, then
-- bufferOffset must be a multiple of the format’s texel
-- block size
--
--
--
-- - If the calling command’s Image parameter’s format is a
-- multi-planar format, then bufferOffset must be
-- a multiple of the element size of the compatible format for the format
-- and the aspectMask of the imageSubresource as
-- defined in
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-compatible-planes
-- - bufferRowLength must be 0, or greater
-- than or equal to the width member of
-- imageExtent
-- - bufferImageHeight must be 0, or greater
-- than or equal to the height member of
-- imageExtent
-- - imageOffset.x and (imageExtent.width +
-- imageOffset.x) must both be greater than or equal to
-- 0 and less than or equal to the image subresource width where
-- this refers to the width of the plane of the image involved in
-- the copy in the case of a multi-planar format
-- - imageOffset.y and (imageExtent.height +
-- imageOffset.y) must both be greater than or equal to
-- 0 and less than or equal to the image subresource height
-- where this refers to the height of the plane of the image
-- involved in the copy in the case of a multi-planar format
-- - If the calling command’s srcImage
-- (cmdCopyImageToBuffer) or dstImage
-- (cmdCopyBufferToImage) is of type IMAGE_TYPE_1D, then
-- imageOffset.y must be 0 and
-- imageExtent.height must be 1
-- - imageOffset.z and (imageExtent.depth +
-- imageOffset.z) must both be greater than or equal to
-- 0 and less than or equal to the image subresource depth
-- - If the calling command’s srcImage
-- (cmdCopyImageToBuffer) or dstImage
-- (cmdCopyBufferToImage) is of type IMAGE_TYPE_1D or
-- IMAGE_TYPE_2D, then imageOffset.z must be
-- 0 and imageExtent.depth must be
-- 1
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format,
-- bufferRowLength must be a multiple of the compressed
-- texel block width
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format,
-- bufferImageHeight must be a multiple of the compressed
-- texel block height
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format, all
-- members of imageOffset must be a multiple of the
-- corresponding dimensions of the compressed texel block
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format,
-- bufferOffset must be a multiple of the compressed
-- texel block size in bytes
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format,
-- imageExtent.width must be a multiple of the compressed
-- texel block width or (imageExtent.width +
-- imageOffset.x) must equal the image subresource
-- width
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format,
-- imageExtent.height must be a multiple of the
-- compressed texel block height or (imageExtent.height +
-- imageOffset.y) must equal the image subresource
-- height
-- - If the calling command’s Image parameter is a compressed
-- image, or a single-plane, “_422” image format,
-- imageExtent.depth must be a multiple of the compressed
-- texel block depth or (imageExtent.depth +
-- imageOffset.z) must equal the image subresource
-- depth
-- - The aspectMask member of imageSubresource
-- must specify aspects present in the calling command’s
-- Image parameter
-- - If the calling command’s Image parameter’s format is a
-- multi-planar format, then the aspectMask member of
-- imageSubresource must be
-- IMAGE_ASPECT_PLANE_0_BIT, IMAGE_ASPECT_PLANE_1_BIT, or
-- IMAGE_ASPECT_PLANE_2_BIT (with IMAGE_ASPECT_PLANE_2_BIT
-- valid only for image formats with three planes)
-- - The aspectMask member of imageSubresource
-- must only have a single bit set
-- - If the calling command’s Image parameter is of
-- ImageType IMAGE_TYPE_3D, the baseArrayLayer and
-- layerCount members of imageSubresource must
-- be 0 and 1, respectively
--
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- DeviceSize, Extent3D, ImageSubresourceLayers,
-- Offset3D, cmdCopyBufferToImage,
-- cmdCopyImageToBuffer
data BufferImageCopy
BufferImageCopy :: DeviceSize -> Word32 -> Word32 -> ImageSubresourceLayers -> Offset3D -> Extent3D -> BufferImageCopy
-- | bufferOffset is the offset in bytes from the start of the
-- buffer object where the image data is copied from or to.
[$sel:bufferOffset:BufferImageCopy] :: BufferImageCopy -> DeviceSize
-- | bufferRowLength and bufferImageHeight specify in
-- texels a subregion of a larger two- or three-dimensional image in
-- buffer memory, and control the addressing calculations. If either of
-- these values is zero, that aspect of the buffer memory is considered
-- to be tightly packed according to the imageExtent.
[$sel:bufferRowLength:BufferImageCopy] :: BufferImageCopy -> Word32
[$sel:bufferImageHeight:BufferImageCopy] :: BufferImageCopy -> Word32
-- | imageSubresource is a ImageSubresourceLayers used to
-- specify the specific image subresources of the image used for the
-- source or destination image data.
[$sel:imageSubresource:BufferImageCopy] :: BufferImageCopy -> ImageSubresourceLayers
-- | imageOffset selects the initial x, y,
-- z offsets in texels of the sub-region of the source or
-- destination image data.
[$sel:imageOffset:BufferImageCopy] :: BufferImageCopy -> Offset3D
-- | imageExtent is the size in texels of the image to copy in
-- width, height and depth.
[$sel:imageExtent:BufferImageCopy] :: BufferImageCopy -> Extent3D
-- | VkImageResolve - Structure specifying an image resolve operation
--
-- Valid Usage
--
--
-- - The aspectMask member of srcSubresource and
-- dstSubresource must only contain
-- IMAGE_ASPECT_COLOR_BIT
--
--
--
-- - The layerCount member of srcSubresource and
-- dstSubresource must match
-- - If either of the calling command’s srcImage or
-- dstImage parameters are of ImageType
-- IMAGE_TYPE_3D, the baseArrayLayer and
-- layerCount members of both srcSubresource and
-- dstSubresource must be 0 and 1,
-- respectively
-- - srcOffset.x and (extent.width +
-- srcOffset.x) must both be greater than or equal to
-- 0 and less than or equal to the source image subresource
-- width
-- - srcOffset.y and (extent.height +
-- srcOffset.y) must both be greater than or equal to
-- 0 and less than or equal to the source image subresource
-- height
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_1D, then srcOffset.y must be
-- 0 and extent.height must be 1
-- - srcOffset.z and (extent.depth +
-- srcOffset.z) must both be greater than or equal to
-- 0 and less than or equal to the source image subresource
-- depth
-- - If the calling command’s srcImage is of type
-- IMAGE_TYPE_1D or IMAGE_TYPE_2D, then
-- srcOffset.z must be 0 and
-- extent.depth must be 1
-- - dstOffset.x and (extent.width +
-- dstOffset.x) must both be greater than or equal to
-- 0 and less than or equal to the destination image subresource
-- width
-- - dstOffset.y and (extent.height +
-- dstOffset.y) must both be greater than or equal to
-- 0 and less than or equal to the destination image subresource
-- height
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_1D, then dstOffset.y must be
-- 0 and extent.height must be 1
-- - dstOffset.z and (extent.depth +
-- dstOffset.z) must both be greater than or equal to
-- 0 and less than or equal to the destination image subresource
-- depth
-- - If the calling command’s dstImage is of type
-- IMAGE_TYPE_1D or IMAGE_TYPE_2D, then
-- dstOffset.z must be 0 and
-- extent.depth must be 1
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Extent3D, ImageSubresourceLayers, Offset3D,
-- cmdResolveImage
data ImageResolve
ImageResolve :: ImageSubresourceLayers -> Offset3D -> ImageSubresourceLayers -> Offset3D -> Extent3D -> ImageResolve
-- | srcSubresource and dstSubresource are
-- ImageSubresourceLayers structures specifying the image
-- subresources of the images used for the source and destination image
-- data, respectively. Resolve of depth/stencil images is not supported.
[$sel:srcSubresource:ImageResolve] :: ImageResolve -> ImageSubresourceLayers
-- | srcOffset and dstOffset select the initial
-- x, y, and z offsets in texels of the
-- sub-regions of the source and destination image data.
[$sel:srcOffset:ImageResolve] :: ImageResolve -> Offset3D
[$sel:dstSubresource:ImageResolve] :: ImageResolve -> ImageSubresourceLayers
[$sel:dstOffset:ImageResolve] :: ImageResolve -> Offset3D
-- | extent is the size in texels of the source image to resolve
-- in width, height and depth.
[$sel:extent:ImageResolve] :: ImageResolve -> Extent3D
-- | VkRenderPassBeginInfo - Structure specifying render pass begin info
--
-- Description
--
-- renderArea is the render area that is affected by the render
-- pass instance. The effects of attachment load, store and multisample
-- resolve operations are restricted to the pixels whose x and y
-- coordinates fall within the render area on all attachments. The render
-- area extends to all layers of framebuffer. The application
-- must ensure (using scissor if necessary) that all rendering is
-- contained within the render area. The render area, after any transform
-- specified by
-- RenderPassTransformBeginInfoQCOM::transform is
-- applied, must be contained within the framebuffer dimensions.
--
-- If render pass transform is enabled, then renderArea
-- must equal the framebuffer pre-transformed dimensions. After
-- renderArea has been transformed by
-- RenderPassTransformBeginInfoQCOM::transform, the
-- resulting render area must be equal to the framebuffer
-- dimensions.
--
-- When multiview is enabled, the resolve operation at the end of a
-- subpass applies to all views in the view mask.
--
-- Note
--
-- There may be a performance cost for using a render area smaller
-- than the framebuffer, unless it matches the render area granularity
-- for the render pass.
--
-- Valid Usage
--
--
-- - clearValueCount must be greater than the largest
-- attachment index in renderPass that specifies a
-- loadOp (or stencilLoadOp, if the attachment has a
-- depth/stencil format) of ATTACHMENT_LOAD_OP_CLEAR
--
--
--
-- - renderPass must be compatible with the
-- renderPass member of the FramebufferCreateInfo
-- structure specified when creating framebuffer
-- - If the pNext chain does not contain
-- DeviceGroupRenderPassBeginInfo or its
-- deviceRenderAreaCount member is equal to 0,
-- renderArea.offset.x must be greater than or equal to
-- 0
-- - If the pNext chain does not contain
-- DeviceGroupRenderPassBeginInfo or its
-- deviceRenderAreaCount member is equal to 0,
-- renderArea.offset.y must be greater than or equal to
-- 0
-- - If the pNext chain does not contain
-- DeviceGroupRenderPassBeginInfo or its
-- deviceRenderAreaCount member is equal to 0,
-- renderArea.offset.x + renderArea.offset.width
-- must be less than or equal to
-- FramebufferCreateInfo::width the framebuffer
-- was created with
-- - If the pNext chain does not contain
-- DeviceGroupRenderPassBeginInfo or its
-- deviceRenderAreaCount member is equal to 0,
-- renderArea.offset.y + renderArea.offset.height
-- must be less than or equal to
-- FramebufferCreateInfo::height the framebuffer
-- was created with
-- - If the pNext chain contains
-- DeviceGroupRenderPassBeginInfo, the offset.x member of
-- each element of pDeviceRenderAreas must be greater
-- than or equal to 0
-- - If the pNext chain contains
-- DeviceGroupRenderPassBeginInfo, the offset.y member of
-- each element of pDeviceRenderAreas must be greater
-- than or equal to 0
-- - If the pNext chain contains
-- DeviceGroupRenderPassBeginInfo, offset.x +
-- offset.width of each element of pDeviceRenderAreas
-- must be less than or equal to
-- FramebufferCreateInfo::width the framebuffer
-- was created with
-- - If the pNext chain contains
-- DeviceGroupRenderPassBeginInfo, offset.y +
-- offset.height of each element of pDeviceRenderAreas
-- must be less than or equal to
-- FramebufferCreateInfo::height the framebuffer
-- was created with
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that did not
-- include FRAMEBUFFER_CREATE_IMAGELESS_BIT, and the
-- pNext chain includes a RenderPassAttachmentBeginInfo
-- structure, its attachmentCount must be zero
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, the attachmentCount
-- of a RenderPassAttachmentBeginInfo structure included in the
-- pNext chain must be equal to the value of
-- FramebufferAttachmentsCreateInfo::attachmentImageInfoCount
-- used to create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must have been
-- created on the same Device as framebuffer and
-- renderPass
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a value of
-- ImageCreateInfo::flags equal to the flags
-- member of the corresponding element of
-- FramebufferAttachmentsCreateInfoKHR::pAttachments used
-- to create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a value of
-- ImageCreateInfo::usage equal to the usage
-- member of the corresponding element of
-- FramebufferAttachmentsCreateInfo::pAttachments used to
-- create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView with a width equal to the width member of
-- the corresponding element of
-- FramebufferAttachmentsCreateInfo::pAttachments used to
-- create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView with a height equal to the height member of
-- the corresponding element of
-- FramebufferAttachmentsCreateInfo::pAttachments used to
-- create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a value of
-- ImageViewCreateInfo::subresourceRange.layerCount equal
-- to the layerCount member of the corresponding element of
-- FramebufferAttachmentsCreateInfo::pAttachments used to
-- create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a value of
-- ImageFormatListCreateInfo::viewFormatCount equal to
-- the viewFormatCount member of the corresponding element of
-- FramebufferAttachmentsCreateInfo::pAttachments used to
-- create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a set of elements in
-- ImageFormatListCreateInfo::pViewFormats equal to the
-- set of elements in the pViewFormats member of the
-- corresponding element of
-- FramebufferAttachmentsCreateInfo::pAttachments used to
-- create framebuffer
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a value of
-- ImageViewCreateInfo::format equal to the corresponding
-- value of AttachmentDescription::format in
-- renderPass
-- - If framebuffer was created with a
-- FramebufferCreateInfo::flags value that included
-- FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the
-- pAttachments member of a RenderPassAttachmentBeginInfo
-- structure included in the pNext chain must be a
-- ImageView of an image created with a value of
-- ImageCreateInfo::samples equal to the corresponding
-- value of AttachmentDescription::samples in
-- renderPass
-- - If the pNext chain includes
-- RenderPassTransformBeginInfoQCOM,
-- renderArea::offset must equal (0,0)
-- - If the pNext chain includes
-- RenderPassTransformBeginInfoQCOM,
-- renderArea::extent transformed by
-- RenderPassTransformBeginInfoQCOM::transform
-- must equal the framebuffer dimensions
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ClearValue, Framebuffer, Rect2D,
-- RenderPass, StructureType, cmdBeginRenderPass,
-- cmdBeginRenderPass2, cmdBeginRenderPass2KHR
data RenderPassBeginInfo (es :: [Type])
RenderPassBeginInfo :: Chain es -> RenderPass -> Framebuffer -> Rect2D -> Vector ClearValue -> RenderPassBeginInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:RenderPassBeginInfo] :: RenderPassBeginInfo (es :: [Type]) -> Chain es
-- | renderPass is the render pass to begin an instance of.
[$sel:renderPass:RenderPassBeginInfo] :: RenderPassBeginInfo (es :: [Type]) -> RenderPass
-- | framebuffer is the framebuffer containing the attachments
-- that are used with the render pass.
[$sel:framebuffer:RenderPassBeginInfo] :: RenderPassBeginInfo (es :: [Type]) -> Framebuffer
-- | renderArea is the render area that is affected by the render
-- pass instance, and is described in more detail below.
[$sel:renderArea:RenderPassBeginInfo] :: RenderPassBeginInfo (es :: [Type]) -> Rect2D
-- | pClearValues is a pointer to an array of
-- clearValueCount ClearValue structures that contains
-- clear values for each attachment, if the attachment uses a
-- loadOp value of ATTACHMENT_LOAD_OP_CLEAR or if the
-- attachment has a depth/stencil format and uses a
-- stencilLoadOp value of ATTACHMENT_LOAD_OP_CLEAR. The
-- array is indexed by attachment number. Only elements corresponding to
-- cleared attachments are used. Other elements of pClearValues
-- are ignored.
[$sel:clearValues:RenderPassBeginInfo] :: RenderPassBeginInfo (es :: [Type]) -> Vector ClearValue
-- | VkClearDepthStencilValue - Structure specifying a clear depth stencil
-- value
--
-- Valid Usage
--
--
-- - Unless the VK_EXT_depth_range_unrestricted extension is
-- enabled depth must be between 0.0 and
-- 1.0, inclusive
--
--
-- See Also
--
-- ClearValue, cmdClearDepthStencilImage
data ClearDepthStencilValue
ClearDepthStencilValue :: Float -> Word32 -> ClearDepthStencilValue
-- | depth is the clear value for the depth aspect of the
-- depth/stencil attachment. It is a floating-point value which is
-- automatically converted to the attachment’s format.
[$sel:depth:ClearDepthStencilValue] :: ClearDepthStencilValue -> Float
-- | stencil is the clear value for the stencil aspect of the
-- depth/stencil attachment. It is a 32-bit integer value which is
-- converted to the attachment’s format by taking the appropriate number
-- of LSBs.
[$sel:stencil:ClearDepthStencilValue] :: ClearDepthStencilValue -> Word32
-- | VkClearAttachment - Structure specifying a clear attachment
--
-- Description
--
-- No memory barriers are needed between cmdClearAttachments and
-- preceding or subsequent draw or attachment clear commands in the same
-- subpass.
--
-- The cmdClearAttachments command is not affected by the bound
-- pipeline state.
--
-- Attachments can also be cleared at the beginning of a render
-- pass instance by setting loadOp (or stencilLoadOp)
-- of AttachmentDescription to ATTACHMENT_LOAD_OP_CLEAR, as
-- described for createRenderPass.
--
-- Valid Usage
--
--
--
--
-- - aspectMask must not include
-- IMAGE_ASPECT_METADATA_BIT
-- - aspectMask must not include
-- VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT for any index
-- i
-- - clearValue must be a valid ClearValue
-- union
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - aspectMask must not be 0
--
--
-- See Also
--
-- ClearValue, ImageAspectFlags, cmdClearAttachments
data ClearAttachment
ClearAttachment :: ImageAspectFlags -> Word32 -> ClearValue -> ClearAttachment
-- | aspectMask is a mask selecting the color, depth and/or
-- stencil aspects of the attachment to be cleared.
[$sel:aspectMask:ClearAttachment] :: ClearAttachment -> ImageAspectFlags
-- | colorAttachment is only meaningful if
-- IMAGE_ASPECT_COLOR_BIT is set in aspectMask, in which
-- case it is an index to the pColorAttachments array in the
-- SubpassDescription structure of the current subpass which
-- selects the color attachment to clear.
[$sel:colorAttachment:ClearAttachment] :: ClearAttachment -> Word32
-- | clearValue is the color or depth/stencil value to clear the
-- attachment to, as described in Clear Values below.
[$sel:clearValue:ClearAttachment] :: ClearAttachment -> ClearValue
data ClearColorValue
Float32 :: (Float, Float, Float, Float) -> ClearColorValue
Int32 :: (Int32, Int32, Int32, Int32) -> ClearColorValue
Uint32 :: (Word32, Word32, Word32, Word32) -> ClearColorValue
data ClearValue
Color :: ClearColorValue -> ClearValue
DepthStencil :: ClearDepthStencilValue -> ClearValue
-- | VkIndexType - Type of index buffer indices
--
-- See Also
--
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- BindIndexBufferIndirectCommandNV, GeometryTrianglesNV,
-- IndirectCommandsLayoutTokenNV, cmdBindIndexBuffer
newtype IndexType
IndexType :: Int32 -> IndexType
-- | INDEX_TYPE_UINT16 specifies that indices are 16-bit unsigned
-- integer values.
pattern INDEX_TYPE_UINT16 :: IndexType
-- | INDEX_TYPE_UINT32 specifies that indices are 32-bit unsigned
-- integer values.
pattern INDEX_TYPE_UINT32 :: IndexType
-- | INDEX_TYPE_UINT8_EXT specifies that indices are 8-bit unsigned
-- integer values.
pattern INDEX_TYPE_UINT8_EXT :: IndexType
-- | INDEX_TYPE_NONE_KHR specifies that no indices are provided.
pattern INDEX_TYPE_NONE_KHR :: IndexType
-- | VkSubpassContents - Specify how commands in the first subpass of a
-- render pass are provided
--
-- See Also
--
-- SubpassBeginInfo, cmdBeginRenderPass,
-- cmdNextSubpass
newtype SubpassContents
SubpassContents :: Int32 -> SubpassContents
-- | SUBPASS_CONTENTS_INLINE specifies that the contents of the
-- subpass will be recorded inline in the primary command buffer, and
-- secondary command buffers must not be executed within the
-- subpass.
pattern SUBPASS_CONTENTS_INLINE :: SubpassContents
-- | SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS specifies that the
-- contents are recorded in secondary command buffers that will be called
-- from the primary command buffer, and cmdExecuteCommands is the
-- only valid command on the command buffer until cmdNextSubpass
-- or cmdEndRenderPass.
pattern SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS :: SubpassContents
-- | VkStencilFaceFlagBits - Bitmask specifying sets of stencil state for
-- which to update the compare mask
--
-- See Also
--
-- StencilFaceFlags
newtype StencilFaceFlagBits
StencilFaceFlagBits :: Flags -> StencilFaceFlagBits
-- | STENCIL_FACE_FRONT_BIT specifies that only the front set of
-- stencil state is updated.
pattern STENCIL_FACE_FRONT_BIT :: StencilFaceFlagBits
-- | STENCIL_FACE_BACK_BIT specifies that only the back set of
-- stencil state is updated.
pattern STENCIL_FACE_BACK_BIT :: StencilFaceFlagBits
-- | STENCIL_FACE_FRONT_AND_BACK is the combination of
-- STENCIL_FACE_FRONT_BIT and STENCIL_FACE_BACK_BIT, and
-- specifies that both sets of stencil state are updated.
pattern STENCIL_FACE_FRONT_AND_BACK :: StencilFaceFlagBits
type StencilFaceFlags = StencilFaceFlagBits
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ClearValue
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ClearColorValue
instance GHC.Classes.Eq Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance GHC.Classes.Eq Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance GHC.Classes.Eq Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ClearRect
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ClearRect
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ImageCopy
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ImageCopy
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ImageBlit
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ImageBlit
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.BufferImageCopy
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.BufferImageCopy
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ImageResolve
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ImageResolve
instance GHC.Generics.Generic (Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo es)
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance GHC.Generics.Generic Vulkan.Core10.CommandBufferBuilding.ClearAttachment
instance GHC.Show.Show Vulkan.Core10.CommandBufferBuilding.ClearAttachment
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.CommandBufferBuilding.RenderPassBeginInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ClearAttachment
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ClearAttachment
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ClearValue
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ClearValue
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ClearColorValue
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ClearColorValue
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance Foreign.Storable.Storable Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ClearDepthStencilValue
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ImageResolve
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.ImageResolve
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ImageResolve
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.BufferImageCopy
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.BufferImageCopy
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.BufferImageCopy
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ImageBlit
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.ImageBlit
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ImageBlit
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ImageCopy
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.ImageCopy
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ImageCopy
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance Foreign.Storable.Storable Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.BufferCopy
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance Foreign.Storable.Storable Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ImageSubresourceLayers
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBufferBuilding.ClearRect
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBufferBuilding.ClearRect
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBufferBuilding.ClearRect
module Vulkan.Extensions.VK_EXT_custom_border_color
-- | VkSamplerCustomBorderColorCreateInfoEXT - Structure specifying custom
-- border color
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - format must be a valid Format value
--
--
-- See Also
--
-- ClearColorValue, Format, StructureType
data SamplerCustomBorderColorCreateInfoEXT
SamplerCustomBorderColorCreateInfoEXT :: ClearColorValue -> Format -> SamplerCustomBorderColorCreateInfoEXT
-- | customBorderColor is a ClearColorValue representing
-- the desired custom sampler border color.
[$sel:customBorderColor:SamplerCustomBorderColorCreateInfoEXT] :: SamplerCustomBorderColorCreateInfoEXT -> ClearColorValue
-- | format is a Format representing the format of the
-- sampled image view(s). This field may be FORMAT_UNDEFINED if
-- the customBorderColorWithoutFormat feature is enabled.
[$sel:format:SamplerCustomBorderColorCreateInfoEXT] :: SamplerCustomBorderColorCreateInfoEXT -> Format
-- | VkPhysicalDeviceCustomBorderColorPropertiesEXT - Structure describing
-- whether custom border colors can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceCustomBorderColorPropertiesEXT
-- structure describe the following features:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType
data PhysicalDeviceCustomBorderColorPropertiesEXT
PhysicalDeviceCustomBorderColorPropertiesEXT :: Word32 -> PhysicalDeviceCustomBorderColorPropertiesEXT
-- | maxCustomBorderColorSamplers indicates the maximum number of
-- samplers with custom border colors which can simultaneously
-- exist on a device.
[$sel:maxCustomBorderColorSamplers:PhysicalDeviceCustomBorderColorPropertiesEXT] :: PhysicalDeviceCustomBorderColorPropertiesEXT -> Word32
-- | VkPhysicalDeviceCustomBorderColorFeaturesEXT - Structure describing
-- whether custom border colors can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceCustomBorderColorFeaturesEXT
-- structure describe the following features:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceCustomBorderColorFeaturesEXT
PhysicalDeviceCustomBorderColorFeaturesEXT :: Bool -> Bool -> PhysicalDeviceCustomBorderColorFeaturesEXT
-- | customBorderColors indicates that the implementation supports
-- providing a borderColor value with one of the following
-- values at sampler creation time:
--
--
[$sel:customBorderColors:PhysicalDeviceCustomBorderColorFeaturesEXT] :: PhysicalDeviceCustomBorderColorFeaturesEXT -> Bool
-- | customBorderColorWithoutFormat indicates that explicit
-- formats are not required for custom border colors and the value of the
-- format member of the
-- SamplerCustomBorderColorCreateInfoEXT structure may be
-- FORMAT_UNDEFINED. If this feature bit is not set, applications
-- must provide the Format of the image view(s) being
-- sampled by this sampler in the format member of the
-- SamplerCustomBorderColorCreateInfoEXT structure.
[$sel:customBorderColorWithoutFormat:PhysicalDeviceCustomBorderColorFeaturesEXT] :: PhysicalDeviceCustomBorderColorFeaturesEXT -> Bool
type EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION = 12
pattern EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION :: forall a. Integral a => a
type EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME = "VK_EXT_custom_border_color"
pattern EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance GHC.Classes.Eq Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_custom_border_color.SamplerCustomBorderColorCreateInfoEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_custom_border_color.SamplerCustomBorderColorCreateInfoEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance GHC.Generics.Generic Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance GHC.Show.Show Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorFeaturesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance Vulkan.CStruct.FromCStruct Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance Foreign.Storable.Storable Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_custom_border_color.PhysicalDeviceCustomBorderColorPropertiesEXT
instance Vulkan.CStruct.ToCStruct Vulkan.Extensions.VK_EXT_custom_border_color.SamplerCustomBorderColorCreateInfoEXT
instance Vulkan.Zero.Zero Vulkan.Extensions.VK_EXT_custom_border_color.SamplerCustomBorderColorCreateInfoEXT
module Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2
-- | vkCreateRenderPass2 - Create a new render pass object
--
-- Description
--
-- This command is functionally identical to createRenderPass, but
-- includes extensible sub-structures that include sType and
-- pNext parameters, allowing them to be more easily extended.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- RenderPassCreateInfo2 structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pRenderPass must be a valid pointer to a
-- RenderPass handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Device, RenderPass,
-- RenderPassCreateInfo2
createRenderPass2 :: forall a io. (Extendss RenderPassCreateInfo2 a, PokeChain a, MonadIO io) => Device -> RenderPassCreateInfo2 a -> ("allocator" ::: Maybe AllocationCallbacks) -> io RenderPass
-- | vkCmdBeginRenderPass2 - Begin a new render pass
--
-- Description
--
-- After beginning a render pass instance, the command buffer is ready to
-- record the commands for the first subpass of that render pass.
--
-- Valid Usage
--
--
-- - Both the framebuffer and renderPass members of
-- pRenderPassBegin must have been created on the same
-- Device that commandBuffer was allocated on
--
--
--
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_COLOR_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL then the
-- corresponding attachment image view of the framebuffer specified in
-- the framebuffer member of pRenderPassBegin
-- must have been created with a usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If any of the stencilInitialLayout or
-- stencilFinalLayout member of the
-- AttachmentDescriptionStencilLayout structures or the
-- stencilLayout member of the
-- AttachmentReferenceStencilLayout structures specified when
-- creating the render pass specified in the renderPass member
-- of pRenderPassBegin is
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_SAMPLED_BIT or
-- IMAGE_USAGE_INPUT_ATTACHMENT_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_TRANSFER_SRC_BIT
-- - If any of the initialLayout or finalLayout
-- member of the AttachmentDescription structures or the
-- layout member of the AttachmentReference structures
-- specified when creating the render pass specified in the
-- renderPass member of pRenderPassBegin is
-- IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL then the corresponding
-- attachment image view of the framebuffer specified in the
-- framebuffer member of pRenderPassBegin must
-- have been created with a usage value including
-- IMAGE_USAGE_TRANSFER_DST_BIT
-- - If any of the initialLayout members of the
-- AttachmentDescription structures specified when creating the
-- render pass specified in the renderPass member of
-- pRenderPassBegin is not IMAGE_LAYOUT_UNDEFINED, then
-- each such initialLayout must be equal to the current
-- layout of the corresponding attachment image subresource of the
-- framebuffer specified in the framebuffer member of
-- pRenderPassBegin
-- - The srcStageMask and dstStageMask members of any
-- element of the pDependencies member of
-- RenderPassCreateInfo used to create renderPass
-- must be supported by the capabilities of the queue family
-- identified by the queueFamilyIndex member of the
-- CommandPoolCreateInfo used to create the command pool which
-- commandBuffer was allocated from
-- - For any attachment in framebuffer that is used by
-- renderPass and is bound to memory locations that are also
-- bound to another attachment used by renderPass, and if at
-- least one of those uses causes either attachment to be written to,
-- both attachments must have had the
-- ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT set
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pRenderPassBegin must be a valid pointer to a
-- valid RenderPassBeginInfo structure
-- - pSubpassBeginInfo must be a valid pointer to a
-- valid SubpassBeginInfo structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called outside of a render pass
-- instance
-- - commandBuffer must be a primary
-- CommandBuffer
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, RenderPassBeginInfo,
-- SubpassBeginInfo
cmdBeginRenderPass2 :: forall a io. (Extendss RenderPassBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> RenderPassBeginInfo a -> SubpassBeginInfo -> io ()
-- | This function will call the supplied action between calls to
-- cmdBeginRenderPass2 and cmdEndRenderPass2
--
-- Note that cmdEndRenderPass2 is *not* called if an exception is
-- thrown by the inner action.
cmdUseRenderPass2 :: forall a io r. (Extendss RenderPassBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> RenderPassBeginInfo a -> SubpassBeginInfo -> SubpassEndInfo -> io r -> io r
-- | vkCmdNextSubpass2 - Transition to the next subpass of a render pass
--
-- Description
--
-- cmdNextSubpass2 is semantically identical to
-- cmdNextSubpass, except that it is extensible, and that
-- contents is provided as part of an extensible structure
-- instead of as a flat parameter.
--
-- Valid Usage
--
--
-- - The current subpass index must be less than the number of
-- subpasses in the render pass minus one
--
--
--
-- - This command must not be recorded when transform feedback
-- is active
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pSubpassBeginInfo must be a valid pointer to a
-- valid SubpassBeginInfo structure
-- - pSubpassEndInfo must be a valid pointer to a valid
-- SubpassEndInfo structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - commandBuffer must be a primary
-- CommandBuffer
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, SubpassBeginInfo, SubpassEndInfo
cmdNextSubpass2 :: forall io. MonadIO io => CommandBuffer -> SubpassBeginInfo -> SubpassEndInfo -> io ()
-- | vkCmdEndRenderPass2 - End the current render pass
--
-- Description
--
-- cmdEndRenderPass2 is semantically identical to
-- cmdEndRenderPass, except that it is extensible.
--
-- Valid Usage
--
--
-- - The current subpass index must be equal to the number of
-- subpasses in the render pass minus one
--
--
--
-- - This command must not be recorded when transform feedback
-- is active
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pSubpassEndInfo must be a valid pointer to a valid
-- SubpassEndInfo structure
-- - commandBuffer must be in the recording
-- state
-- - The CommandPool that commandBuffer was allocated
-- from must support graphics operations
-- - This command must only be called inside of a render pass
-- instance
-- - commandBuffer must be a primary
-- CommandBuffer
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Command Properties
--
-- '
--
-- TODO: table
--
-- See Also
--
-- CommandBuffer, SubpassEndInfo
cmdEndRenderPass2 :: forall io. MonadIO io => CommandBuffer -> SubpassEndInfo -> io ()
-- | VkAttachmentDescription2 - Structure specifying an attachment
-- description
--
-- Description
--
-- Parameters defined by this structure with the same name as those in
-- AttachmentDescription have the identical effect to those
-- parameters.
--
-- If the separateDepthStencilLayouts feature is enabled, and
-- format is a depth/stencil format, initialLayout and
-- finalLayout can be set to a layout that only specifies
-- the layout of the depth aspect.
--
-- If format is a depth/stencil format, and
-- initialLayout only specifies the initial layout of the depth
-- aspect of the attachment, the initial layout of the stencil aspect is
-- specified by the stencilInitialLayout member of a
-- AttachmentDescriptionStencilLayout structure included in the
-- pNext chain. Otherwise, initialLayout describes the
-- initial layout for all relevant image aspects.
--
-- If format is a depth/stencil format, and finalLayout
-- only specifies the final layout of the depth aspect of the attachment,
-- the final layout of the stencil aspect is specified by the
-- stencilFinalLayout member of a
-- AttachmentDescriptionStencilLayout structure included in the
-- pNext chain. Otherwise, finalLayout describes the
-- final layout for all relevant image aspects.
--
-- Valid Usage
--
--
--
--
-- - If format is a color format, initialLayout
-- must not be
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - If format is a depth/stencil format,
-- initialLayout must not be
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-- - If format is a color format, finalLayout
-- must not be
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - If format is a depth/stencil format, finalLayout
-- must not be IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-- - If the separateDepthStencilLayouts feature is not enabled,
-- initialLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If the separateDepthStencilLayouts feature is not enabled,
-- finalLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a color format, initialLayout
-- must not be IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a color format, finalLayout
-- must not be IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes both
-- depth and stencil aspects, and initialLayout is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, the pNext chain
-- must include a AttachmentDescriptionStencilLayout
-- structure
-- - If format is a depth/stencil format which includes both
-- depth and stencil aspects, and finalLayout is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, the pNext chain
-- must include a AttachmentDescriptionStencilLayout
-- structure
-- - If format is a depth/stencil format which includes only
-- the depth aspect, initialLayout must not be
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the depth aspect, finalLayout must not be
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the stencil aspect, initialLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
-- - If format is a depth/stencil format which includes only
-- the stencil aspect, finalLayout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AttachmentDescriptionFlags, AttachmentLoadOp,
-- AttachmentStoreOp, Format, ImageLayout,
-- RenderPassCreateInfo2, SampleCountFlagBits,
-- StructureType
data AttachmentDescription2 (es :: [Type])
AttachmentDescription2 :: Chain es -> AttachmentDescriptionFlags -> Format -> SampleCountFlagBits -> AttachmentLoadOp -> AttachmentStoreOp -> AttachmentLoadOp -> AttachmentStoreOp -> ImageLayout -> ImageLayout -> AttachmentDescription2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> Chain es
-- | flags is a bitmask of AttachmentDescriptionFlagBits
-- specifying additional properties of the attachment.
[$sel:flags:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> AttachmentDescriptionFlags
-- | format is a Format value specifying the format of the
-- image that will be used for the attachment.
[$sel:format:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> Format
-- | samples is the number of samples of the image as defined in
-- SampleCountFlagBits.
[$sel:samples:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> SampleCountFlagBits
-- | loadOp is a AttachmentLoadOp value specifying how the
-- contents of color and depth components of the attachment are treated
-- at the beginning of the subpass where it is first used.
[$sel:loadOp:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> AttachmentLoadOp
-- | storeOp is a AttachmentStoreOp value specifying how
-- the contents of color and depth components of the attachment are
-- treated at the end of the subpass where it is last used.
[$sel:storeOp:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> AttachmentStoreOp
-- | stencilLoadOp is a AttachmentLoadOp value specifying
-- how the contents of stencil components of the attachment are treated
-- at the beginning of the subpass where it is first used.
[$sel:stencilLoadOp:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> AttachmentLoadOp
-- | stencilStoreOp is a AttachmentStoreOp value specifying
-- how the contents of stencil components of the attachment are treated
-- at the end of the last subpass where it is used.
[$sel:stencilStoreOp:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> AttachmentStoreOp
-- | initialLayout is the layout the attachment image subresource
-- will be in when a render pass instance begins.
[$sel:initialLayout:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> ImageLayout
-- | finalLayout is the layout the attachment image subresource
-- will be transitioned to when a render pass instance ends.
[$sel:finalLayout:AttachmentDescription2] :: AttachmentDescription2 (es :: [Type]) -> ImageLayout
-- | VkAttachmentReference2 - Structure specifying an attachment reference
--
-- Description
--
-- Parameters defined by this structure with the same name as those in
-- AttachmentReference have the identical effect to those
-- parameters.
--
-- aspectMask is ignored when this structure is used to describe
-- anything other than an input attachment reference.
--
-- If the separateDepthStencilLayouts feature is enabled, and
-- attachment has a depth/stencil format, layout
-- can be set to a layout that only specifies the layout of the
-- depth aspect.
--
-- If layout only specifies the layout of the depth aspect of
-- the attachment, the layout of the stencil aspect is specified by the
-- stencilLayout member of a
-- AttachmentReferenceStencilLayout structure included in the
-- pNext chain. Otherwise, layout describes the layout
-- for all relevant image aspects.
--
-- Valid Usage
--
--
--
--
-- - If attachment is not ATTACHMENT_UNUSED, and
-- aspectMask does not include IMAGE_ASPECT_STENCIL_BIT
-- or IMAGE_ASPECT_DEPTH_BIT, layout must not be
-- IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - If attachment is not ATTACHMENT_UNUSED, and
-- aspectMask does not include IMAGE_ASPECT_COLOR_BIT,
-- layout must not be
-- IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-- - If the separateDepthStencilLayouts feature is not enabled,
-- and attachment is not ATTACHMENT_UNUSED,
-- layout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
-- - If attachment is not ATTACHMENT_UNUSED, and
-- aspectMask includes IMAGE_ASPECT_COLOR_BIT,
-- layout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
-- - If attachment is not ATTACHMENT_UNUSED, and
-- aspectMask includes both IMAGE_ASPECT_DEPTH_BIT and
-- IMAGE_ASPECT_STENCIL_BIT, and layout is
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, the pNext chain
-- must include a AttachmentReferenceStencilLayout
-- structure
-- - If attachment is not ATTACHMENT_UNUSED, and
-- aspectMask includes only IMAGE_ASPECT_DEPTH_BIT then
-- layout must not be
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-- - If attachment is not ATTACHMENT_UNUSED, and
-- aspectMask includes only IMAGE_ASPECT_STENCIL_BIT then
-- layout must not be
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- ImageAspectFlags, ImageLayout, StructureType,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve
data AttachmentReference2 (es :: [Type])
AttachmentReference2 :: Chain es -> Word32 -> ImageLayout -> ImageAspectFlags -> AttachmentReference2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:AttachmentReference2] :: AttachmentReference2 (es :: [Type]) -> Chain es
-- | attachment is either an integer value identifying an
-- attachment at the corresponding index in
-- RenderPassCreateInfo::pAttachments, or
-- ATTACHMENT_UNUSED to signify that this attachment is not used.
[$sel:attachment:AttachmentReference2] :: AttachmentReference2 (es :: [Type]) -> Word32
-- | layout is a ImageLayout value specifying the layout
-- the attachment uses during the subpass.
[$sel:layout:AttachmentReference2] :: AttachmentReference2 (es :: [Type]) -> ImageLayout
-- | aspectMask is a mask of which aspect(s) can be
-- accessed within the specified subpass as an input attachment.
[$sel:aspectMask:AttachmentReference2] :: AttachmentReference2 (es :: [Type]) -> ImageAspectFlags
-- | VkSubpassDescription2 - Structure specifying a subpass description
--
-- Description
--
-- Parameters defined by this structure with the same name as those in
-- SubpassDescription have the identical effect to those
-- parameters.
--
-- viewMask has the same effect for the described subpass as
-- RenderPassMultiviewCreateInfo::pViewMasks has on each
-- corresponding subpass.
--
-- Valid Usage
--
--
--
--
-- - colorAttachmentCount must be less than or equal to
-- PhysicalDeviceLimits::maxColorAttachments
-- - If the first use of an attachment in this render pass is as an
-- input attachment, and the attachment is not also used as a color or
-- depth/stencil attachment in the same subpass, then loadOp
-- must not be ATTACHMENT_LOAD_OP_CLEAR
-- - If pResolveAttachments is not NULL, for each
-- resolve attachment that does not have the value
-- ATTACHMENT_UNUSED, the corresponding color attachment
-- must not have the value ATTACHMENT_UNUSED
-- - If pResolveAttachments is not NULL, for each
-- resolve attachment that is not ATTACHMENT_UNUSED, the
-- corresponding color attachment must not have a sample count of
-- SAMPLE_COUNT_1_BIT
-- - If pResolveAttachments is not NULL, each resolve
-- attachment that is not ATTACHMENT_UNUSED must have a
-- sample count of SAMPLE_COUNT_1_BIT
-- - Any given element of pResolveAttachments must have
-- the same Format as its corresponding color attachment
-- - All attachments in pColorAttachments that are not
-- ATTACHMENT_UNUSED must have the same sample count
-- - All attachments in pInputAttachments that are not
-- ATTACHMENT_UNUSED must have formats whose features
-- contain at least one of FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - All attachments in pColorAttachments that are not
-- ATTACHMENT_UNUSED must have formats whose features
-- contain FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
-- - All attachments in pResolveAttachments that are not
-- ATTACHMENT_UNUSED must have formats whose features
-- contain FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
-- - If pDepthStencilAttachment is not NULL and the
-- attachment is not ATTACHMENT_UNUSED then it must have a
-- format whose features contain
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If the VK_AMD_mixed_attachment_samples extension is
-- enabled, all attachments in pColorAttachments that are not
-- ATTACHMENT_UNUSED must have a sample count that is
-- smaller than or equal to the sample count of
-- pDepthStencilAttachment if it is not
-- ATTACHMENT_UNUSED
-- - If neither the VK_AMD_mixed_attachment_samples nor the
-- VK_NV_framebuffer_mixed_samples extensions are enabled, and
-- if pDepthStencilAttachment is not ATTACHMENT_UNUSED
-- and any attachments in pColorAttachments are not
-- ATTACHMENT_UNUSED, they must have the same sample
-- count
-- - The attachment member of any element of
-- pPreserveAttachments must not be
-- ATTACHMENT_UNUSED
-- - Any given element of pPreserveAttachments must not
-- also be an element of any other member of the subpass description
-- - If any attachment is used by more than one
-- AttachmentReference member, then each use must use the
-- same layout
-- - If flags includes
-- SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX, it
-- must also include
-- SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX
-- - If the attachment member of any element of
-- pInputAttachments is not ATTACHMENT_UNUSED, then the
-- aspectMask member must be a valid combination of
-- ImageAspectFlagBits
-- - If the attachment member of any element of
-- pInputAttachments is not ATTACHMENT_UNUSED, then the
-- aspectMask member must not be 0
-- - If the attachment member of any element of
-- pInputAttachments is not ATTACHMENT_UNUSED, then the
-- aspectMask member must not include
-- IMAGE_ASPECT_METADATA_BIT
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - flags must be a valid combination of
-- SubpassDescriptionFlagBits values
-- - pipelineBindPoint must be a valid
-- PipelineBindPoint value
-- - If inputAttachmentCount is not 0,
-- pInputAttachments must be a valid pointer to an array
-- of inputAttachmentCount valid AttachmentReference2
-- structures
-- - If colorAttachmentCount is not 0,
-- pColorAttachments must be a valid pointer to an array
-- of colorAttachmentCount valid AttachmentReference2
-- structures
-- - If colorAttachmentCount is not 0, and
-- pResolveAttachments is not NULL,
-- pResolveAttachments must be a valid pointer to an
-- array of colorAttachmentCount valid
-- AttachmentReference2 structures
-- - If pDepthStencilAttachment is not NULL,
-- pDepthStencilAttachment must be a valid pointer to a
-- valid AttachmentReference2 structure
-- - If preserveAttachmentCount is not 0,
-- pPreserveAttachments must be a valid pointer to an
-- array of preserveAttachmentCount uint32_t
-- values
--
--
-- See Also
--
-- AttachmentReference2, PipelineBindPoint,
-- RenderPassCreateInfo2, StructureType,
-- SubpassDescriptionFlags
data SubpassDescription2 (es :: [Type])
SubpassDescription2 :: Chain es -> SubpassDescriptionFlags -> PipelineBindPoint -> Word32 -> Vector (SomeStruct AttachmentReference2) -> Vector (SomeStruct AttachmentReference2) -> Vector (SomeStruct AttachmentReference2) -> Maybe (SomeStruct AttachmentReference2) -> Vector Word32 -> SubpassDescription2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Chain es
-- | flags is a bitmask of SubpassDescriptionFlagBits
-- specifying usage of the subpass.
[$sel:flags:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> SubpassDescriptionFlags
-- | pipelineBindPoint is a PipelineBindPoint value
-- specifying the pipeline type supported for this subpass.
[$sel:pipelineBindPoint:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> PipelineBindPoint
-- | viewMask is a bitfield of view indices describing which views
-- rendering is broadcast to in this subpass, when multiview is enabled.
[$sel:viewMask:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Word32
-- | pInputAttachments is a pointer to an array of
-- AttachmentReference2 structures defining the input attachments
-- for this subpass and their layouts.
[$sel:inputAttachments:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Vector (SomeStruct AttachmentReference2)
-- | pColorAttachments is a pointer to an array of
-- AttachmentReference2 structures defining the color attachments
-- for this subpass and their layouts.
[$sel:colorAttachments:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Vector (SomeStruct AttachmentReference2)
-- | pResolveAttachments is an optional array of
-- colorAttachmentCount AttachmentReference2 structures
-- defining the resolve attachments for this subpass and their layouts.
[$sel:resolveAttachments:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Vector (SomeStruct AttachmentReference2)
-- | pDepthStencilAttachment is a pointer to a
-- AttachmentReference2 structure specifying the depth/stencil
-- attachment for this subpass and its layout.
[$sel:depthStencilAttachment:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Maybe (SomeStruct AttachmentReference2)
-- | pPreserveAttachments is a pointer to an array of
-- preserveAttachmentCount render pass attachment indices
-- identifying attachments that are not used by this subpass, but whose
-- contents must be preserved throughout the subpass.
[$sel:preserveAttachments:SubpassDescription2] :: SubpassDescription2 (es :: [Type]) -> Vector Word32
-- | VkSubpassDependency2 - Structure specifying a subpass dependency
--
-- Description
--
-- Parameters defined by this structure with the same name as those in
-- SubpassDependency have the identical effect to those
-- parameters.
--
-- viewOffset has the same effect for the described subpass
-- dependency as
-- RenderPassMultiviewCreateInfo::pViewOffsets has on
-- each corresponding subpass dependency.
--
-- Valid Usage
--
--
--
--
-- - If the geometry shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_GEOMETRY_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - If the tessellation shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or
-- PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
-- - srcSubpass must be less than or equal to
-- dstSubpass, unless one of them is SUBPASS_EXTERNAL, to
-- avoid cyclic dependencies and ensure a valid execution order
-- - srcSubpass and dstSubpass must not both
-- be equal to SUBPASS_EXTERNAL
-- - If srcSubpass is equal to dstSubpass and not all
-- of the stages in srcStageMask and dstStageMask are
-- framebuffer-space stages, the logically latest pipeline
-- stage in srcStageMask must be logically earlier
-- than or equal to the logically earliest pipeline stage in
-- dstStageMask
-- - Any access flag included in srcAccessMask must be
-- supported by one of the pipeline stages in srcStageMask, as
-- specified in the table of supported access types
-- - Any access flag included in dstAccessMask must be
-- supported by one of the pipeline stages in dstStageMask, as
-- specified in the table of supported access types
-- - If dependencyFlags includes
-- DEPENDENCY_VIEW_LOCAL_BIT, srcSubpass must not
-- be equal to SUBPASS_EXTERNAL
-- - If dependencyFlags includes
-- DEPENDENCY_VIEW_LOCAL_BIT, dstSubpass must not
-- be equal to SUBPASS_EXTERNAL
-- - If srcSubpass equals dstSubpass, and
-- srcStageMask and dstStageMask both include a
-- framebuffer-space stage, then dependencyFlags
-- must include DEPENDENCY_BY_REGION_BIT
-- - If viewOffset is not equal to 0,
-- srcSubpass must not be equal to
-- dstSubpass
-- - If dependencyFlags does not include
-- DEPENDENCY_VIEW_LOCAL_BIT, viewOffset must be
-- 0
-- - If the mesh shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- srcStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
-- - If the mesh shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_MESH_SHADER_BIT_NV
-- - If the task shaders feature is not enabled,
-- dstStageMask must not contain
-- PIPELINE_STAGE_TASK_SHADER_BIT_NV
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - srcStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - srcStageMask must not be 0
-- - dstStageMask must be a valid combination of
-- PipelineStageFlagBits values
-- - dstStageMask must not be 0
-- - srcAccessMask must be a valid combination of
-- AccessFlagBits values
-- - dstAccessMask must be a valid combination of
-- AccessFlagBits values
-- - dependencyFlags must be a valid combination of
-- DependencyFlagBits values
--
--
-- See Also
--
-- AccessFlags, DependencyFlags, PipelineStageFlags,
-- RenderPassCreateInfo2, StructureType
data SubpassDependency2
SubpassDependency2 :: Word32 -> Word32 -> PipelineStageFlags -> PipelineStageFlags -> AccessFlags -> AccessFlags -> DependencyFlags -> Int32 -> SubpassDependency2
-- | srcSubpass is the subpass index of the first subpass in the
-- dependency, or SUBPASS_EXTERNAL.
[$sel:srcSubpass:SubpassDependency2] :: SubpassDependency2 -> Word32
-- | dstSubpass is the subpass index of the second subpass in the
-- dependency, or SUBPASS_EXTERNAL.
[$sel:dstSubpass:SubpassDependency2] :: SubpassDependency2 -> Word32
-- | srcStageMask is a bitmask of PipelineStageFlagBits
-- specifying the source stage mask.
[$sel:srcStageMask:SubpassDependency2] :: SubpassDependency2 -> PipelineStageFlags
-- | dstStageMask is a bitmask of PipelineStageFlagBits
-- specifying the destination stage mask
[$sel:dstStageMask:SubpassDependency2] :: SubpassDependency2 -> PipelineStageFlags
-- | srcAccessMask is a bitmask of AccessFlagBits
-- specifying a source access mask.
[$sel:srcAccessMask:SubpassDependency2] :: SubpassDependency2 -> AccessFlags
-- | dstAccessMask is a bitmask of AccessFlagBits
-- specifying a destination access mask.
[$sel:dstAccessMask:SubpassDependency2] :: SubpassDependency2 -> AccessFlags
-- | dependencyFlags is a bitmask of DependencyFlagBits.
[$sel:dependencyFlags:SubpassDependency2] :: SubpassDependency2 -> DependencyFlags
-- | viewOffset controls which views in the source subpass the
-- views in the destination subpass depend on.
[$sel:viewOffset:SubpassDependency2] :: SubpassDependency2 -> Int32
-- | VkRenderPassCreateInfo2 - Structure specifying parameters of a newly
-- created render pass
--
-- Description
--
-- Parameters defined by this structure with the same name as those in
-- RenderPassCreateInfo have the identical effect to those
-- parameters; the child structures are variants of those used in
-- RenderPassCreateInfo which add sType and
-- pNext parameters, allowing them to be extended.
--
-- If the SubpassDescription2::viewMask member of any
-- element of pSubpasses is not zero, multiview
-- functionality is considered to be enabled for this render pass.
--
-- correlatedViewMaskCount and pCorrelatedViewMasks
-- have the same effect as
-- RenderPassMultiviewCreateInfo::correlationMaskCount
-- and RenderPassMultiviewCreateInfo::pCorrelationMasks,
-- respectively.
--
-- Valid Usage
--
--
-- - If any two subpasses operate on attachments with overlapping
-- ranges of the same DeviceMemory object, and at least one
-- subpass writes to that area of DeviceMemory, a subpass
-- dependency must be included (either directly or via some
-- intermediate subpasses) between them
--
--
--
-- - If the attachment member of any element of
-- pInputAttachments, pColorAttachments,
-- pResolveAttachments or pDepthStencilAttachment, or
-- the attachment indexed by any element of pPreserveAttachments
-- in any given element of pSubpasses is bound to a range of a
-- DeviceMemory object that overlaps with any other attachment in
-- any subpass (including the same subpass), the
-- AttachmentDescription2 structures describing them must
-- include ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT in
-- flags
-- - If the attachment member of any element of
-- pInputAttachments, pColorAttachments,
-- pResolveAttachments or pDepthStencilAttachment, or
-- any element of pPreserveAttachments in any given element of
-- pSubpasses is not ATTACHMENT_UNUSED, it must be
-- less than attachmentCount
-- - For any member of pAttachments with a loadOp
-- equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that
-- attachment must not specify a layout equal to
-- IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-- - For any member of pAttachments with a
-- stencilLoadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the
-- first use of that attachment must not specify a layout
-- equal to IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, or
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-- - For any element of pDependencies, if the
-- srcSubpass is not SUBPASS_EXTERNAL, all stage flags
-- included in the srcStageMask member of that dependency
-- must be a pipeline stage supported by the pipeline
-- identified by the pipelineBindPoint member of the source
-- subpass
-- - For any element of pDependencies, if the
-- dstSubpass is not SUBPASS_EXTERNAL, all stage flags
-- included in the dstStageMask member of that dependency
-- must be a pipeline stage supported by the pipeline
-- identified by the pipelineBindPoint member of the destination
-- subpass
-- - The set of bits included in any element of
-- pCorrelatedViewMasks must not overlap with the set of
-- bits included in any other element of
-- pCorrelatedViewMasks
-- - If the SubpassDescription2::viewMask member of all
-- elements of pSubpasses is 0,
-- correlatedViewMaskCount must be 0
-- - The SubpassDescription2::viewMask member of all
-- elements of pSubpasses must either all be 0,
-- or all not be 0
-- - If the SubpassDescription2::viewMask member of all
-- elements of pSubpasses is 0, the
-- dependencyFlags member of any element of
-- pDependencies must not include
-- DEPENDENCY_VIEW_LOCAL_BIT
-- - For any element of pDependencies where its
-- srcSubpass member equals its dstSubpass member, if
-- the viewMask member of the corresponding element of
-- pSubpasses includes more than one bit, its
-- dependencyFlags member must include
-- DEPENDENCY_VIEW_LOCAL_BIT
-- - The viewMask member must not have a bit set at an
-- index greater than or equal to
-- PhysicalDeviceLimits::maxFramebufferLayers
-- - If the attachment member of any element of the
-- pInputAttachments member of any element of
-- pSubpasses is not ATTACHMENT_UNUSED, the
-- aspectMask member of that element of
-- pInputAttachments must only include aspects that are
-- present in images of the format specified by the element of
-- pAttachments specified by attachment
-- - The srcSubpass member of each element of
-- pDependencies must be less than
-- subpassCount
-- - The dstSubpass member of each element of
-- pDependencies must be less than
-- subpassCount
--
--
-- Valid Usage (Implicit)
--
--
--
--
-- - pNext must be NULL or a pointer to a
-- valid instance of
-- RenderPassFragmentDensityMapCreateInfoEXT
-- - The sType value of each struct in the pNext
-- chain must be unique
-- - flags must be a valid combination of
-- RenderPassCreateFlagBits values
-- - If attachmentCount is not 0,
-- pAttachments must be a valid pointer to an array of
-- attachmentCount valid AttachmentDescription2
-- structures
-- - pSubpasses must be a valid pointer to an array of
-- subpassCount valid SubpassDescription2 structures
-- - If dependencyCount is not 0,
-- pDependencies must be a valid pointer to an array of
-- dependencyCount valid SubpassDependency2
-- structures
-- - If correlatedViewMaskCount is not 0,
-- pCorrelatedViewMasks must be a valid pointer to an
-- array of correlatedViewMaskCount uint32_t
-- values
-- - subpassCount must be greater than 0
--
--
-- See Also
--
-- AttachmentDescription2, RenderPassCreateFlags,
-- StructureType, SubpassDependency2,
-- SubpassDescription2, createRenderPass2,
-- createRenderPass2KHR
data RenderPassCreateInfo2 (es :: [Type])
RenderPassCreateInfo2 :: Chain es -> RenderPassCreateFlags -> Vector (SomeStruct AttachmentDescription2) -> Vector (SomeStruct SubpassDescription2) -> Vector SubpassDependency2 -> Vector Word32 -> RenderPassCreateInfo2 (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:RenderPassCreateInfo2] :: RenderPassCreateInfo2 (es :: [Type]) -> Chain es
-- | flags is reserved for future use.
[$sel:flags:RenderPassCreateInfo2] :: RenderPassCreateInfo2 (es :: [Type]) -> RenderPassCreateFlags
-- | pAttachments is a pointer to an array of
-- attachmentCount AttachmentDescription2 structures
-- describing the attachments used by the render pass.
[$sel:attachments:RenderPassCreateInfo2] :: RenderPassCreateInfo2 (es :: [Type]) -> Vector (SomeStruct AttachmentDescription2)
-- | pSubpasses is a pointer to an array of subpassCount
-- SubpassDescription2 structures describing each subpass.
[$sel:subpasses:RenderPassCreateInfo2] :: RenderPassCreateInfo2 (es :: [Type]) -> Vector (SomeStruct SubpassDescription2)
-- | pDependencies is a pointer to an array of
-- dependencyCount SubpassDependency structures
-- describing dependencies between pairs of subpasses.
[$sel:dependencies:RenderPassCreateInfo2] :: RenderPassCreateInfo2 (es :: [Type]) -> Vector SubpassDependency2
-- | pCorrelatedViewMasks is a pointer to an array of view masks
-- indicating sets of views that may be more efficient to render
-- concurrently.
[$sel:correlatedViewMasks:RenderPassCreateInfo2] :: RenderPassCreateInfo2 (es :: [Type]) -> Vector Word32
-- | VkSubpassBeginInfo - Structure specifying subpass begin info
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, SubpassContents,
-- cmdBeginRenderPass2, cmdBeginRenderPass2KHR,
-- cmdNextSubpass2, cmdNextSubpass2KHR
data SubpassBeginInfo
SubpassBeginInfo :: SubpassContents -> SubpassBeginInfo
-- | contents is a SubpassContents value specifying how the
-- commands in the next subpass will be provided.
--
-- contents must be a valid SubpassContents value
[$sel:contents:SubpassBeginInfo] :: SubpassBeginInfo -> SubpassContents
-- | VkSubpassEndInfo - Structure specifying subpass end info
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- StructureType, cmdEndRenderPass2,
-- cmdEndRenderPass2KHR, cmdNextSubpass2,
-- cmdNextSubpass2KHR
data SubpassEndInfo
SubpassEndInfo :: SubpassEndInfo
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance GHC.Generics.Generic (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es)
instance GHC.Generics.Generic (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es)
instance GHC.Generics.Generic (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es)
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance GHC.Generics.Generic (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es)
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassEndInfo
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassBeginInfo
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.RenderPassCreateInfo2 es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDependency2
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.SubpassDescription2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentReference2 es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2.AttachmentDescription2 es)
module Vulkan.Extensions.VK_KHR_create_renderpass2
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO_KHR :: StructureType
createRenderPass2KHR :: forall (a :: [Type]) io. (Extendss RenderPassCreateInfo2 a, PokeChain a, MonadIO io) => Device -> RenderPassCreateInfo2 a -> ("allocator" ::: Maybe AllocationCallbacks) -> io RenderPass
cmdBeginRenderPass2KHR :: forall (a :: [Type]) io. (Extendss RenderPassBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> RenderPassBeginInfo a -> SubpassBeginInfo -> io ()
cmdNextSubpass2KHR :: MonadIO io => CommandBuffer -> SubpassBeginInfo -> SubpassEndInfo -> io ()
cmdEndRenderPass2KHR :: MonadIO io => CommandBuffer -> SubpassEndInfo -> io ()
type AttachmentDescription2KHR = AttachmentDescription2
type AttachmentReference2KHR = AttachmentReference2
type SubpassDescription2KHR = SubpassDescription2
type SubpassDependency2KHR = SubpassDependency2
type RenderPassCreateInfo2KHR = RenderPassCreateInfo2
type SubpassBeginInfoKHR = SubpassBeginInfo
type SubpassEndInfoKHR = SubpassEndInfo
type KHR_CREATE_RENDERPASS_2_SPEC_VERSION = 1
pattern KHR_CREATE_RENDERPASS_2_SPEC_VERSION :: forall a. Integral a => a
type KHR_CREATE_RENDERPASS_2_EXTENSION_NAME = "VK_KHR_create_renderpass2"
pattern KHR_CREATE_RENDERPASS_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve
-- | VkPhysicalDeviceDepthStencilResolveProperties - Structure describing
-- depth/stencil resolve properties that can be supported by an
-- implementation
--
-- Members
--
-- The members of the PhysicalDeviceDepthStencilResolveProperties
-- structure describe the following implementation-dependent limits:
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, ResolveModeFlags, StructureType
data PhysicalDeviceDepthStencilResolveProperties
PhysicalDeviceDepthStencilResolveProperties :: ResolveModeFlags -> ResolveModeFlags -> Bool -> Bool -> PhysicalDeviceDepthStencilResolveProperties
-- | supportedDepthResolveModes is a bitmask of
-- ResolveModeFlagBits indicating the set of supported depth
-- resolve modes. RESOLVE_MODE_SAMPLE_ZERO_BIT must be
-- included in the set but implementations may support additional
-- modes.
[$sel:supportedDepthResolveModes:PhysicalDeviceDepthStencilResolveProperties] :: PhysicalDeviceDepthStencilResolveProperties -> ResolveModeFlags
-- | supportedStencilResolveModes is a bitmask of
-- ResolveModeFlagBits indicating the set of supported stencil
-- resolve modes. RESOLVE_MODE_SAMPLE_ZERO_BIT must be
-- included in the set but implementations may support additional
-- modes. RESOLVE_MODE_AVERAGE_BIT must not be included in
-- the set.
[$sel:supportedStencilResolveModes:PhysicalDeviceDepthStencilResolveProperties] :: PhysicalDeviceDepthStencilResolveProperties -> ResolveModeFlags
-- | independentResolveNone is TRUE if the implementation
-- supports setting the depth and stencil resolve modes to different
-- values when one of those modes is RESOLVE_MODE_NONE. Otherwise
-- the implementation only supports setting both modes to the same value.
[$sel:independentResolveNone:PhysicalDeviceDepthStencilResolveProperties] :: PhysicalDeviceDepthStencilResolveProperties -> Bool
-- | independentResolve is TRUE if the implementation
-- supports all combinations of the supported depth and stencil resolve
-- modes, including setting either depth or stencil resolve mode to
-- RESOLVE_MODE_NONE. An implementation that supports
-- independentResolve must also support
-- independentResolveNone.
[$sel:independentResolve:PhysicalDeviceDepthStencilResolveProperties] :: PhysicalDeviceDepthStencilResolveProperties -> Bool
-- | VkSubpassDescriptionDepthStencilResolve - Structure specifying
-- depth/stencil resolve operations for a subpass
--
-- Valid Usage
--
--
-- - If pDepthStencilResolveAttachment is not NULL
-- and does not have the value ATTACHMENT_UNUSED,
-- pDepthStencilAttachment must not have the value
-- ATTACHMENT_UNUSED
--
--
--
-- - If pDepthStencilResolveAttachment is not NULL
-- and does not have the value ATTACHMENT_UNUSED,
-- depthResolveMode and stencilResolveMode must
-- not both be RESOLVE_MODE_NONE
-- - If pDepthStencilResolveAttachment is not NULL
-- and does not have the value ATTACHMENT_UNUSED,
-- pDepthStencilAttachment must not have a sample count
-- of SAMPLE_COUNT_1_BIT
-- - If pDepthStencilResolveAttachment is not NULL
-- and does not have the value ATTACHMENT_UNUSED,
-- pDepthStencilResolveAttachment must have a sample
-- count of SAMPLE_COUNT_1_BIT
-- - If pDepthStencilResolveAttachment is not NULL
-- and does not have the value ATTACHMENT_UNUSED then it
-- must have a format whose features contain
-- FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
-- - If the Format of pDepthStencilResolveAttachment
-- has a depth component, then the Format of
-- pDepthStencilAttachment must have a depth component
-- with the same number of bits and numerical type
-- - If the Format of pDepthStencilResolveAttachment
-- has a stencil component, then the Format of
-- pDepthStencilAttachment must have a stencil component
-- with the same number of bits and numerical type
-- - The value of depthResolveMode must be one of the
-- bits set in
-- PhysicalDeviceDepthStencilResolveProperties::supportedDepthResolveModes
-- or RESOLVE_MODE_NONE
-- - The value of stencilResolveMode must be one of the
-- bits set in
-- PhysicalDeviceDepthStencilResolveProperties::supportedStencilResolveModes
-- or RESOLVE_MODE_NONE
-- - If the Format of pDepthStencilResolveAttachment
-- has both depth and stencil components,
-- PhysicalDeviceDepthStencilResolveProperties::independentResolve
-- is FALSE, and
-- PhysicalDeviceDepthStencilResolveProperties::independentResolveNone
-- is FALSE, then the values of depthResolveMode and
-- stencilResolveMode must be identical
-- - If the Format of pDepthStencilResolveAttachment
-- has both depth and stencil components,
-- PhysicalDeviceDepthStencilResolveProperties::independentResolve
-- is FALSE and
-- PhysicalDeviceDepthStencilResolveProperties::independentResolveNone
-- is TRUE, then the values of depthResolveMode and
-- stencilResolveMode must be identical or one of them
-- must be RESOLVE_MODE_NONE
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- AttachmentReference2, ResolveModeFlagBits,
-- StructureType
data SubpassDescriptionDepthStencilResolve
SubpassDescriptionDepthStencilResolve :: ResolveModeFlagBits -> ResolveModeFlagBits -> Maybe (SomeStruct AttachmentReference2) -> SubpassDescriptionDepthStencilResolve
-- | depthResolveMode is a bitmask of ResolveModeFlagBits
-- describing the depth resolve mode.
[$sel:depthResolveMode:SubpassDescriptionDepthStencilResolve] :: SubpassDescriptionDepthStencilResolve -> ResolveModeFlagBits
-- | stencilResolveMode is a bitmask of ResolveModeFlagBits
-- describing the stencil resolve mode.
[$sel:stencilResolveMode:SubpassDescriptionDepthStencilResolve] :: SubpassDescriptionDepthStencilResolve -> ResolveModeFlagBits
-- | pDepthStencilResolveAttachment is an optional
-- AttachmentReference structure defining the depth/stencil
-- resolve attachment for this subpass and its layout.
[$sel:depthStencilResolveAttachment:SubpassDescriptionDepthStencilResolve] :: SubpassDescriptionDepthStencilResolve -> Maybe (SomeStruct AttachmentReference2)
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkResolveModeFlagBits - Bitmask indicating supported depth and stencil
-- resolve modes
--
-- See Also
--
-- ResolveModeFlags, SubpassDescriptionDepthStencilResolve
newtype ResolveModeFlagBits
ResolveModeFlagBits :: Flags -> ResolveModeFlagBits
-- | RESOLVE_MODE_NONE indicates that no resolve operation is done.
pattern RESOLVE_MODE_NONE :: ResolveModeFlagBits
-- | RESOLVE_MODE_SAMPLE_ZERO_BIT indicates that result of the
-- resolve operation is equal to the value of sample 0.
pattern RESOLVE_MODE_SAMPLE_ZERO_BIT :: ResolveModeFlagBits
-- | RESOLVE_MODE_AVERAGE_BIT indicates that result of the resolve
-- operation is the average of the sample values.
pattern RESOLVE_MODE_AVERAGE_BIT :: ResolveModeFlagBits
-- | RESOLVE_MODE_MIN_BIT indicates that result of the resolve
-- operation is the minimum of the sample values.
pattern RESOLVE_MODE_MIN_BIT :: ResolveModeFlagBits
-- | RESOLVE_MODE_MAX_BIT indicates that result of the resolve
-- operation is the maximum of the sample values.
pattern RESOLVE_MODE_MAX_BIT :: ResolveModeFlagBits
type ResolveModeFlags = ResolveModeFlagBits
instance GHC.Classes.Eq Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
instance GHC.Generics.Generic Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.SubpassDescriptionDepthStencilResolve
instance GHC.Show.Show Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.SubpassDescriptionDepthStencilResolve
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.SubpassDescriptionDepthStencilResolve
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.SubpassDescriptionDepthStencilResolve
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.SubpassDescriptionDepthStencilResolve
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
instance Foreign.Storable.Storable Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
instance Vulkan.Zero.Zero Vulkan.Core12.Promoted_From_VK_KHR_depth_stencil_resolve.PhysicalDeviceDepthStencilResolveProperties
module Vulkan.Extensions.VK_KHR_depth_stencil_resolve
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR :: StructureType
pattern RESOLVE_MODE_NONE_KHR :: ResolveModeFlagBits
pattern RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR :: ResolveModeFlagBits
pattern RESOLVE_MODE_AVERAGE_BIT_KHR :: ResolveModeFlagBits
pattern RESOLVE_MODE_MIN_BIT_KHR :: ResolveModeFlagBits
pattern RESOLVE_MODE_MAX_BIT_KHR :: ResolveModeFlagBits
type ResolveModeFlagsKHR = ResolveModeFlags
type ResolveModeFlagBitsKHR = ResolveModeFlagBits
type PhysicalDeviceDepthStencilResolvePropertiesKHR = PhysicalDeviceDepthStencilResolveProperties
type SubpassDescriptionDepthStencilResolveKHR = SubpassDescriptionDepthStencilResolve
type KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION = 1
pattern KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION :: forall a. Integral a => a
type KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME = "VK_KHR_depth_stencil_resolve"
pattern KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
module Vulkan.Extensions
module Vulkan.Core12
pattern API_VERSION_1_2 :: Word32
-- | VkPhysicalDeviceVulkan11Features - Structure describing the Vulkan 1.1
-- features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceVulkan11Features structure
-- describe the following features:
--
-- Description
--
-- If the PhysicalDeviceVulkan11Features structure is included in
-- the pNext chain of PhysicalDeviceFeatures2, it is
-- filled with values indicating whether each feature is supported.
-- PhysicalDeviceVulkan11Features can also be used in the
-- pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceVulkan11Features
PhysicalDeviceVulkan11Features :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceVulkan11Features
-- | storageBuffer16BitAccess specifies whether objects in the
-- StorageBuffer or PhysicalStorageBuffer storage class
-- with the Block decoration can have 16-bit integer and
-- 16-bit floating-point members. If this feature is not enabled, 16-bit
-- integer or 16-bit floating-point members must not be used in
-- such objects. This also specifies whether shader modules can
-- declare the StorageBuffer16BitAccess capability.
[$sel:storageBuffer16BitAccess:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | uniformAndStorageBuffer16BitAccess specifies whether objects
-- in the Uniform storage class with the Block
-- decoration and in the StorageBuffer or
-- PhysicalStorageBuffer storage class with the same decoration
-- can have 16-bit integer and 16-bit floating-point members. If
-- this feature is not enabled, 16-bit integer or 16-bit floating-point
-- members must not be used in such objects. This also specifies
-- whether shader modules can declare the
-- UniformAndStorageBuffer16BitAccess capability.
[$sel:uniformAndStorageBuffer16BitAccess:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | storagePushConstant16 specifies whether objects in the
-- PushConstant storage class can have 16-bit integer and
-- 16-bit floating-point members. If this feature is not enabled, 16-bit
-- integer or floating-point members must not be used in such
-- objects. This also specifies whether shader modules can declare
-- the StoragePushConstant16 capability.
[$sel:storagePushConstant16:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | storageInputOutput16 specifies whether objects in the
-- Input and Output storage classes can have
-- 16-bit integer and 16-bit floating-point members. If this feature is
-- not enabled, 16-bit integer or 16-bit floating-point members
-- must not be used in such objects. This also specifies whether
-- shader modules can declare the StorageInputOutput16
-- capability.
[$sel:storageInputOutput16:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | multiview specifies whether the implementation supports
-- multiview rendering within a render pass. If this feature is not
-- enabled, the view mask of each subpass must always be zero.
[$sel:multiview:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | multiviewGeometryShader specifies whether the implementation
-- supports multiview rendering within a render pass, with geometry
-- shaders. If this feature is not enabled, then a pipeline compiled
-- against a subpass with a non-zero view mask must not include a
-- geometry shader.
[$sel:multiviewGeometryShader:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | multiviewTessellationShader specifies whether the
-- implementation supports multiview rendering within a render pass, with
-- tessellation shaders. If this feature is not enabled, then a
-- pipeline compiled against a subpass with a non-zero view mask
-- must not include any tessellation shaders.
[$sel:multiviewTessellationShader:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | variablePointersStorageBuffer specifies whether the
-- implementation supports the SPIR-V
-- VariablePointersStorageBuffer capability. When this feature
-- is not enabled, shader modules must not declare the
-- SPV_KHR_variable_pointers extension or the
-- VariablePointersStorageBuffer capability.
[$sel:variablePointersStorageBuffer:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | variablePointers specifies whether the implementation
-- supports the SPIR-V VariablePointers capability. When this
-- feature is not enabled, shader modules must not declare the
-- VariablePointers capability.
[$sel:variablePointers:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | protectedMemory specifies whether protected memory is
-- supported.
[$sel:protectedMemory:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | samplerYcbcrConversion specifies whether the implementation
-- supports sampler Y′CBCR conversion. If
-- samplerYcbcrConversion is FALSE, sampler Y′CBCR
-- conversion is not supported, and samplers using sampler Y′CBCR
-- conversion must not be used.
[$sel:samplerYcbcrConversion:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | shaderDrawParameters specifies whether shader draw parameters
-- are supported.
[$sel:shaderDrawParameters:PhysicalDeviceVulkan11Features] :: PhysicalDeviceVulkan11Features -> Bool
-- | VkPhysicalDeviceVulkan11Properties - Structure specifying physical
-- device properties for functionality promoted to Vulkan 1.1
--
-- Description
--
-- The members of PhysicalDeviceVulkan11Properties must
-- have the same values as the corresponding members of
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDeviceProtectedMemoryProperties, and
-- PhysicalDeviceMaintenance3Properties.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, DeviceSize, PointClippingBehavior,
-- ShaderStageFlags, StructureType,
-- SubgroupFeatureFlags
data PhysicalDeviceVulkan11Properties
PhysicalDeviceVulkan11Properties :: ByteString -> ByteString -> ByteString -> Word32 -> Bool -> Word32 -> ShaderStageFlags -> SubgroupFeatureFlags -> Bool -> PointClippingBehavior -> Word32 -> Word32 -> Bool -> Word32 -> DeviceSize -> PhysicalDeviceVulkan11Properties
-- | deviceUUID is an array of UUID_SIZE uint8_t
-- values representing a universally unique identifier for the device.
[$sel:deviceUUID:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> ByteString
-- | driverUUID is an array of UUID_SIZE uint8_t
-- values representing a universally unique identifier for the driver
-- build in use by the device.
[$sel:driverUUID:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> ByteString
-- | deviceLUID is an array of LUID_SIZE uint8_t
-- values representing a locally unique identifier for the device.
[$sel:deviceLUID:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> ByteString
-- | deviceNodeMask is a uint32_t bitfield identifying
-- the node within a linked device adapter corresponding to the device.
[$sel:deviceNodeMask:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Word32
-- | deviceLUIDValid is a boolean value that will be TRUE
-- if deviceLUID contains a valid LUID and
-- deviceNodeMask contains a valid node mask, and FALSE
-- if they do not.
[$sel:deviceLUIDValid:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Bool
-- | subgroupSize is the default number of invocations in each
-- subgroup. subgroupSize is at least 1 if any of the physical
-- device’s queues support QUEUE_GRAPHICS_BIT or
-- QUEUE_COMPUTE_BIT. subgroupSize is a power-of-two.
[$sel:subgroupSize:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Word32
-- | subgroupSupportedStages is a bitfield of
-- ShaderStageFlagBits describing the shader stages that subgroup
-- operations are supported in. subgroupSupportedStages will
-- have the SHADER_STAGE_COMPUTE_BIT bit set if any of the
-- physical device’s queues support QUEUE_COMPUTE_BIT.
[$sel:subgroupSupportedStages:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> ShaderStageFlags
-- | subgroupSupportedOperations is a bitmask of
-- SubgroupFeatureFlagBits specifying the sets of subgroup
-- operations supported on this device.
-- subgroupSupportedOperations will have the
-- SUBGROUP_FEATURE_BASIC_BIT bit set if any of the physical
-- device’s queues support QUEUE_GRAPHICS_BIT or
-- QUEUE_COMPUTE_BIT.
[$sel:subgroupSupportedOperations:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> SubgroupFeatureFlags
-- | subgroupQuadOperationsInAllStages is a boolean specifying
-- whether quad subgroup operations are available in all stages,
-- or are restricted to fragment and compute stages.
[$sel:subgroupQuadOperationsInAllStages:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Bool
-- | pointClippingBehavior is a PointClippingBehavior value
-- specifying the point clipping behavior supported by the
-- implementation.
[$sel:pointClippingBehavior:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> PointClippingBehavior
-- | maxMultiviewViewCount is one greater than the maximum view
-- index that can be used in a subpass.
[$sel:maxMultiviewViewCount:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Word32
-- | maxMultiviewInstanceIndex is the maximum valid value of
-- instance index allowed to be generated by a drawing command recorded
-- within a subpass of a multiview render pass instance.
[$sel:maxMultiviewInstanceIndex:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Word32
-- | protectedNoFault specifies the behavior of the implementation
-- when protected memory access rules are broken. If
-- protectedNoFault is TRUE, breaking those rules will
-- not result in process termination or device loss.
[$sel:protectedNoFault:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Bool
-- | maxPerSetDescriptors is a maximum number of descriptors
-- (summed over all descriptor types) in a single descriptor set that is
-- guaranteed to satisfy any implementation-dependent constraints on the
-- size of a descriptor set itself. Applications can query whether
-- a descriptor set that goes beyond this limit is supported using
-- getDescriptorSetLayoutSupport.
[$sel:maxPerSetDescriptors:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> Word32
-- | maxMemoryAllocationSize is the maximum size of a memory
-- allocation that can be created, even if there is more space
-- available in the heap.
[$sel:maxMemoryAllocationSize:PhysicalDeviceVulkan11Properties] :: PhysicalDeviceVulkan11Properties -> DeviceSize
-- | VkPhysicalDeviceVulkan12Features - Structure describing the Vulkan 1.2
-- features that can be supported by an implementation
--
-- Members
--
-- The members of the PhysicalDeviceVulkan12Features structure
-- describe the following features:
--
-- Description
--
--
--
--
-- - drawIndirectCount indicates whether the implementation
-- supports the cmdDrawIndirectCount and
-- cmdDrawIndexedIndirectCount functions. If this feature is not
-- enabled, these functions must not be used.
-- - storageBuffer8BitAccess indicates whether objects in the
-- StorageBuffer or PhysicalStorageBuffer storage class
-- with the Block decoration can have 8-bit integer
-- members. If this feature is not enabled, 8-bit integer members
-- must not be used in such objects. This also indicates whether
-- shader modules can declare the StorageBuffer8BitAccess
-- capability.
-- - uniformAndStorageBuffer8BitAccess indicates whether
-- objects in the Uniform storage class with the Block
-- decoration and in the StorageBuffer or
-- PhysicalStorageBuffer storage class with the same decoration
-- can have 8-bit integer members. If this feature is not enabled,
-- 8-bit integer members must not be used in such objects. This
-- also indicates whether shader modules can declare the
-- UniformAndStorageBuffer8BitAccess capability.
-- - storagePushConstant8 indicates whether objects in the
-- PushConstant storage class can have 8-bit integer
-- members. If this feature is not enabled, 8-bit integer members
-- must not be used in such objects. This also indicates whether
-- shader modules can declare the StoragePushConstant8
-- capability.
-- - shaderBufferInt64Atomics indicates whether shaders
-- can support 64-bit unsigned and signed integer atomic
-- operations on buffers.
-- - shaderSharedInt64Atomics indicates whether shaders
-- can support 64-bit unsigned and signed integer atomic
-- operations on shared memory.
-- - shaderFloat16 indicates whether 16-bit floats (halfs) are
-- supported in shader code. This also indicates whether shader modules
-- can declare the Float16 capability. However, this only
-- enables a subset of the storage classes that SPIR-V allows for the
-- Float16 SPIR-V capability: Declaring and using 16-bit floats
-- in the Private, Workgroup, and Function
-- storage classes is enabled, while declaring them in the interface
-- storage classes (e.g., UniformConstant, Uniform,
-- StorageBuffer, Input, Output, and
-- PushConstant) is not enabled.
-- - shaderInt8 indicates whether 8-bit integers (signed and
-- unsigned) are supported in shader code. This also indicates whether
-- shader modules can declare the Int8 capability.
-- However, this only enables a subset of the storage classes that SPIR-V
-- allows for the Int8 SPIR-V capability: Declaring and using
-- 8-bit integers in the Private, Workgroup, and
-- Function storage classes is enabled, while declaring them in
-- the interface storage classes (e.g., UniformConstant,
-- Uniform, StorageBuffer, Input,
-- Output, and PushConstant) is not enabled.
-- - descriptorIndexing indicates whether the implementation
-- supports the minimum set of descriptor indexing features as described
-- in the Feature Requirements section. Enabling the
-- descriptorIndexing member when createDevice is called
-- does not imply the other minimum descriptor indexing features are also
-- enabled. Those other descriptor indexing features must be
-- enabled individually as needed by the application.
-- - shaderInputAttachmentArrayDynamicIndexing indicates
-- whether arrays of input attachments can be indexed by
-- dynamically uniform integer expressions in shader code. If this
-- feature is not enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT must be indexed only by
-- constant integral expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the InputAttachmentArrayDynamicIndexing capability.
-- - shaderUniformTexelBufferArrayDynamicIndexing indicates
-- whether arrays of uniform texel buffers can be indexed by
-- dynamically uniform integer expressions in shader code. If this
-- feature is not enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must be indexed
-- only by constant integral expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the UniformTexelBufferArrayDynamicIndexing
-- capability.
-- - shaderStorageTexelBufferArrayDynamicIndexing indicates
-- whether arrays of storage texel buffers can be indexed by
-- dynamically uniform integer expressions in shader code. If this
-- feature is not enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must be indexed
-- only by constant integral expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the StorageTexelBufferArrayDynamicIndexing
-- capability.
-- - shaderUniformBufferArrayNonUniformIndexing indicates
-- whether arrays of uniform buffers can be indexed by non-uniform
-- integer expressions in shader code. If this feature is not enabled,
-- resources with a descriptor type of
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC must not be
-- indexed by non-uniform integer expressions when aggregated into arrays
-- in shader code. This also indicates whether shader modules can
-- declare the UniformBufferArrayNonUniformIndexing
-- capability.
-- - shaderSampledImageArrayNonUniformIndexing indicates
-- whether arrays of samplers or sampled images can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE must not be indexed by
-- non-uniform integer expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the SampledImageArrayNonUniformIndexing capability.
-- - shaderStorageBufferArrayNonUniformIndexing indicates
-- whether arrays of storage buffers can be indexed by non-uniform
-- integer expressions in shader code. If this feature is not enabled,
-- resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must not be
-- indexed by non-uniform integer expressions when aggregated into arrays
-- in shader code. This also indicates whether shader modules can
-- declare the StorageBufferArrayNonUniformIndexing
-- capability.
-- - shaderStorageImageArrayNonUniformIndexing indicates
-- whether arrays of storage images can be indexed by non-uniform
-- integer expressions in shader code. If this feature is not enabled,
-- resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_IMAGE must not be indexed by
-- non-uniform integer expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the StorageImageArrayNonUniformIndexing capability.
-- - shaderInputAttachmentArrayNonUniformIndexing indicates
-- whether arrays of input attachments can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_INPUT_ATTACHMENT must not be indexed by
-- non-uniform integer expressions when aggregated into arrays in shader
-- code. This also indicates whether shader modules can declare
-- the InputAttachmentArrayNonUniformIndexing capability.
-- - shaderUniformTexelBufferArrayNonUniformIndexing indicates
-- whether arrays of uniform texel buffers can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must not be indexed
-- by non-uniform integer expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the UniformTexelBufferArrayNonUniformIndexing
-- capability.
-- - shaderStorageTexelBufferArrayNonUniformIndexing indicates
-- whether arrays of storage texel buffers can be indexed by
-- non-uniform integer expressions in shader code. If this feature is not
-- enabled, resources with a descriptor type of
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must not be indexed
-- by non-uniform integer expressions when aggregated into arrays in
-- shader code. This also indicates whether shader modules can
-- declare the StorageTexelBufferArrayNonUniformIndexing
-- capability.
-- - descriptorBindingUniformBufferUpdateAfterBind indicates
-- whether the implementation supports updating uniform buffer
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_UNIFORM_BUFFER.
-- - descriptorBindingSampledImageUpdateAfterBind indicates
-- whether the implementation supports updating sampled image descriptors
-- after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_SAMPLER,
-- DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or
-- DESCRIPTOR_TYPE_SAMPLED_IMAGE.
-- - descriptorBindingStorageImageUpdateAfterBind indicates
-- whether the implementation supports updating storage image descriptors
-- after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_STORAGE_IMAGE.
-- - descriptorBindingStorageBufferUpdateAfterBind indicates
-- whether the implementation supports updating storage buffer
-- descriptors after a set is bound. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must not be
-- used with DESCRIPTOR_TYPE_STORAGE_BUFFER.
-- - descriptorBindingUniformTexelBufferUpdateAfterBind
-- indicates whether the implementation supports updating uniform texel
-- buffer descriptors after a set is bound. If this feature is not
-- enabled, DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must
-- not be used with DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.
-- - descriptorBindingStorageTexelBufferUpdateAfterBind
-- indicates whether the implementation supports updating storage texel
-- buffer descriptors after a set is bound. If this feature is not
-- enabled, DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT must
-- not be used with DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.
-- - descriptorBindingUpdateUnusedWhilePending indicates
-- whether the implementation supports updating descriptors while the set
-- is in use. If this feature is not enabled,
-- DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT must
-- not be used.
-- - descriptorBindingPartiallyBound indicates whether the
-- implementation supports statically using a descriptor set binding in
-- which some descriptors are not valid. If this feature is not enabled,
-- DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT must not be
-- used.
-- - descriptorBindingVariableDescriptorCount indicates
-- whether the implementation supports descriptor sets with a
-- variable-sized last binding. If this feature is not enabled,
-- DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT must
-- not be used.
-- - runtimeDescriptorArray indicates whether the
-- implementation supports the SPIR-V RuntimeDescriptorArray
-- capability. If this feature is not enabled, descriptors must
-- not be declared in runtime arrays.
-- - samplerFilterMinmax indicates whether the implementation
-- supports a minimum set of required formats supporting min/max
-- filtering as defined by the filterMinmaxSingleComponentFormats
-- property minimum requirements. If this feature is not enabled, then no
-- SamplerCreateInfo pNext chain can include a
-- SamplerReductionModeCreateInfo structure.
-- - scalarBlockLayout indicates that the implementation
-- supports the layout of resource blocks in shaders using scalar
-- alignment.
-- - imagelessFramebuffer indicates that the implementation
-- supports specifying the image view for attachments at render pass
-- begin time via RenderPassAttachmentBeginInfo.
-- - uniformBufferStandardLayout indicates that the
-- implementation supports the same layouts for uniform buffers as for
-- storage and other kinds of buffers. See Standard Buffer
-- Layout.
-- - shaderSubgroupExtendedTypes is a boolean that specifies
-- whether subgroup operations can use 8-bit integer, 16-bit integer,
-- 64-bit integer, 16-bit floating-point, and vectors of these types in
-- group operations with subgroup scopeif the
-- implementation supports the types.
-- - separateDepthStencilLayouts indicates whether the
-- implementation supports a ImageMemoryBarrier for a
-- depth/stencil image with only one of IMAGE_ASPECT_DEPTH_BIT or
-- IMAGE_ASPECT_STENCIL_BIT set, and whether
-- IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
-- IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
-- IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
-- IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL can be used.
-- - hostQueryReset indicates that the implementation supports
-- resetting queries from the host with resetQueryPool.
-- - timelineSemaphore indicates whether semaphores created
-- with a SemaphoreType of SEMAPHORE_TYPE_TIMELINE are
-- supported.
-- - bufferDeviceAddress indicates that the implementation
-- supports accessing buffer memory in shaders as storage buffers via an
-- address queried from getBufferDeviceAddress.
-- - bufferDeviceAddressCaptureReplay indicates that the
-- implementation supports saving and reusing buffer and device
-- addresses, e.g. for trace capture and replay.
-- - bufferDeviceAddressMultiDevice indicates that the
-- implementation supports the bufferDeviceAddress and
-- rayTracing features for logical devices created with multiple
-- physical devices. If this feature is not supported, buffer and
-- acceleration structure addresses must not be queried on a
-- logical device created with more than one physical device.
-- - vulkanMemoryModel indicates whether the Vulkan Memory
-- Model is supported, as defined in Vulkan Memory Model. This
-- also indicates whether shader modules can declare the
-- VulkanMemoryModel capability.
-- - vulkanMemoryModelDeviceScope indicates whether the Vulkan
-- Memory Model can use Device scope synchronization. This also
-- indicates whether shader modules can declare the
-- VulkanMemoryModelDeviceScope capability.
-- - vulkanMemoryModelAvailabilityVisibilityChains indicates
-- whether the Vulkan Memory Model can use availability and visibility
-- chains with more than one element.
-- - shaderOutputViewportIndex indicates whether the
-- implementation supports the ShaderViewportIndex SPIR-V
-- capability enabling variables decorated with the
-- ViewportIndex built-in to be exported from vertex or
-- tessellation evaluation shaders. If this feature is not enabled, the
-- ViewportIndex built-in decoration must not be used on
-- outputs in vertex or tessellation evaluation shaders.
-- - shaderOutputLayer indicates whether the implementation
-- supports the ShaderLayer SPIR-V capability enabling variables
-- decorated with the Layer built-in to be exported from vertex
-- or tessellation evaluation shaders. If this feature is not enabled,
-- the Layer built-in decoration must not be used on
-- outputs in vertex or tessellation evaluation shaders.
-- - If subgroupBroadcastDynamicId is TRUE, the “Id”
-- operand of OpGroupNonUniformBroadcast can be
-- dynamically uniform within a subgroup, and the “Index” operand of
-- OpGroupNonUniformQuadBroadcast can be dynamically
-- uniform within the derivative group. If it is FALSE, these
-- operands must be constants.
--
--
-- If the PhysicalDeviceVulkan12Features structure is included in
-- the pNext chain of PhysicalDeviceFeatures2, it is
-- filled with values indicating whether each feature is supported.
-- PhysicalDeviceVulkan12Features can also be used in the
-- pNext chain of DeviceCreateInfo to enable the
-- features.
--
-- Valid Usage (Implicit)
--
--
--
-- See Also
--
-- Bool32, StructureType
data PhysicalDeviceVulkan12Features
PhysicalDeviceVulkan12Features :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> PhysicalDeviceVulkan12Features
[$sel:samplerMirrorClampToEdge:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:drawIndirectCount:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:storageBuffer8BitAccess:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:uniformAndStorageBuffer8BitAccess:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:storagePushConstant8:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderBufferInt64Atomics:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderSharedInt64Atomics:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderFloat16:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderInt8:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderInputAttachmentArrayDynamicIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderUniformTexelBufferArrayDynamicIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderStorageTexelBufferArrayDynamicIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderUniformBufferArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderSampledImageArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderStorageBufferArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderStorageImageArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderInputAttachmentArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderUniformTexelBufferArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderStorageTexelBufferArrayNonUniformIndexing:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingUniformBufferUpdateAfterBind:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingSampledImageUpdateAfterBind:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingStorageImageUpdateAfterBind:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingStorageBufferUpdateAfterBind:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingUniformTexelBufferUpdateAfterBind:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingStorageTexelBufferUpdateAfterBind:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingUpdateUnusedWhilePending:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingPartiallyBound:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:descriptorBindingVariableDescriptorCount:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:runtimeDescriptorArray:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:samplerFilterMinmax:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:scalarBlockLayout:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:imagelessFramebuffer:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:uniformBufferStandardLayout:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderSubgroupExtendedTypes:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:separateDepthStencilLayouts:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:hostQueryReset:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:timelineSemaphore:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:bufferDeviceAddress:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:bufferDeviceAddressCaptureReplay:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:bufferDeviceAddressMultiDevice:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:vulkanMemoryModel:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:vulkanMemoryModelDeviceScope:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:vulkanMemoryModelAvailabilityVisibilityChains:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderOutputViewportIndex:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:shaderOutputLayer:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
[$sel:subgroupBroadcastDynamicId:PhysicalDeviceVulkan12Features] :: PhysicalDeviceVulkan12Features -> Bool
-- | VkPhysicalDeviceVulkan12Properties - Structure specifying physical
-- device properties for functionality promoted to Vulkan 1.2
--
-- Description
--
-- The members of PhysicalDeviceVulkan12Properties must
-- have the same values as the corresponding members of
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceSamplerFilterMinmaxProperties, and
-- PhysicalDeviceTimelineSemaphoreProperties.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- Bool32, ConformanceVersion, DriverId,
-- ResolveModeFlags, SampleCountFlags,
-- ShaderFloatControlsIndependence, StructureType
data PhysicalDeviceVulkan12Properties
PhysicalDeviceVulkan12Properties :: DriverId -> ByteString -> ByteString -> ConformanceVersion -> ShaderFloatControlsIndependence -> ShaderFloatControlsIndependence -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Word32 -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> Word32 -> ResolveModeFlags -> ResolveModeFlags -> Bool -> Bool -> Bool -> Bool -> Word64 -> SampleCountFlags -> PhysicalDeviceVulkan12Properties
-- | driverID is a unique identifier for the driver of the
-- physical device.
[$sel:driverID:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> DriverId
-- | driverName is an array of MAX_DRIVER_NAME_SIZE
-- char containing a null-terminated UTF-8 string which is the
-- name of the driver.
[$sel:driverName:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ByteString
-- | driverInfo is an array of MAX_DRIVER_INFO_SIZE
-- char containing a null-terminated UTF-8 string with
-- additional information about the driver.
[$sel:driverInfo:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ByteString
-- | conformanceVersion is the version of the Vulkan conformance
-- test this driver is conformant against (see
-- ConformanceVersion).
[$sel:conformanceVersion:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ConformanceVersion
-- | denormBehaviorIndependence is a
-- ShaderFloatControlsIndependence value indicating whether, and
-- how, denorm behavior can be set independently for different bit
-- widths.
[$sel:denormBehaviorIndependence:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ShaderFloatControlsIndependence
-- | roundingModeIndependence is a
-- ShaderFloatControlsIndependence value indicating whether, and
-- how, rounding modes can be set independently for different bit widths.
[$sel:roundingModeIndependence:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ShaderFloatControlsIndependence
-- | shaderSignedZeroInfNanPreserveFloat16 is a boolean value
-- indicating whether sign of a zero, Nans and <math> can be
-- preserved in 16-bit floating-point computations. It also indicates
-- whether the SignedZeroInfNanPreserve execution mode
-- can be used for 16-bit floating-point types.
[$sel:shaderSignedZeroInfNanPreserveFloat16:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderSignedZeroInfNanPreserveFloat32 is a boolean value
-- indicating whether sign of a zero, Nans and <math> can be
-- preserved in 32-bit floating-point computations. It also indicates
-- whether the SignedZeroInfNanPreserve execution mode
-- can be used for 32-bit floating-point types.
[$sel:shaderSignedZeroInfNanPreserveFloat32:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderSignedZeroInfNanPreserveFloat64 is a boolean value
-- indicating whether sign of a zero, Nans and <math> can be
-- preserved in 64-bit floating-point computations. It also indicates
-- whether the SignedZeroInfNanPreserve execution mode
-- can be used for 64-bit floating-point types.
[$sel:shaderSignedZeroInfNanPreserveFloat64:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderDenormPreserveFloat16 is a boolean value indicating
-- whether denormals can be preserved in 16-bit floating-point
-- computations. It also indicates whether the DenormPreserve
-- execution mode can be used for 16-bit floating-point types.
[$sel:shaderDenormPreserveFloat16:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderDenormPreserveFloat32 is a boolean value indicating
-- whether denormals can be preserved in 32-bit floating-point
-- computations. It also indicates whether the DenormPreserve
-- execution mode can be used for 32-bit floating-point types.
[$sel:shaderDenormPreserveFloat32:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderDenormPreserveFloat64 is a boolean value indicating
-- whether denormals can be preserved in 64-bit floating-point
-- computations. It also indicates whether the DenormPreserve
-- execution mode can be used for 64-bit floating-point types.
[$sel:shaderDenormPreserveFloat64:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderDenormFlushToZeroFloat16 is a boolean value indicating
-- whether denormals can be flushed to zero in 16-bit
-- floating-point computations. It also indicates whether the
-- DenormFlushToZero execution mode can be used for
-- 16-bit floating-point types.
[$sel:shaderDenormFlushToZeroFloat16:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderDenormFlushToZeroFloat32 is a boolean value indicating
-- whether denormals can be flushed to zero in 32-bit
-- floating-point computations. It also indicates whether the
-- DenormFlushToZero execution mode can be used for
-- 32-bit floating-point types.
[$sel:shaderDenormFlushToZeroFloat32:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderDenormFlushToZeroFloat64 is a boolean value indicating
-- whether denormals can be flushed to zero in 64-bit
-- floating-point computations. It also indicates whether the
-- DenormFlushToZero execution mode can be used for
-- 64-bit floating-point types.
[$sel:shaderDenormFlushToZeroFloat64:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderRoundingModeRTEFloat16 is a boolean value indicating
-- whether an implementation supports the round-to-nearest-even rounding
-- mode for 16-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTE execution mode
-- can be used for 16-bit floating-point types.
[$sel:shaderRoundingModeRTEFloat16:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderRoundingModeRTEFloat32 is a boolean value indicating
-- whether an implementation supports the round-to-nearest-even rounding
-- mode for 32-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTE execution mode
-- can be used for 32-bit floating-point types.
[$sel:shaderRoundingModeRTEFloat32:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderRoundingModeRTEFloat64 is a boolean value indicating
-- whether an implementation supports the round-to-nearest-even rounding
-- mode for 64-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTE execution mode
-- can be used for 64-bit floating-point types.
[$sel:shaderRoundingModeRTEFloat64:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderRoundingModeRTZFloat16 is a boolean value indicating
-- whether an implementation supports the round-towards-zero rounding
-- mode for 16-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTZ execution mode
-- can be used for 16-bit floating-point types.
[$sel:shaderRoundingModeRTZFloat16:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderRoundingModeRTZFloat32 is a boolean value indicating
-- whether an implementation supports the round-towards-zero rounding
-- mode for 32-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTZ execution mode
-- can be used for 32-bit floating-point types.
[$sel:shaderRoundingModeRTZFloat32:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderRoundingModeRTZFloat64 is a boolean value indicating
-- whether an implementation supports the round-towards-zero rounding
-- mode for 64-bit floating-point arithmetic and conversion instructions.
-- It also indicates whether the RoundingModeRTZ execution mode
-- can be used for 64-bit floating-point types.
[$sel:shaderRoundingModeRTZFloat64:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | maxUpdateAfterBindDescriptorsInAllPools is the maximum number
-- of descriptors (summed over all descriptor types) that can be
-- created across all pools that are created with the
-- DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT bit set. Pool
-- creation may fail when this limit is exceeded, or when the
-- space this limit represents is unable to satisfy a pool creation due
-- to fragmentation.
[$sel:maxUpdateAfterBindDescriptorsInAllPools:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | shaderUniformBufferArrayNonUniformIndexingNative is a boolean
-- value indicating whether uniform buffer descriptors natively support
-- nonuniform indexing. If this is FALSE, then a single dynamic
-- instance of an instruction that nonuniformly indexes an array of
-- uniform buffers may execute multiple times in order to access
-- all the descriptors.
[$sel:shaderUniformBufferArrayNonUniformIndexingNative:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderSampledImageArrayNonUniformIndexingNative is a boolean
-- value indicating whether sampler and image descriptors natively
-- support nonuniform indexing. If this is FALSE, then a single
-- dynamic instance of an instruction that nonuniformly indexes an array
-- of samplers or images may execute multiple times in order to
-- access all the descriptors.
[$sel:shaderSampledImageArrayNonUniformIndexingNative:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderStorageBufferArrayNonUniformIndexingNative is a boolean
-- value indicating whether storage buffer descriptors natively support
-- nonuniform indexing. If this is FALSE, then a single dynamic
-- instance of an instruction that nonuniformly indexes an array of
-- storage buffers may execute multiple times in order to access
-- all the descriptors.
[$sel:shaderStorageBufferArrayNonUniformIndexingNative:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderStorageImageArrayNonUniformIndexingNative is a boolean
-- value indicating whether storage image descriptors natively support
-- nonuniform indexing. If this is FALSE, then a single dynamic
-- instance of an instruction that nonuniformly indexes an array of
-- storage images may execute multiple times in order to access
-- all the descriptors.
[$sel:shaderStorageImageArrayNonUniformIndexingNative:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | shaderInputAttachmentArrayNonUniformIndexingNative is a
-- boolean value indicating whether input attachment descriptors natively
-- support nonuniform indexing. If this is FALSE, then a single
-- dynamic instance of an instruction that nonuniformly indexes an array
-- of input attachments may execute multiple times in order to
-- access all the descriptors.
[$sel:shaderInputAttachmentArrayNonUniformIndexingNative:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | robustBufferAccessUpdateAfterBind is a boolean value
-- indicating whether robustBufferAccess can be enabled in
-- a device simultaneously with
-- descriptorBindingUniformBufferUpdateAfterBind,
-- descriptorBindingStorageBufferUpdateAfterBind,
-- descriptorBindingUniformTexelBufferUpdateAfterBind, and/or
-- descriptorBindingStorageTexelBufferUpdateAfterBind. If this
-- is FALSE, then either robustBufferAccess must
-- be disabled or all of these update-after-bind features must be
-- disabled.
[$sel:robustBufferAccessUpdateAfterBind:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | quadDivergentImplicitLod is a boolean value indicating
-- whether implicit level of detail calculations for image operations
-- have well-defined results when the image and/or sampler objects used
-- for the instruction are not uniform within a quad. See Derivative
-- Image Operations.
[$sel:quadDivergentImplicitLod:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | maxPerStageDescriptorUpdateAfterBindSamplers is similar to
-- maxPerStageDescriptorSamplers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindSamplers:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindUniformBuffers is similar
-- to maxPerStageDescriptorUniformBuffers but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindUniformBuffers:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindStorageBuffers is similar
-- to maxPerStageDescriptorStorageBuffers but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindStorageBuffers:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindSampledImages is similar
-- to maxPerStageDescriptorSampledImages but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindSampledImages:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindStorageImages is similar
-- to maxPerStageDescriptorStorageImages but counts descriptors
-- from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindStorageImages:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxPerStageDescriptorUpdateAfterBindInputAttachments is
-- similar to maxPerStageDescriptorInputAttachments but counts
-- descriptors from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageDescriptorUpdateAfterBindInputAttachments:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxPerStageUpdateAfterBindResources is similar to
-- maxPerStageResources but counts descriptors from descriptor
-- sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxPerStageUpdateAfterBindResources:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindSamplers is similar to
-- maxDescriptorSetSamplers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindSamplers:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindUniformBuffers is similar to
-- maxDescriptorSetUniformBuffers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindUniformBuffers:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindUniformBuffersDynamic is
-- similar to maxDescriptorSetUniformBuffersDynamic but counts
-- descriptors from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindUniformBuffersDynamic:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindStorageBuffers is similar to
-- maxDescriptorSetStorageBuffers but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindStorageBuffers:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindStorageBuffersDynamic is
-- similar to maxDescriptorSetStorageBuffersDynamic but counts
-- descriptors from descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindStorageBuffersDynamic:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindSampledImages is similar to
-- maxDescriptorSetSampledImages but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindSampledImages:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindStorageImages is similar to
-- maxDescriptorSetStorageImages but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindStorageImages:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | maxDescriptorSetUpdateAfterBindInputAttachments is similar to
-- maxDescriptorSetInputAttachments but counts descriptors from
-- descriptor sets created with or without the
-- DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
-- set.
[$sel:maxDescriptorSetUpdateAfterBindInputAttachments:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word32
-- | supportedDepthResolveModes is a bitmask of
-- ResolveModeFlagBits indicating the set of supported depth
-- resolve modes. RESOLVE_MODE_SAMPLE_ZERO_BIT must be
-- included in the set but implementations may support additional
-- modes.
[$sel:supportedDepthResolveModes:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ResolveModeFlags
-- | supportedStencilResolveModes is a bitmask of
-- ResolveModeFlagBits indicating the set of supported stencil
-- resolve modes. RESOLVE_MODE_SAMPLE_ZERO_BIT must be
-- included in the set but implementations may support additional
-- modes. RESOLVE_MODE_AVERAGE_BIT must not be included in
-- the set.
[$sel:supportedStencilResolveModes:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> ResolveModeFlags
-- | independentResolveNone is TRUE if the implementation
-- supports setting the depth and stencil resolve modes to different
-- values when one of those modes is RESOLVE_MODE_NONE. Otherwise
-- the implementation only supports setting both modes to the same value.
[$sel:independentResolveNone:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | independentResolve is TRUE if the implementation
-- supports all combinations of the supported depth and stencil resolve
-- modes, including setting either depth or stencil resolve mode to
-- RESOLVE_MODE_NONE. An implementation that supports
-- independentResolve must also support
-- independentResolveNone.
[$sel:independentResolve:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | filterMinmaxSingleComponentFormats is a boolean value
-- indicating whether a minimum set of required formats support min/max
-- filtering.
[$sel:filterMinmaxSingleComponentFormats:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | filterMinmaxImageComponentMapping is a boolean value
-- indicating whether the implementation supports non-identity component
-- mapping of the image when doing min/max filtering.
[$sel:filterMinmaxImageComponentMapping:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Bool
-- | maxTimelineSemaphoreValueDifference indicates the maximum
-- difference allowed by the implementation between the current value of
-- a timeline semaphore and any pending signal or wait operations.
[$sel:maxTimelineSemaphoreValueDifference:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> Word64
-- | framebufferIntegerColorSampleCounts is a bitmask of
-- SampleCountFlagBits indicating the color sample counts that are
-- supported for all framebuffer color attachments with integer formats.
[$sel:framebufferIntegerColorSampleCounts:PhysicalDeviceVulkan12Properties] :: PhysicalDeviceVulkan12Properties -> SampleCountFlags
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
-- | VkPhysicalDeviceDriverProperties - Structure containing driver
-- identification information
--
-- Description
--
-- driverID must be immutable for a given driver across
-- instances, processes, driver versions, and system reboots.
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- ConformanceVersion, DriverId, StructureType
data PhysicalDeviceDriverProperties
PhysicalDeviceDriverProperties :: DriverId -> ByteString -> ByteString -> ConformanceVersion -> PhysicalDeviceDriverProperties
-- | driverID is a unique identifier for the driver of the
-- physical device.
[$sel:driverID:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> DriverId
-- | driverName is an array of MAX_DRIVER_NAME_SIZE
-- char containing a null-terminated UTF-8 string which is the
-- name of the driver.
[$sel:driverName:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> ByteString
-- | driverInfo is an array of MAX_DRIVER_INFO_SIZE
-- char containing a null-terminated UTF-8 string with
-- additional information about the driver.
[$sel:driverInfo:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> ByteString
-- | conformanceVersion is the version of the Vulkan conformance
-- test this driver is conformant against (see
-- ConformanceVersion).
[$sel:conformanceVersion:PhysicalDeviceDriverProperties] :: PhysicalDeviceDriverProperties -> ConformanceVersion
-- | VkConformanceVersion - Structure containing the conformance test suite
-- version the implementation is compliant with
--
-- See Also
--
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceVulkan12Properties
data ConformanceVersion
ConformanceVersion :: Word8 -> Word8 -> Word8 -> Word8 -> ConformanceVersion
-- | major is the major version number of the conformance test
-- suite.
[$sel:major:ConformanceVersion] :: ConformanceVersion -> Word8
-- | minor is the minor version number of the conformance test
-- suite.
[$sel:minor:ConformanceVersion] :: ConformanceVersion -> Word8
-- | subminor is the subminor version number of the conformance
-- test suite.
[$sel:subminor:ConformanceVersion] :: ConformanceVersion -> Word8
-- | patch is the patch version number of the conformance test
-- suite.
[$sel:patch:ConformanceVersion] :: ConformanceVersion -> Word8
-- | VkDriverId - Khronos driver IDs
--
-- Description
--
-- Note
--
-- Khronos driver IDs may be allocated by vendors at any time. There may
-- be multiple driver IDs for the same vendor, representing different
-- drivers (for e.g. different platforms, proprietary or open source,
-- etc.). Only the latest canonical versions of this Specification, of
-- the corresponding vk.xml API Registry, and of the
-- corresponding vulkan_core.h header file must contain
-- all reserved Khronos driver IDs.
--
-- Only driver IDs registered with Khronos are given symbolic names.
-- There may be unregistered driver IDs returned.
--
-- See Also
--
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceVulkan12Properties
newtype DriverId
DriverId :: Int32 -> DriverId
pattern DRIVER_ID_AMD_PROPRIETARY :: DriverId
pattern DRIVER_ID_AMD_OPEN_SOURCE :: DriverId
pattern DRIVER_ID_MESA_RADV :: DriverId
pattern DRIVER_ID_NVIDIA_PROPRIETARY :: DriverId
pattern DRIVER_ID_INTEL_PROPRIETARY_WINDOWS :: DriverId
pattern DRIVER_ID_INTEL_OPEN_SOURCE_MESA :: DriverId
pattern DRIVER_ID_IMAGINATION_PROPRIETARY :: DriverId
pattern DRIVER_ID_QUALCOMM_PROPRIETARY :: DriverId
pattern DRIVER_ID_ARM_PROPRIETARY :: DriverId
pattern DRIVER_ID_GOOGLE_SWIFTSHADER :: DriverId
pattern DRIVER_ID_GGP_PROPRIETARY :: DriverId
pattern DRIVER_ID_BROADCOM_PROPRIETARY :: DriverId
pattern DRIVER_ID_MESA_LLVMPIPE :: DriverId
-- | VkStructureType - Vulkan structure types (sType)
--
-- Description
--
-- Each value corresponds to a particular structure with a sType
-- member with a matching name. As a general rule, the name of each
-- StructureType value is obtained by taking the name of the
-- structure, stripping the leading Vk, prefixing each capital
-- letter with _, converting the entire resulting string to
-- upper case, and prefixing it with VK_STRUCTURE_TYPE_. For
-- example, structures of type ImageCreateInfo correspond to a
-- StructureType of STRUCTURE_TYPE_IMAGE_CREATE_INFO, and
-- thus its sType member must equal that when it is
-- passed to the API.
--
-- The values STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO and
-- STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO are reserved for
-- internal use by the loader, and do not have corresponding Vulkan
-- structures in this Specification.
--
-- See Also
--
-- AccelerationStructureBuildGeometryInfoKHR,
-- AccelerationStructureCreateGeometryTypeInfoKHR,
-- AccelerationStructureCreateInfoKHR,
-- AccelerationStructureCreateInfoNV,
-- AccelerationStructureDeviceAddressInfoKHR,
-- AccelerationStructureGeometryAabbsDataKHR,
-- AccelerationStructureGeometryInstancesDataKHR,
-- AccelerationStructureGeometryKHR,
-- AccelerationStructureGeometryTrianglesDataKHR,
-- AccelerationStructureInfoNV,
-- AccelerationStructureMemoryRequirementsInfoKHR,
-- AccelerationStructureMemoryRequirementsInfoNV,
-- AccelerationStructureVersionKHR,
-- AcquireNextImageInfoKHR, AcquireProfilingLockInfoKHR,
-- AndroidHardwareBufferFormatPropertiesANDROID,
-- AndroidHardwareBufferPropertiesANDROID,
-- AndroidHardwareBufferUsageANDROID,
-- AndroidSurfaceCreateInfoKHR, ApplicationInfo,
-- AttachmentDescription2,
-- AttachmentDescriptionStencilLayout,
-- AttachmentReference2, AttachmentReferenceStencilLayout,
-- BaseInStructure, BaseOutStructure,
-- BindAccelerationStructureMemoryInfoKHR,
-- BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo,
-- BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo,
-- BindImageMemorySwapchainInfoKHR,
-- BindImagePlaneMemoryInfo, BindSparseInfo,
-- BufferCreateInfo, BufferDeviceAddressCreateInfoEXT,
-- BufferDeviceAddressInfo, BufferMemoryBarrier,
-- BufferMemoryRequirementsInfo2,
-- BufferOpaqueCaptureAddressCreateInfo,
-- BufferViewCreateInfo, CalibratedTimestampInfoEXT,
-- CheckpointDataNV, CommandBufferAllocateInfo,
-- CommandBufferBeginInfo,
-- CommandBufferInheritanceConditionalRenderingInfoEXT,
-- CommandBufferInheritanceInfo,
-- CommandBufferInheritanceRenderPassTransformInfoQCOM,
-- CommandPoolCreateInfo, ComputePipelineCreateInfo,
-- ConditionalRenderingBeginInfoEXT,
-- CooperativeMatrixPropertiesNV,
-- CopyAccelerationStructureInfoKHR,
-- CopyAccelerationStructureToMemoryInfoKHR,
-- CopyDescriptorSet,
-- CopyMemoryToAccelerationStructureInfoKHR,
-- D3D12FenceSubmitInfoKHR, DebugMarkerMarkerInfoEXT,
-- DebugMarkerObjectNameInfoEXT,
-- DebugMarkerObjectTagInfoEXT,
-- DebugReportCallbackCreateInfoEXT, DebugUtilsLabelEXT,
-- DebugUtilsMessengerCallbackDataEXT,
-- DebugUtilsMessengerCreateInfoEXT,
-- DebugUtilsObjectNameInfoEXT, DebugUtilsObjectTagInfoEXT,
-- DedicatedAllocationBufferCreateInfoNV,
-- DedicatedAllocationImageCreateInfoNV,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DeferredOperationInfoKHR, DescriptorPoolCreateInfo,
-- DescriptorPoolInlineUniformBlockCreateInfoEXT,
-- DescriptorSetAllocateInfo,
-- DescriptorSetLayoutBindingFlagsCreateInfo,
-- DescriptorSetLayoutCreateInfo,
-- DescriptorSetLayoutSupport,
-- DescriptorSetVariableDescriptorCountAllocateInfo,
-- DescriptorSetVariableDescriptorCountLayoutSupport,
-- DescriptorUpdateTemplateCreateInfo, DeviceCreateInfo,
-- DeviceDiagnosticsConfigCreateInfoNV, DeviceEventInfoEXT,
-- DeviceGroupBindSparseInfo,
-- DeviceGroupCommandBufferBeginInfo,
-- DeviceGroupDeviceCreateInfo,
-- DeviceGroupPresentCapabilitiesKHR,
-- DeviceGroupPresentInfoKHR,
-- DeviceGroupRenderPassBeginInfo, DeviceGroupSubmitInfo,
-- DeviceGroupSwapchainCreateInfoKHR,
-- DeviceMemoryOpaqueCaptureAddressInfo,
-- DeviceMemoryOverallocationCreateInfoAMD,
-- DevicePrivateDataCreateInfoEXT, DeviceQueueCreateInfo,
-- DeviceQueueGlobalPriorityCreateInfoEXT,
-- DeviceQueueInfo2, DisplayEventInfoEXT,
-- DisplayModeCreateInfoKHR, DisplayModeProperties2KHR,
-- DisplayNativeHdrSurfaceCapabilitiesAMD,
-- DisplayPlaneCapabilities2KHR, DisplayPlaneInfo2KHR,
-- DisplayPlaneProperties2KHR, DisplayPowerInfoEXT,
-- DisplayPresentInfoKHR, DisplayProperties2KHR,
-- DisplaySurfaceCreateInfoKHR,
-- DrmFormatModifierPropertiesListEXT, EventCreateInfo,
-- ExportFenceCreateInfo, ExportFenceWin32HandleInfoKHR,
-- ExportMemoryAllocateInfo, ExportMemoryAllocateInfoNV,
-- ExportMemoryWin32HandleInfoKHR,
-- ExportMemoryWin32HandleInfoNV,
-- ExportSemaphoreCreateInfo,
-- ExportSemaphoreWin32HandleInfoKHR,
-- ExternalBufferProperties, ExternalFenceProperties,
-- ExternalFormatANDROID, ExternalImageFormatProperties,
-- ExternalMemoryBufferCreateInfo,
-- ExternalMemoryImageCreateInfo,
-- ExternalMemoryImageCreateInfoNV,
-- ExternalSemaphoreProperties, FenceCreateInfo,
-- FenceGetFdInfoKHR, FenceGetWin32HandleInfoKHR,
-- FilterCubicImageViewImageFormatPropertiesEXT,
-- FormatProperties2, FramebufferAttachmentImageInfo,
-- FramebufferAttachmentsCreateInfo, FramebufferCreateInfo,
-- FramebufferMixedSamplesCombinationNV,
-- GeneratedCommandsInfoNV,
-- GeneratedCommandsMemoryRequirementsInfoNV,
-- GeometryAABBNV, GeometryNV, GeometryTrianglesNV,
-- GraphicsPipelineCreateInfo,
-- GraphicsPipelineShaderGroupsCreateInfoNV,
-- GraphicsShaderGroupCreateInfoNV, HdrMetadataEXT,
-- HeadlessSurfaceCreateInfoEXT, IOSSurfaceCreateInfoMVK,
-- ImageCreateInfo,
-- ImageDrmFormatModifierExplicitCreateInfoEXT,
-- ImageDrmFormatModifierListCreateInfoEXT,
-- ImageDrmFormatModifierPropertiesEXT,
-- ImageFormatListCreateInfo, ImageFormatProperties2,
-- ImageMemoryBarrier, ImageMemoryRequirementsInfo2,
-- ImagePipeSurfaceCreateInfoFUCHSIA,
-- ImagePlaneMemoryRequirementsInfo,
-- ImageSparseMemoryRequirementsInfo2,
-- ImageStencilUsageCreateInfo,
-- ImageSwapchainCreateInfoKHR, ImageViewASTCDecodeModeEXT,
-- ImageViewAddressPropertiesNVX, ImageViewCreateInfo,
-- ImageViewHandleInfoNVX, ImageViewUsageCreateInfo,
-- ImportAndroidHardwareBufferInfoANDROID,
-- ImportFenceFdInfoKHR, ImportFenceWin32HandleInfoKHR,
-- ImportMemoryFdInfoKHR, ImportMemoryHostPointerInfoEXT,
-- ImportMemoryWin32HandleInfoKHR,
-- ImportMemoryWin32HandleInfoNV, ImportSemaphoreFdInfoKHR,
-- ImportSemaphoreWin32HandleInfoKHR,
-- IndirectCommandsLayoutCreateInfoNV,
-- IndirectCommandsLayoutTokenNV,
-- InitializePerformanceApiInfoINTEL, InstanceCreateInfo,
-- MacOSSurfaceCreateInfoMVK, MappedMemoryRange,
-- MemoryAllocateFlagsInfo, MemoryAllocateInfo,
-- MemoryBarrier, MemoryDedicatedAllocateInfo,
-- MemoryDedicatedRequirements, MemoryFdPropertiesKHR,
-- MemoryGetAndroidHardwareBufferInfoANDROID,
-- MemoryGetFdInfoKHR, MemoryGetWin32HandleInfoKHR,
-- MemoryHostPointerPropertiesEXT,
-- MemoryOpaqueCaptureAddressAllocateInfo,
-- MemoryPriorityAllocateInfoEXT, MemoryRequirements2,
-- MemoryWin32HandlePropertiesKHR,
-- MetalSurfaceCreateInfoEXT, MultisamplePropertiesEXT,
-- PerformanceConfigurationAcquireInfoINTEL,
-- PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
-- PerformanceMarkerInfoINTEL,
-- PerformanceOverrideInfoINTEL,
-- PerformanceQuerySubmitInfoKHR,
-- PerformanceStreamMarkerInfoINTEL,
-- PhysicalDevice16BitStorageFeatures,
-- PhysicalDevice8BitStorageFeatures,
-- PhysicalDeviceASTCDecodeFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedFeaturesEXT,
-- PhysicalDeviceBlendOperationAdvancedPropertiesEXT,
-- PhysicalDeviceBufferDeviceAddressFeatures,
-- PhysicalDeviceBufferDeviceAddressFeaturesEXT,
-- PhysicalDeviceCoherentMemoryFeaturesAMD,
-- PhysicalDeviceComputeShaderDerivativesFeaturesNV,
-- PhysicalDeviceConditionalRenderingFeaturesEXT,
-- PhysicalDeviceConservativeRasterizationPropertiesEXT,
-- PhysicalDeviceCooperativeMatrixFeaturesNV,
-- PhysicalDeviceCooperativeMatrixPropertiesNV,
-- PhysicalDeviceCornerSampledImageFeaturesNV,
-- PhysicalDeviceCoverageReductionModeFeaturesNV,
-- PhysicalDeviceCustomBorderColorFeaturesEXT,
-- PhysicalDeviceCustomBorderColorPropertiesEXT,
-- PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV,
-- PhysicalDeviceDepthClipEnableFeaturesEXT,
-- PhysicalDeviceDepthStencilResolveProperties,
-- PhysicalDeviceDescriptorIndexingFeatures,
-- PhysicalDeviceDescriptorIndexingProperties,
-- PhysicalDeviceDeviceGeneratedCommandsFeaturesNV,
-- PhysicalDeviceDeviceGeneratedCommandsPropertiesNV,
-- PhysicalDeviceDiagnosticsConfigFeaturesNV,
-- PhysicalDeviceDiscardRectanglePropertiesEXT,
-- PhysicalDeviceDriverProperties,
-- PhysicalDeviceExclusiveScissorFeaturesNV,
-- PhysicalDeviceExternalBufferInfo,
-- PhysicalDeviceExternalFenceInfo,
-- PhysicalDeviceExternalImageFormatInfo,
-- PhysicalDeviceExternalMemoryHostPropertiesEXT,
-- PhysicalDeviceExternalSemaphoreInfo,
-- PhysicalDeviceFeatures2,
-- PhysicalDeviceFloatControlsProperties,
-- PhysicalDeviceFragmentDensityMapFeaturesEXT,
-- PhysicalDeviceFragmentDensityMapPropertiesEXT,
-- PhysicalDeviceFragmentShaderBarycentricFeaturesNV,
-- PhysicalDeviceFragmentShaderInterlockFeaturesEXT,
-- PhysicalDeviceGroupProperties,
-- PhysicalDeviceHostQueryResetFeatures,
-- PhysicalDeviceIDProperties,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- PhysicalDeviceImageFormatInfo2,
-- PhysicalDeviceImageViewImageFormatInfoEXT,
-- PhysicalDeviceImagelessFramebufferFeatures,
-- PhysicalDeviceIndexTypeUint8FeaturesEXT,
-- PhysicalDeviceInlineUniformBlockFeaturesEXT,
-- PhysicalDeviceInlineUniformBlockPropertiesEXT,
-- PhysicalDeviceLineRasterizationFeaturesEXT,
-- PhysicalDeviceLineRasterizationPropertiesEXT,
-- PhysicalDeviceMaintenance3Properties,
-- PhysicalDeviceMemoryBudgetPropertiesEXT,
-- PhysicalDeviceMemoryPriorityFeaturesEXT,
-- PhysicalDeviceMemoryProperties2,
-- PhysicalDeviceMeshShaderFeaturesNV,
-- PhysicalDeviceMeshShaderPropertiesNV,
-- PhysicalDeviceMultiviewFeatures,
-- PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX,
-- PhysicalDeviceMultiviewProperties,
-- PhysicalDevicePCIBusInfoPropertiesEXT,
-- PhysicalDevicePerformanceQueryFeaturesKHR,
-- PhysicalDevicePerformanceQueryPropertiesKHR,
-- PhysicalDevicePipelineCreationCacheControlFeaturesEXT,
-- PhysicalDevicePipelineExecutablePropertiesFeaturesKHR,
-- PhysicalDevicePointClippingProperties,
-- PhysicalDevicePrivateDataFeaturesEXT,
-- PhysicalDeviceProperties2,
-- PhysicalDeviceProtectedMemoryFeatures,
-- PhysicalDeviceProtectedMemoryProperties,
-- PhysicalDevicePushDescriptorPropertiesKHR,
-- PhysicalDeviceRayTracingFeaturesKHR,
-- PhysicalDeviceRayTracingPropertiesKHR,
-- PhysicalDeviceRayTracingPropertiesNV,
-- PhysicalDeviceRepresentativeFragmentTestFeaturesNV,
-- PhysicalDeviceRobustness2FeaturesEXT,
-- PhysicalDeviceRobustness2PropertiesEXT,
-- PhysicalDeviceSampleLocationsPropertiesEXT,
-- PhysicalDeviceSamplerFilterMinmaxProperties,
-- PhysicalDeviceSamplerYcbcrConversionFeatures,
-- PhysicalDeviceScalarBlockLayoutFeatures,
-- PhysicalDeviceSeparateDepthStencilLayoutsFeatures,
-- PhysicalDeviceShaderAtomicInt64Features,
-- PhysicalDeviceShaderClockFeaturesKHR,
-- PhysicalDeviceShaderCoreProperties2AMD,
-- PhysicalDeviceShaderCorePropertiesAMD,
-- PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT,
-- PhysicalDeviceShaderDrawParametersFeatures,
-- PhysicalDeviceShaderFloat16Int8Features,
-- PhysicalDeviceShaderImageFootprintFeaturesNV,
-- PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL,
-- PhysicalDeviceShaderSMBuiltinsFeaturesNV,
-- PhysicalDeviceShaderSMBuiltinsPropertiesNV,
-- PhysicalDeviceShaderSubgroupExtendedTypesFeatures,
-- PhysicalDeviceShadingRateImageFeaturesNV,
-- PhysicalDeviceShadingRateImagePropertiesNV,
-- PhysicalDeviceSparseImageFormatInfo2,
-- PhysicalDeviceSubgroupProperties,
-- PhysicalDeviceSubgroupSizeControlFeaturesEXT,
-- PhysicalDeviceSubgroupSizeControlPropertiesEXT,
-- PhysicalDeviceSurfaceInfo2KHR,
-- PhysicalDeviceTexelBufferAlignmentFeaturesEXT,
-- PhysicalDeviceTexelBufferAlignmentPropertiesEXT,
-- PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT,
-- PhysicalDeviceTimelineSemaphoreFeatures,
-- PhysicalDeviceTimelineSemaphoreProperties,
-- PhysicalDeviceToolPropertiesEXT,
-- PhysicalDeviceTransformFeedbackFeaturesEXT,
-- PhysicalDeviceTransformFeedbackPropertiesEXT,
-- PhysicalDeviceUniformBufferStandardLayoutFeatures,
-- PhysicalDeviceVariablePointersFeatures,
-- PhysicalDeviceVertexAttributeDivisorFeaturesEXT,
-- PhysicalDeviceVertexAttributeDivisorPropertiesEXT,
-- PhysicalDeviceVulkan11Features,
-- PhysicalDeviceVulkan11Properties,
-- PhysicalDeviceVulkan12Features,
-- PhysicalDeviceVulkan12Properties,
-- PhysicalDeviceVulkanMemoryModelFeatures,
-- PhysicalDeviceYcbcrImageArraysFeaturesEXT,
-- PipelineCacheCreateInfo,
-- PipelineColorBlendAdvancedStateCreateInfoEXT,
-- PipelineColorBlendStateCreateInfo,
-- PipelineCompilerControlCreateInfoAMD,
-- PipelineCoverageModulationStateCreateInfoNV,
-- PipelineCoverageReductionStateCreateInfoNV,
-- PipelineCoverageToColorStateCreateInfoNV,
-- PipelineCreationFeedbackCreateInfoEXT,
-- PipelineDepthStencilStateCreateInfo,
-- PipelineDiscardRectangleStateCreateInfoEXT,
-- PipelineDynamicStateCreateInfo,
-- PipelineExecutableInfoKHR,
-- PipelineExecutableInternalRepresentationKHR,
-- PipelineExecutablePropertiesKHR,
-- PipelineExecutableStatisticKHR, PipelineInfoKHR,
-- PipelineInputAssemblyStateCreateInfo,
-- PipelineLayoutCreateInfo, PipelineLibraryCreateInfoKHR,
-- PipelineMultisampleStateCreateInfo,
-- PipelineRasterizationConservativeStateCreateInfoEXT,
-- PipelineRasterizationDepthClipStateCreateInfoEXT,
-- PipelineRasterizationLineStateCreateInfoEXT,
-- PipelineRasterizationStateCreateInfo,
-- PipelineRasterizationStateRasterizationOrderAMD,
-- PipelineRasterizationStateStreamCreateInfoEXT,
-- PipelineRepresentativeFragmentTestStateCreateInfoNV,
-- PipelineSampleLocationsStateCreateInfoEXT,
-- PipelineShaderStageCreateInfo,
-- PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT,
-- PipelineTessellationDomainOriginStateCreateInfo,
-- PipelineTessellationStateCreateInfo,
-- PipelineVertexInputDivisorStateCreateInfoEXT,
-- PipelineVertexInputStateCreateInfo,
-- PipelineViewportCoarseSampleOrderStateCreateInfoNV,
-- PipelineViewportExclusiveScissorStateCreateInfoNV,
-- PipelineViewportShadingRateImageStateCreateInfoNV,
-- PipelineViewportStateCreateInfo,
-- PipelineViewportSwizzleStateCreateInfoNV,
-- PipelineViewportWScalingStateCreateInfoNV,
-- PresentFrameTokenGGP, PresentInfoKHR,
-- PresentRegionsKHR, PresentTimesInfoGOOGLE,
-- PrivateDataSlotCreateInfoEXT, ProtectedSubmitInfo,
-- QueryPoolCreateInfo, QueryPoolPerformanceCreateInfoKHR,
-- QueryPoolPerformanceQueryCreateInfoINTEL,
-- QueueFamilyCheckpointPropertiesNV,
-- QueueFamilyProperties2, RayTracingPipelineCreateInfoKHR,
-- RayTracingPipelineCreateInfoNV,
-- RayTracingPipelineInterfaceCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoKHR,
-- RayTracingShaderGroupCreateInfoNV,
-- RenderPassAttachmentBeginInfo, RenderPassBeginInfo,
-- RenderPassCreateInfo, RenderPassCreateInfo2,
-- RenderPassFragmentDensityMapCreateInfoEXT,
-- RenderPassInputAttachmentAspectCreateInfo,
-- RenderPassMultiviewCreateInfo,
-- RenderPassSampleLocationsBeginInfoEXT,
-- RenderPassTransformBeginInfoQCOM,
-- SampleLocationsInfoEXT, SamplerCreateInfo,
-- SamplerCustomBorderColorCreateInfoEXT,
-- SamplerReductionModeCreateInfo,
-- SamplerYcbcrConversionCreateInfo,
-- SamplerYcbcrConversionImageFormatProperties,
-- SamplerYcbcrConversionInfo, SemaphoreCreateInfo,
-- SemaphoreGetFdInfoKHR, SemaphoreGetWin32HandleInfoKHR,
-- SemaphoreSignalInfo, SemaphoreTypeCreateInfo,
-- SemaphoreWaitInfo, ShaderModuleCreateInfo,
-- ShaderModuleValidationCacheCreateInfoEXT,
-- SharedPresentSurfaceCapabilitiesKHR,
-- SparseImageFormatProperties2,
-- SparseImageMemoryRequirements2,
-- StreamDescriptorSurfaceCreateInfoGGP, SubmitInfo,
-- SubpassBeginInfo, SubpassDependency2,
-- SubpassDescription2,
-- SubpassDescriptionDepthStencilResolve, SubpassEndInfo,
-- SurfaceCapabilities2EXT, SurfaceCapabilities2KHR,
-- SurfaceCapabilitiesFullScreenExclusiveEXT,
-- SurfaceFormat2KHR, SurfaceFullScreenExclusiveInfoEXT,
-- SurfaceFullScreenExclusiveWin32InfoEXT,
-- SurfaceProtectedCapabilitiesKHR,
-- SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR,
-- SwapchainDisplayNativeHdrCreateInfoAMD,
-- TextureLODGatherFormatPropertiesAMD,
-- TimelineSemaphoreSubmitInfo,
-- ValidationCacheCreateInfoEXT, ValidationFeaturesEXT,
-- ValidationFlagsEXT, ViSurfaceCreateInfoNN,
-- WaylandSurfaceCreateInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoKHR,
-- Win32KeyedMutexAcquireReleaseInfoNV,
-- Win32SurfaceCreateInfoKHR, WriteDescriptorSet,
-- WriteDescriptorSetAccelerationStructureKHR,
-- WriteDescriptorSetInlineUniformBlockEXT,
-- XcbSurfaceCreateInfoKHR, XlibSurfaceCreateInfoKHR
newtype StructureType
StructureType :: Int32 -> StructureType
pattern STRUCTURE_TYPE_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: StructureType
pattern STRUCTURE_TYPE_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_APPLICATION_INFO :: StructureType
pattern STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: StructureType
pattern STRUCTURE_TYPE_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EVENT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_MEMORY_BARRIER :: StructureType
pattern STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_AABB_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: StructureType
pattern STRUCTURE_TYPE_GEOMETRY_NV :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: StructureType
pattern STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_HDR_METADATA_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: StructureType
pattern STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: StructureType
pattern STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: StructureType
pattern STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: StructureType
pattern STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: StructureType
pattern STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: StructureType
pattern STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: StructureType
pattern STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_PRESENT_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: StructureType
pattern STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: StructureType
pattern STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: StructureType
pattern STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_END_INFO :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: StructureType
pattern STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: StructureType
pattern STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: StructureType
pattern STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: StructureType
pattern STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: StructureType
pattern STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: StructureType
pattern STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: StructureType
pattern STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: StructureType
pattern STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: StructureType
pattern STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: StructureType
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: StructureType
type MAX_DRIVER_INFO_SIZE = 256
type MAX_DRIVER_NAME_SIZE = 256
pattern MAX_DRIVER_INFO_SIZE :: forall a. Integral a => a
pattern MAX_DRIVER_NAME_SIZE :: forall a. Integral a => a
instance GHC.Classes.Eq Vulkan.Core12.PhysicalDeviceVulkan12Features
instance GHC.Classes.Eq Vulkan.Core12.PhysicalDeviceVulkan11Features
instance GHC.Generics.Generic Vulkan.Core12.PhysicalDeviceVulkan11Features
instance GHC.Show.Show Vulkan.Core12.PhysicalDeviceVulkan11Features
instance GHC.Generics.Generic Vulkan.Core12.PhysicalDeviceVulkan11Properties
instance GHC.Show.Show Vulkan.Core12.PhysicalDeviceVulkan11Properties
instance GHC.Generics.Generic Vulkan.Core12.PhysicalDeviceVulkan12Features
instance GHC.Show.Show Vulkan.Core12.PhysicalDeviceVulkan12Features
instance GHC.Generics.Generic Vulkan.Core12.PhysicalDeviceVulkan12Properties
instance GHC.Show.Show Vulkan.Core12.PhysicalDeviceVulkan12Properties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.PhysicalDeviceVulkan12Properties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.PhysicalDeviceVulkan12Properties
instance Vulkan.Zero.Zero Vulkan.Core12.PhysicalDeviceVulkan12Properties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.PhysicalDeviceVulkan12Features
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.PhysicalDeviceVulkan12Features
instance Foreign.Storable.Storable Vulkan.Core12.PhysicalDeviceVulkan12Features
instance Vulkan.Zero.Zero Vulkan.Core12.PhysicalDeviceVulkan12Features
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.PhysicalDeviceVulkan11Properties
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.PhysicalDeviceVulkan11Properties
instance Foreign.Storable.Storable Vulkan.Core12.PhysicalDeviceVulkan11Properties
instance Vulkan.Zero.Zero Vulkan.Core12.PhysicalDeviceVulkan11Properties
instance Vulkan.CStruct.ToCStruct Vulkan.Core12.PhysicalDeviceVulkan11Features
instance Vulkan.CStruct.FromCStruct Vulkan.Core12.PhysicalDeviceVulkan11Features
instance Foreign.Storable.Storable Vulkan.Core12.PhysicalDeviceVulkan11Features
instance Vulkan.Zero.Zero Vulkan.Core12.PhysicalDeviceVulkan11Features
module Vulkan.Core10.CommandBuffer
-- | vkAllocateCommandBuffers - Allocate command buffers from an existing
-- command pool
--
-- Description
--
-- allocateCommandBuffers can be used to create multiple
-- command buffers. If the creation of any of those command buffers
-- fails, the implementation must destroy all successfully created
-- command buffer objects from this command, set all entries of the
-- pCommandBuffers array to NULL and return the error.
--
-- When command buffers are first allocated, they are in the initial
-- state.
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pAllocateInfo must be a valid pointer to a valid
-- CommandBufferAllocateInfo structure
-- - pCommandBuffers must be a valid pointer to an
-- array of pAllocateInfo->commandBufferCount
-- CommandBuffer handles
-- - The value referenced by
-- pAllocateInfo->commandBufferCount must be greater
-- than 0
--
--
-- Host Synchronization
--
--
-- - Host access to pAllocateInfo->commandPool must
-- be externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer, CommandBufferAllocateInfo, Device
allocateCommandBuffers :: forall io. MonadIO io => Device -> CommandBufferAllocateInfo -> io ("commandBuffers" ::: Vector CommandBuffer)
-- | A convenience wrapper to make a compatible pair of calls to
-- allocateCommandBuffers and freeCommandBuffers
--
-- To ensure that freeCommandBuffers is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withCommandBuffers :: forall io r. MonadIO io => Device -> CommandBufferAllocateInfo -> (io (Vector CommandBuffer) -> (Vector CommandBuffer -> io ()) -> r) -> r
-- | vkFreeCommandBuffers - Free command buffers
--
-- Description
--
-- Any primary command buffer that is in the recording or executable
-- state and has any element of pCommandBuffers recorded
-- into it, becomes invalid.
--
-- Valid Usage
--
--
-- - All elements of pCommandBuffers must not be in the
-- pending state
--
--
--
-- - pCommandBuffers must be a valid pointer to an
-- array of commandBufferCount CommandBuffer handles,
-- each element of which must either be a valid handle or
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - commandPool must be a valid CommandPool
-- handle
-- - commandBufferCount must be greater than
-- 0
-- - commandPool must have been created, allocated, or
-- retrieved from device
-- - Each element of pCommandBuffers that is a valid handle
-- must have been created, allocated, or retrieved from
-- commandPool
--
--
-- Host Synchronization
--
--
-- - Host access to commandPool must be externally
-- synchronized
--
--
--
-- - Host access to each member of pCommandBuffers must
-- be externally synchronized
--
--
-- See Also
--
-- CommandBuffer, CommandPool, Device
freeCommandBuffers :: forall io. MonadIO io => Device -> CommandPool -> ("commandBuffers" ::: Vector CommandBuffer) -> io ()
-- | vkBeginCommandBuffer - Start recording a command buffer
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer, CommandBufferBeginInfo
beginCommandBuffer :: forall a io. (Extendss CommandBufferBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> CommandBufferBeginInfo a -> io ()
-- | This function will call the supplied action between calls to
-- beginCommandBuffer and endCommandBuffer
--
-- Note that endCommandBuffer is *not* called if an exception is
-- thrown by the inner action.
useCommandBuffer :: forall a io r. (Extendss CommandBufferBeginInfo a, PokeChain a, MonadIO io) => CommandBuffer -> CommandBufferBeginInfo a -> io r -> io r
-- | vkEndCommandBuffer - Finish recording a command buffer
--
-- Description
--
-- If there was an error during recording, the application will be
-- notified by an unsuccessful return code returned by
-- endCommandBuffer. If the application wishes to further use the
-- command buffer, the command buffer must be reset. The command
-- buffer must have been in the recording state, and is
-- moved to the executable state.
--
-- Valid Usage
--
--
--
--
-- - If commandBuffer is a primary command buffer, there
-- must not be an active render pass instance
-- - All queries made active during the recording of
-- commandBuffer must have been made inactive
-- - Conditional rendering must not be active
-- - If commandBuffer is a secondary command buffer, there
-- must not be an outstanding cmdBeginDebugUtilsLabelEXT
-- command recorded to commandBuffer that has not previously
-- been ended by a call to cmdEndDebugUtilsLabelEXT
-- - If commandBuffer is a secondary command buffer, there
-- must not be an outstanding cmdDebugMarkerBeginEXT
-- command recorded to commandBuffer that has not previously
-- been ended by a call to cmdDebugMarkerEndEXT
--
--
-- Valid Usage (Implicit)
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
--
-- - Host access to the CommandPool that commandBuffer
-- was allocated from must be externally synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer
endCommandBuffer :: forall io. MonadIO io => CommandBuffer -> io ()
-- | vkResetCommandBuffer - Reset a command buffer to the initial state
--
-- Description
--
-- Any primary command buffer that is in the recording or executable
-- state and has commandBuffer recorded into it, becomes
-- invalid.
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- Host Synchronization
--
--
-- - Host access to commandBuffer must be externally
-- synchronized
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- CommandBuffer, CommandBufferResetFlags
resetCommandBuffer :: forall io. MonadIO io => CommandBuffer -> CommandBufferResetFlags -> io ()
-- | VkCommandBufferAllocateInfo - Structure specifying the allocation
-- parameters for command buffer object
--
-- Valid Usage (Implicit)
--
-- See Also
--
-- CommandBufferLevel, CommandPool, StructureType,
-- allocateCommandBuffers
data CommandBufferAllocateInfo
CommandBufferAllocateInfo :: CommandPool -> CommandBufferLevel -> Word32 -> CommandBufferAllocateInfo
-- | commandPool is the command pool from which the command
-- buffers are allocated.
--
-- commandPool must be a valid CommandPool handle
[$sel:commandPool:CommandBufferAllocateInfo] :: CommandBufferAllocateInfo -> CommandPool
-- | level is a CommandBufferLevel value specifying the
-- command buffer level.
--
-- level must be a valid CommandBufferLevel value
[$sel:level:CommandBufferAllocateInfo] :: CommandBufferAllocateInfo -> CommandBufferLevel
-- | commandBufferCount is the number of command buffers to
-- allocate from the pool.
--
-- commandBufferCount must be greater than 0
[$sel:commandBufferCount:CommandBufferAllocateInfo] :: CommandBufferAllocateInfo -> Word32
-- | VkCommandBufferInheritanceInfo - Structure specifying command buffer
-- inheritance info
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- Bool32, CommandBufferBeginInfo, Framebuffer,
-- QueryControlFlags, QueryPipelineStatisticFlags,
-- RenderPass, StructureType
data CommandBufferInheritanceInfo (es :: [Type])
CommandBufferInheritanceInfo :: Chain es -> RenderPass -> Word32 -> Framebuffer -> Bool -> QueryControlFlags -> QueryPipelineStatisticFlags -> CommandBufferInheritanceInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> Chain es
-- | renderPass is a RenderPass object defining which
-- render passes the CommandBuffer will be compatible with
-- and can be executed within. If the CommandBuffer will
-- not be executed within a render pass instance, renderPass is
-- ignored.
[$sel:renderPass:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> RenderPass
-- | subpass is the index of the subpass within the render pass
-- instance that the CommandBuffer will be executed within. If the
-- CommandBuffer will not be executed within a render pass
-- instance, subpass is ignored.
[$sel:subpass:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> Word32
-- | framebuffer optionally refers to the Framebuffer
-- object that the CommandBuffer will be rendering to if it is
-- executed within a render pass instance. It can be
-- NULL_HANDLE if the framebuffer is not known, or if the
-- CommandBuffer will not be executed within a render pass
-- instance.
--
-- Note
--
-- Specifying the exact framebuffer that the secondary command buffer
-- will be executed with may result in better performance at
-- command buffer execution time.
[$sel:framebuffer:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> Framebuffer
-- | occlusionQueryEnable specifies whether the command buffer
-- can be executed while an occlusion query is active in the
-- primary command buffer. If this is TRUE, then this command
-- buffer can be executed whether the primary command buffer has
-- an occlusion query active or not. If this is FALSE, then the
-- primary command buffer must not have an occlusion query active.
[$sel:occlusionQueryEnable:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> Bool
-- | queryFlags specifies the query flags that can be used
-- by an active occlusion query in the primary command buffer when this
-- secondary command buffer is executed. If this value includes the
-- QUERY_CONTROL_PRECISE_BIT bit, then the active query can
-- return boolean results or actual sample counts. If this bit is not
-- set, then the active query must not use the
-- QUERY_CONTROL_PRECISE_BIT bit.
[$sel:queryFlags:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> QueryControlFlags
-- | pipelineStatistics is a bitmask of
-- QueryPipelineStatisticFlagBits specifying the set of pipeline
-- statistics that can be counted by an active query in the
-- primary command buffer when this secondary command buffer is executed.
-- If this value includes a given bit, then this command buffer
-- can be executed whether the primary command buffer has a
-- pipeline statistics query active that includes this bit or not. If
-- this value excludes a given bit, then the active pipeline statistics
-- query must not be from a query pool that counts that statistic.
[$sel:pipelineStatistics:CommandBufferInheritanceInfo] :: CommandBufferInheritanceInfo (es :: [Type]) -> QueryPipelineStatisticFlags
-- | VkCommandBufferBeginInfo - Structure specifying a command buffer begin
-- operation
--
-- Valid Usage
--
--
--
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- CommandBufferInheritanceInfo, CommandBufferUsageFlags,
-- StructureType, beginCommandBuffer
data CommandBufferBeginInfo (es :: [Type])
CommandBufferBeginInfo :: Chain es -> CommandBufferUsageFlags -> Maybe (SomeStruct CommandBufferInheritanceInfo) -> CommandBufferBeginInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:CommandBufferBeginInfo] :: CommandBufferBeginInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of CommandBufferUsageFlagBits
-- specifying usage behavior for the command buffer.
[$sel:flags:CommandBufferBeginInfo] :: CommandBufferBeginInfo (es :: [Type]) -> CommandBufferUsageFlags
-- | pInheritanceInfo is a pointer to a
-- CommandBufferInheritanceInfo structure, used if
-- commandBuffer is a secondary command buffer. If this is a
-- primary command buffer, then this value is ignored.
[$sel:inheritanceInfo:CommandBufferBeginInfo] :: CommandBufferBeginInfo (es :: [Type]) -> Maybe (SomeStruct CommandBufferInheritanceInfo)
-- | VkCommandBuffer - Opaque handle to a command buffer object
--
-- See Also
--
-- SubmitInfo, allocateCommandBuffers,
-- beginCommandBuffer, cmdBeginConditionalRenderingEXT,
-- cmdBeginDebugUtilsLabelEXT, cmdBeginQuery,
-- cmdBeginQueryIndexedEXT, cmdBeginRenderPass,
-- cmdBeginRenderPass2, cmdBeginRenderPass2KHR,
-- cmdBeginTransformFeedbackEXT, cmdBindDescriptorSets,
-- cmdBindIndexBuffer, cmdBindPipeline,
-- cmdBindPipelineShaderGroupNV, cmdBindShadingRateImageNV,
-- cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers, cmdBlitImage,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureKHR,
-- cmdBuildAccelerationStructureNV, cmdClearAttachments,
-- cmdClearColorImage, cmdClearDepthStencilImage,
-- cmdCopyAccelerationStructureKHR,
-- cmdCopyAccelerationStructureNV,
-- cmdCopyAccelerationStructureToMemoryKHR, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImage,
-- cmdCopyImageToBuffer,
-- cmdCopyMemoryToAccelerationStructureKHR,
-- cmdCopyQueryPoolResults, cmdDebugMarkerBeginEXT,
-- cmdDebugMarkerEndEXT, cmdDebugMarkerInsertEXT,
-- cmdDispatch, cmdDispatchBase, cmdDispatchBaseKHR,
-- cmdDispatchIndirect, cmdDraw, cmdDrawIndexed,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdDrawMeshTasksNV,
-- cmdEndConditionalRenderingEXT, cmdEndDebugUtilsLabelEXT,
-- cmdEndQuery, cmdEndQueryIndexedEXT,
-- cmdEndRenderPass, cmdEndRenderPass2,
-- cmdEndRenderPass2KHR, cmdEndTransformFeedbackEXT,
-- cmdExecuteCommands, cmdExecuteGeneratedCommandsNV,
-- cmdFillBuffer, cmdInsertDebugUtilsLabelEXT,
-- cmdNextSubpass, cmdNextSubpass2,
-- cmdNextSubpass2KHR, cmdPipelineBarrier,
-- cmdPreprocessGeneratedCommandsNV, cmdPushConstants,
-- cmdPushDescriptorSetKHR,
-- cmdPushDescriptorSetWithTemplateKHR, cmdResetEvent,
-- cmdResetQueryPool, cmdResolveImage,
-- cmdSetBlendConstants, cmdSetCheckpointNV,
-- cmdSetCoarseSampleOrderNV, cmdSetDepthBias,
-- cmdSetDepthBounds, cmdSetDeviceMask,
-- cmdSetDeviceMaskKHR, cmdSetDiscardRectangleEXT,
-- cmdSetEvent, cmdSetExclusiveScissorNV,
-- cmdSetLineStippleEXT, cmdSetLineWidth,
-- cmdSetPerformanceMarkerINTEL,
-- cmdSetPerformanceOverrideINTEL,
-- cmdSetPerformanceStreamMarkerINTEL,
-- cmdSetSampleLocationsEXT, cmdSetScissor,
-- cmdSetStencilCompareMask, cmdSetStencilReference,
-- cmdSetStencilWriteMask, cmdSetViewport,
-- cmdSetViewportShadingRatePaletteNV,
-- cmdSetViewportWScalingNV, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysKHR, cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWaitEvents,
-- cmdWriteAccelerationStructuresPropertiesKHR,
-- cmdWriteAccelerationStructuresPropertiesNV,
-- cmdWriteBufferMarkerAMD, cmdWriteTimestamp,
-- endCommandBuffer, freeCommandBuffers,
-- resetCommandBuffer
data CommandBuffer
CommandBuffer :: Ptr CommandBuffer_T -> DeviceCmds -> CommandBuffer
[$sel:commandBufferHandle:CommandBuffer] :: CommandBuffer -> Ptr CommandBuffer_T
[$sel:deviceCmds:CommandBuffer] :: CommandBuffer -> DeviceCmds
-- | VkCommandBufferLevel - Enumerant specifying a command buffer level
--
-- See Also
--
-- CommandBufferAllocateInfo
newtype CommandBufferLevel
CommandBufferLevel :: Int32 -> CommandBufferLevel
-- | COMMAND_BUFFER_LEVEL_PRIMARY specifies a primary command
-- buffer.
pattern COMMAND_BUFFER_LEVEL_PRIMARY :: CommandBufferLevel
-- | COMMAND_BUFFER_LEVEL_SECONDARY specifies a secondary command
-- buffer.
pattern COMMAND_BUFFER_LEVEL_SECONDARY :: CommandBufferLevel
-- | VkQueryControlFlagBits - Bitmask specifying constraints on a query
--
-- See Also
--
-- QueryControlFlags
newtype QueryControlFlagBits
QueryControlFlagBits :: Flags -> QueryControlFlagBits
-- | QUERY_CONTROL_PRECISE_BIT specifies the precision of
-- occlusion queries.
pattern QUERY_CONTROL_PRECISE_BIT :: QueryControlFlagBits
type QueryControlFlags = QueryControlFlagBits
-- | VkCommandBufferUsageFlagBits - Bitmask specifying usage behavior for
-- command buffer
--
-- See Also
--
-- CommandBufferUsageFlags
newtype CommandBufferUsageFlagBits
CommandBufferUsageFlagBits :: Flags -> CommandBufferUsageFlagBits
-- | COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT specifies that each
-- recording of the command buffer will only be submitted once, and the
-- command buffer will be reset and recorded again between each
-- submission.
pattern COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT :: CommandBufferUsageFlagBits
-- | COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT specifies that a
-- secondary command buffer is considered to be entirely inside a render
-- pass. If this is a primary command buffer, then this bit is ignored.
pattern COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT :: CommandBufferUsageFlagBits
-- | COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT specifies that a
-- command buffer can be resubmitted to a queue while it is in the
-- /pending state/, and recorded into multiple primary command buffers.
pattern COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT :: CommandBufferUsageFlagBits
type CommandBufferUsageFlags = CommandBufferUsageFlagBits
-- | VkCommandBufferResetFlagBits - Bitmask controlling behavior of a
-- command buffer reset
--
-- See Also
--
-- CommandBufferResetFlags
newtype CommandBufferResetFlagBits
CommandBufferResetFlagBits :: Flags -> CommandBufferResetFlagBits
-- | COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT specifies that most
-- or all memory resources currently owned by the command buffer
-- should be returned to the parent command pool. If this flag is
-- not set, then the command buffer may hold onto memory resources
-- and reuse them when recording commands. commandBuffer is
-- moved to the initial state.
pattern COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT :: CommandBufferResetFlagBits
type CommandBufferResetFlags = CommandBufferResetFlagBits
instance GHC.Classes.Eq Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
instance GHC.Generics.Generic Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
instance GHC.Show.Show Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
instance GHC.Generics.Generic (Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es)
instance GHC.Generics.Generic (Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.CommandBuffer.CommandBufferBeginInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.CommandBuffer.CommandBufferInheritanceInfo es)
instance Vulkan.CStruct.ToCStruct Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
instance Vulkan.CStruct.FromCStruct Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
instance Foreign.Storable.Storable Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
instance Vulkan.Zero.Zero Vulkan.Core10.CommandBuffer.CommandBufferAllocateInfo
module Vulkan.Core10.Buffer
-- | vkCreateBuffer - Create a new buffer object
--
-- Valid Usage
--
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - pCreateInfo must be a valid pointer to a valid
-- BufferCreateInfo structure
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - pBuffer must be a valid pointer to a Buffer
-- handle
--
--
-- Return Codes
--
--
--
--
--
-- See Also
--
-- AllocationCallbacks, Buffer, BufferCreateInfo,
-- Device
createBuffer :: forall a io. (Extendss BufferCreateInfo a, PokeChain a, MonadIO io) => Device -> BufferCreateInfo a -> ("allocator" ::: Maybe AllocationCallbacks) -> io Buffer
-- | A convenience wrapper to make a compatible pair of calls to
-- createBuffer and destroyBuffer
--
-- To ensure that destroyBuffer is always called: pass
-- bracket (or the allocate function from your favourite resource
-- management library) as the first argument. To just extract the pair
-- pass (,) as the first argument.
withBuffer :: forall a io r. (Extendss BufferCreateInfo a, PokeChain a, MonadIO io) => Device -> BufferCreateInfo a -> Maybe AllocationCallbacks -> (io Buffer -> (Buffer -> io ()) -> r) -> r
-- | vkDestroyBuffer - Destroy a buffer object
--
-- Valid Usage
--
--
-- - All submitted commands that refer to buffer, either
-- directly or via a BufferView, must have completed
-- execution
--
--
--
-- - If AllocationCallbacks were provided when buffer
-- was created, a compatible set of callbacks must be provided
-- here
-- - If no AllocationCallbacks were provided when
-- buffer was created, pAllocator must be
-- NULL
--
--
-- Valid Usage (Implicit)
--
--
-- - device must be a valid Device handle
--
--
--
-- - If buffer is not NULL_HANDLE, buffer
-- must be a valid Buffer handle
-- - If pAllocator is not NULL, pAllocator
-- must be a valid pointer to a valid AllocationCallbacks
-- structure
-- - If buffer is a valid handle, it must have been
-- created, allocated, or retrieved from device
--
--
-- Host Synchronization
--
--
-- - Host access to buffer must be externally
-- synchronized
--
--
-- See Also
--
-- AllocationCallbacks, Buffer, Device
destroyBuffer :: forall io. MonadIO io => Device -> Buffer -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
-- | VkBufferCreateInfo - Structure specifying the parameters of a newly
-- created buffer object
--
-- Valid Usage
--
--
-- - size must be greater than 0
--
--
--
-- - If sharingMode is SHARING_MODE_CONCURRENT,
-- pQueueFamilyIndices must be a valid pointer to an
-- array of queueFamilyIndexCount uint32_t values
-- - If sharingMode is SHARING_MODE_CONCURRENT,
-- queueFamilyIndexCount must be greater than
-- 1
-- - If sharingMode is SHARING_MODE_CONCURRENT, each
-- element of pQueueFamilyIndices must be unique and
-- must be less than pQueueFamilyPropertyCount returned
-- by either getPhysicalDeviceQueueFamilyProperties or
-- getPhysicalDeviceQueueFamilyProperties2 for the
-- physicalDevice that was used to create device
-- - If the sparse bindings feature is not enabled,
-- flags must not contain
-- BUFFER_CREATE_SPARSE_BINDING_BIT
-- - If the sparse buffer residency feature is not enabled,
-- flags must not contain
-- BUFFER_CREATE_SPARSE_RESIDENCY_BIT
-- - If the sparse aliased residency feature is not enabled,
-- flags must not contain
-- BUFFER_CREATE_SPARSE_ALIASED_BIT
-- - If flags contains
-- BUFFER_CREATE_SPARSE_RESIDENCY_BIT or
-- BUFFER_CREATE_SPARSE_ALIASED_BIT, it must also contain
-- BUFFER_CREATE_SPARSE_BINDING_BIT
-- - If the pNext chain includes a
-- ExternalMemoryBufferCreateInfo structure, its
-- handleTypes member must only contain bits that are
-- also in
-- ExternalBufferProperties::externalMemoryProperties.compatibleHandleTypes,
-- as returned by getPhysicalDeviceExternalBufferProperties with
-- pExternalBufferInfo->handleType equal to any one of the
-- handle types specified in
-- ExternalMemoryBufferCreateInfo::handleTypes
-- - If the protected memory feature is not enabled, flags
-- must not contain BUFFER_CREATE_PROTECTED_BIT
-- - If any of the bits BUFFER_CREATE_SPARSE_BINDING_BIT,
-- BUFFER_CREATE_SPARSE_RESIDENCY_BIT, or
-- BUFFER_CREATE_SPARSE_ALIASED_BIT are set,
-- BUFFER_CREATE_PROTECTED_BIT must not also be set
-- - If the pNext chain includes a
-- DedicatedAllocationBufferCreateInfoNV structure, and the
-- dedicatedAllocation member of the chained structure is
-- TRUE, then flags must not include
-- BUFFER_CREATE_SPARSE_BINDING_BIT,
-- BUFFER_CREATE_SPARSE_RESIDENCY_BIT, or
-- BUFFER_CREATE_SPARSE_ALIASED_BIT
-- - If BufferDeviceAddressCreateInfoEXT::deviceAddress
-- is not zero, flags must include
-- BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
-- - If
-- BufferOpaqueCaptureAddressCreateInfo::opaqueCaptureAddress
-- is not zero, flags must include
-- BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
-- - If flags includes
-- BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT, the
-- bufferDeviceAddressCaptureReplay or
-- ::bufferDeviceAddressCaptureReplay feature must be
-- enabled
--
--
-- Valid Usage (Implicit)
--
--
--
--
--
-- See Also
--
-- BufferCreateFlags, BufferUsageFlags, DeviceSize,
-- SharingMode, StructureType, createBuffer
data BufferCreateInfo (es :: [Type])
BufferCreateInfo :: Chain es -> BufferCreateFlags -> DeviceSize -> BufferUsageFlags -> SharingMode -> Vector Word32 -> BufferCreateInfo (es :: [Type])
-- | pNext is NULL or a pointer to a structure extending
-- this structure.
[$sel:next:BufferCreateInfo] :: BufferCreateInfo (es :: [Type]) -> Chain es
-- | flags is a bitmask of BufferCreateFlagBits specifying
-- additional parameters of the buffer.
[$sel:flags:BufferCreateInfo] :: BufferCreateInfo (es :: [Type]) -> BufferCreateFlags
-- | size is the size in bytes of the buffer to be created.
[$sel:size:BufferCreateInfo] :: BufferCreateInfo (es :: [Type]) -> DeviceSize
-- | usage is a bitmask of BufferUsageFlagBits specifying
-- allowed usages of the buffer.
[$sel:usage:BufferCreateInfo] :: BufferCreateInfo (es :: [Type]) -> BufferUsageFlags
-- | sharingMode is a SharingMode value specifying the
-- sharing mode of the buffer when it will be accessed by multiple queue
-- families.
[$sel:sharingMode:BufferCreateInfo] :: BufferCreateInfo (es :: [Type]) -> SharingMode
-- | pQueueFamilyIndices is a list of queue families that will
-- access this buffer (ignored if sharingMode is not
-- SHARING_MODE_CONCURRENT).
[$sel:queueFamilyIndices:BufferCreateInfo] :: BufferCreateInfo (es :: [Type]) -> Vector Word32
-- | VkBuffer - Opaque handle to a buffer object
--
-- See Also
--
-- BindBufferMemoryInfo, BufferDeviceAddressInfo,
-- BufferMemoryBarrier, BufferMemoryRequirementsInfo2,
-- BufferViewCreateInfo, ConditionalRenderingBeginInfoEXT,
-- DedicatedAllocationMemoryAllocateInfoNV,
-- DescriptorBufferInfo, GeneratedCommandsInfoNV,
-- GeometryAABBNV, GeometryTrianglesNV,
-- IndirectCommandsStreamNV, MemoryDedicatedAllocateInfo,
-- SparseBufferMemoryBindInfo, StridedBufferRegionKHR,
-- bindBufferMemory, cmdBeginTransformFeedbackEXT,
-- cmdBindIndexBuffer, cmdBindTransformFeedbackBuffersEXT,
-- cmdBindVertexBuffers,
-- cmdBuildAccelerationStructureIndirectKHR,
-- cmdBuildAccelerationStructureNV, cmdCopyBuffer,
-- cmdCopyBufferToImage, cmdCopyImageToBuffer,
-- cmdCopyQueryPoolResults, cmdDispatchIndirect,
-- cmdDrawIndexedIndirect, cmdDrawIndexedIndirectCount,
-- cmdDrawIndexedIndirectCountAMD,
-- cmdDrawIndexedIndirectCountKHR, cmdDrawIndirect,
-- cmdDrawIndirectByteCountEXT, cmdDrawIndirectCount,
-- cmdDrawIndirectCountAMD, cmdDrawIndirectCountKHR,
-- cmdDrawMeshTasksIndirectCountNV,
-- cmdDrawMeshTasksIndirectNV, cmdEndTransformFeedbackEXT,
-- cmdFillBuffer, cmdTraceRaysIndirectKHR,
-- cmdTraceRaysNV, cmdUpdateBuffer,
-- cmdWriteBufferMarkerAMD, createBuffer,
-- destroyBuffer, getBufferMemoryRequirements
newtype Buffer
Buffer :: Word64 -> Buffer
-- | VkSharingMode - Buffer and image sharing modes
--
-- Description
--
-- Note
--
-- SHARING_MODE_CONCURRENT may result in lower performance
-- access to the buffer or image than SHARING_MODE_EXCLUSIVE.
--
-- Ranges of buffers and image subresources of image objects created
-- using SHARING_MODE_EXCLUSIVE must only be accessed by
-- queues in the queue family that has ownership of the resource.
-- Upon creation, such resources are not owned by any queue family;
-- ownership is implicitly acquired upon first use within a queue. Once a
-- resource using SHARING_MODE_EXCLUSIVE is owned by some queue
-- family, the application must perform a queue family
-- ownership transfer to make the memory contents of a range or image
-- subresource accessible to a different queue family.
--
-- Note
--
-- Images still require a layout transition from
-- IMAGE_LAYOUT_UNDEFINED or IMAGE_LAYOUT_PREINITIALIZED
-- before being used on the first queue.
--
-- A queue family can take ownership of an image subresource or
-- buffer range of a resource created with SHARING_MODE_EXCLUSIVE,
-- without an ownership transfer, in the same way as for a resource that
-- was just created; however, taking ownership in this way has the effect
-- that the contents of the image subresource or buffer range are
-- undefined.
--
-- Ranges of buffers and image subresources of image objects created
-- using SHARING_MODE_CONCURRENT must only be accessed by
-- queues from the queue families specified through the
-- queueFamilyIndexCount and pQueueFamilyIndices
-- members of the corresponding create info structures.
--
-- See Also
--
-- BufferCreateInfo, ImageCreateInfo,
-- PhysicalDeviceImageDrmFormatModifierInfoEXT,
-- SwapchainCreateInfoKHR
newtype SharingMode
SharingMode :: Int32 -> SharingMode
-- | SHARING_MODE_EXCLUSIVE specifies that access to any range or
-- image subresource of the object will be exclusive to a single queue
-- family at a time.
pattern SHARING_MODE_EXCLUSIVE :: SharingMode
-- | SHARING_MODE_CONCURRENT specifies that concurrent access to any
-- range or image subresource of the object from multiple queue families
-- is supported.
pattern SHARING_MODE_CONCURRENT :: SharingMode
-- | VkBufferUsageFlagBits - Bitmask specifying allowed usage of a buffer
--
-- See Also
--
-- BufferUsageFlags
newtype BufferUsageFlagBits
BufferUsageFlagBits :: Flags -> BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFER_SRC_BIT specifies that the buffer
-- can be used as the source of a transfer command (see the
-- definition of
-- https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).
pattern BUFFER_USAGE_TRANSFER_SRC_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFER_DST_BIT specifies that the buffer
-- can be used as the destination of a transfer command.
pattern BUFFER_USAGE_TRANSFER_DST_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT specifies that the buffer
-- can be used to create a BufferView suitable for
-- occupying a DescriptorSet slot of type
-- DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.
pattern BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT specifies that the buffer
-- can be used to create a BufferView suitable for
-- occupying a DescriptorSet slot of type
-- DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.
pattern BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_UNIFORM_BUFFER_BIT specifies that the buffer
-- can be used in a DescriptorBufferInfo suitable for
-- occupying a DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER or
-- DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.
pattern BUFFER_USAGE_UNIFORM_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_STORAGE_BUFFER_BIT specifies that the buffer
-- can be used in a DescriptorBufferInfo suitable for
-- occupying a DescriptorSet slot either of type
-- DESCRIPTOR_TYPE_STORAGE_BUFFER or
-- DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.
pattern BUFFER_USAGE_STORAGE_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_INDEX_BUFFER_BIT specifies that the buffer is
-- suitable for passing as the buffer parameter to
-- cmdBindIndexBuffer.
pattern BUFFER_USAGE_INDEX_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_VERTEX_BUFFER_BIT specifies that the buffer is
-- suitable for passing as an element of the pBuffers array to
-- cmdBindVertexBuffers.
pattern BUFFER_USAGE_VERTEX_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_INDIRECT_BUFFER_BIT specifies that the buffer is
-- suitable for passing as the buffer parameter to
-- cmdDrawIndirect, cmdDrawIndexedIndirect,
-- cmdDrawMeshTasksIndirectNV,
-- cmdDrawMeshTasksIndirectCountNV, or cmdDispatchIndirect.
-- It is also suitable for passing as the buffer member of
-- IndirectCommandsStreamNV, or sequencesCountBuffer or
-- sequencesIndexBuffer or preprocessedBuffer member of
-- GeneratedCommandsInfoNV
pattern BUFFER_USAGE_INDIRECT_BUFFER_BIT :: BufferUsageFlagBits
-- | BUFFER_USAGE_RAY_TRACING_BIT_KHR specifies that the buffer is
-- suitable for use in cmdTraceRaysKHR and
-- cmdBuildAccelerationStructureKHR.
pattern BUFFER_USAGE_RAY_TRACING_BIT_KHR :: BufferUsageFlagBits
-- | BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT specifies that the
-- buffer is suitable for passing as the buffer parameter to
-- cmdBeginConditionalRenderingEXT.
pattern BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
-- specifies that the buffer is suitable for using as a counter buffer
-- with cmdBeginTransformFeedbackEXT and
-- cmdEndTransformFeedbackEXT.
pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT specifies that
-- the buffer is suitable for using for binding as a transform feedback
-- buffer with cmdBindTransformFeedbackBuffersEXT.
pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT :: BufferUsageFlagBits
-- | BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT specifies that the
-- buffer can be used to retrieve a buffer device address via
-- getBufferDeviceAddress and use that address to access the
-- buffer’s memory from a shader.
pattern BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT :: BufferUsageFlagBits
type BufferUsageFlags = BufferUsageFlagBits
-- | VkBufferCreateFlagBits - Bitmask specifying additional parameters of a
-- buffer
--
-- Description
--
-- See Sparse Resource Features and Physical Device
-- Features for details of the sparse memory features supported on a
-- device.
--
-- See Also
--
-- BufferCreateFlags
newtype BufferCreateFlagBits
BufferCreateFlagBits :: Flags -> BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_BINDING_BIT specifies that the buffer will
-- be backed using sparse memory binding.
pattern BUFFER_CREATE_SPARSE_BINDING_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_RESIDENCY_BIT specifies that the buffer
-- can be partially backed using sparse memory binding. Buffers
-- created with this flag must also be created with the
-- BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_SPARSE_ALIASED_BIT specifies that the buffer will
-- be backed using sparse memory binding with memory ranges that might
-- also simultaneously be backing another buffer (or another portion of
-- the same buffer). Buffers created with this flag must also be
-- created with the BUFFER_CREATE_SPARSE_BINDING_BIT flag.
pattern BUFFER_CREATE_SPARSE_ALIASED_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT specifies that
-- the buffer’s address can be saved and reused on a subsequent
-- run (e.g. for trace capture and replay), see
-- BufferOpaqueCaptureAddressCreateInfo for more detail.
pattern BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: BufferCreateFlagBits
-- | BUFFER_CREATE_PROTECTED_BIT specifies that the buffer is a
-- protected buffer.
pattern BUFFER_CREATE_PROTECTED_BIT :: BufferCreateFlagBits
type BufferCreateFlags = BufferCreateFlagBits
instance GHC.Generics.Generic (Vulkan.Core10.Buffer.BufferCreateInfo es)
instance GHC.Show.Show (Vulkan.CStruct.Extends.Chain es) => GHC.Show.Show (Vulkan.Core10.Buffer.BufferCreateInfo es)
instance Vulkan.CStruct.Extends.Extensible Vulkan.Core10.Buffer.BufferCreateInfo
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Buffer.BufferCreateInfo es, Vulkan.CStruct.Extends.PokeChain es) => Vulkan.CStruct.ToCStruct (Vulkan.Core10.Buffer.BufferCreateInfo es)
instance (Vulkan.CStruct.Extends.Extendss Vulkan.Core10.Buffer.BufferCreateInfo es, Vulkan.CStruct.Extends.PeekChain es) => Vulkan.CStruct.FromCStruct (Vulkan.Core10.Buffer.BufferCreateInfo es)
instance (es GHC.Types.~ '[]) => Vulkan.Zero.Zero (Vulkan.Core10.Buffer.BufferCreateInfo es)
module Vulkan.Core10
pattern API_VERSION_1_0 :: Word32
module Vulkan