vulkan-3.8.1: Bindings to the Vulkan graphics API.
Safe HaskellNone
LanguageHaskell2010

Vulkan.CStruct.Extends

Synopsis

Documentation

data BaseOutStructure Source #

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

Constructors

BaseOutStructure 

Fields

Instances

Instances details
Eq BaseOutStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Show BaseOutStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Storable BaseOutStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

FromCStruct BaseOutStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

ToCStruct BaseOutStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Zero BaseOutStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

data BaseInStructure Source #

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

Constructors

BaseInStructure 

Fields

Instances

Instances details
Eq BaseInStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Show BaseInStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Storable BaseInStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

FromCStruct BaseInStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

ToCStruct BaseInStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Zero BaseInStructure Source # 
Instance details

Defined in Vulkan.CStruct.Extends

type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where ... Source #

Equations

Extends AndroidHardwareBufferPropertiesANDROID AndroidHardwareBufferFormatPropertiesANDROID = () 
Extends AttachmentDescription2 AttachmentDescriptionStencilLayout = () 
Extends AttachmentReference2 AttachmentReferenceStencilLayout = () 
Extends BindBufferMemoryInfo BindBufferMemoryDeviceGroupInfo = () 
Extends BindImageMemoryInfo BindImageMemoryDeviceGroupInfo = () 
Extends BindImageMemoryInfo BindImageMemorySwapchainInfoKHR = () 
Extends BindImageMemoryInfo BindImagePlaneMemoryInfo = () 
Extends BindSparseInfo DeviceGroupBindSparseInfo = () 
Extends BindSparseInfo TimelineSemaphoreSubmitInfo = () 
Extends BufferCreateInfo DedicatedAllocationBufferCreateInfoNV = () 
Extends BufferCreateInfo ExternalMemoryBufferCreateInfo = () 
Extends BufferCreateInfo BufferOpaqueCaptureAddressCreateInfo = () 
Extends BufferCreateInfo BufferDeviceAddressCreateInfoEXT = () 
Extends BufferImageCopy2KHR CopyCommandTransformInfoQCOM = () 
Extends CommandBufferBeginInfo DeviceGroupCommandBufferBeginInfo = () 
Extends CommandBufferInheritanceInfo CommandBufferInheritanceConditionalRenderingInfoEXT = () 
Extends CommandBufferInheritanceInfo CommandBufferInheritanceRenderPassTransformInfoQCOM = () 
Extends ComputePipelineCreateInfo PipelineCreationFeedbackCreateInfoEXT = () 
Extends ComputePipelineCreateInfo PipelineCompilerControlCreateInfoAMD = () 
Extends DescriptorPoolCreateInfo DescriptorPoolInlineUniformBlockCreateInfoEXT = () 
Extends DescriptorPoolCreateInfo MutableDescriptorTypeCreateInfoVALVE = () 
Extends DescriptorSetAllocateInfo DescriptorSetVariableDescriptorCountAllocateInfo = () 
Extends DescriptorSetLayoutCreateInfo DescriptorSetLayoutBindingFlagsCreateInfo = () 
Extends DescriptorSetLayoutCreateInfo MutableDescriptorTypeCreateInfoVALVE = () 
Extends DescriptorSetLayoutSupport DescriptorSetVariableDescriptorCountLayoutSupport = () 
Extends DeviceCreateInfo PhysicalDeviceDeviceGeneratedCommandsFeaturesNV = () 
Extends DeviceCreateInfo DevicePrivateDataCreateInfoEXT = () 
Extends DeviceCreateInfo PhysicalDevicePrivateDataFeaturesEXT = () 
Extends DeviceCreateInfo (PhysicalDeviceFeatures2 '[]) = () 
Extends DeviceCreateInfo PhysicalDeviceVariablePointersFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceMultiviewFeatures = () 
Extends DeviceCreateInfo DeviceGroupDeviceCreateInfo = () 
Extends DeviceCreateInfo PhysicalDevice16BitStorageFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceShaderSubgroupExtendedTypesFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceSamplerYcbcrConversionFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceProtectedMemoryFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceBlendOperationAdvancedFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceInlineUniformBlockFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceShaderDrawParametersFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceShaderFloat16Int8Features = () 
Extends DeviceCreateInfo PhysicalDeviceHostQueryResetFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceDeviceMemoryReportFeaturesEXT = () 
Extends DeviceCreateInfo DeviceDeviceMemoryReportCreateInfoEXT = () 
Extends DeviceCreateInfo PhysicalDeviceDescriptorIndexingFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceTimelineSemaphoreFeatures = () 
Extends DeviceCreateInfo PhysicalDevice8BitStorageFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceConditionalRenderingFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceVulkanMemoryModelFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceShaderAtomicInt64Features = () 
Extends DeviceCreateInfo PhysicalDeviceShaderAtomicFloatFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceVertexAttributeDivisorFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceASTCDecodeFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceTransformFeedbackFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceRepresentativeFragmentTestFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceExclusiveScissorFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceCornerSampledImageFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceComputeShaderDerivativesFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceFragmentShaderBarycentricFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceShaderImageFootprintFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceShadingRateImageFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceMeshShaderFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceAccelerationStructureFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceRayTracingPipelineFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceRayQueryFeaturesKHR = () 
Extends DeviceCreateInfo DeviceMemoryOverallocationCreateInfoAMD = () 
Extends DeviceCreateInfo PhysicalDeviceFragmentDensityMapFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceFragmentDensityMap2FeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceScalarBlockLayoutFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceUniformBufferStandardLayoutFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceDepthClipEnableFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceMemoryPriorityFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceBufferDeviceAddressFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceBufferDeviceAddressFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceImagelessFramebufferFeatures = () 
Extends DeviceCreateInfo PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceCooperativeMatrixFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceYcbcrImageArraysFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDevicePerformanceQueryFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceCoverageReductionModeFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = () 
Extends DeviceCreateInfo PhysicalDeviceShaderClockFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceIndexTypeUint8FeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceShaderSMBuiltinsFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceFragmentShaderInterlockFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceSeparateDepthStencilLayoutsFeatures = () 
Extends DeviceCreateInfo PhysicalDevicePipelineExecutablePropertiesFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceTexelBufferAlignmentFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceSubgroupSizeControlFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceLineRasterizationFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDevicePipelineCreationCacheControlFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceVulkan11Features = () 
Extends DeviceCreateInfo PhysicalDeviceVulkan12Features = () 
Extends DeviceCreateInfo PhysicalDeviceCoherentMemoryFeaturesAMD = () 
Extends DeviceCreateInfo PhysicalDeviceCustomBorderColorFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceExtendedDynamicStateFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceDiagnosticsConfigFeaturesNV = () 
Extends DeviceCreateInfo DeviceDiagnosticsConfigCreateInfoNV = () 
Extends DeviceCreateInfo PhysicalDeviceRobustness2FeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceImageRobustnessFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDevicePortabilitySubsetFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDevice4444FormatsFeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceShaderImageAtomicInt64FeaturesEXT = () 
Extends DeviceCreateInfo PhysicalDeviceFragmentShadingRateFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceShaderTerminateInvocationFeaturesKHR = () 
Extends DeviceCreateInfo PhysicalDeviceFragmentShadingRateEnumsFeaturesNV = () 
Extends DeviceCreateInfo PhysicalDeviceMutableDescriptorTypeFeaturesVALVE = () 
Extends DeviceQueueCreateInfo DeviceQueueGlobalPriorityCreateInfoEXT = () 
Extends FenceCreateInfo ExportFenceCreateInfo = () 
Extends FenceCreateInfo ExportFenceWin32HandleInfoKHR = () 
Extends FormatProperties2 DrmFormatModifierPropertiesListEXT = () 
Extends FramebufferCreateInfo FramebufferAttachmentsCreateInfo = () 
Extends GraphicsPipelineCreateInfo GraphicsPipelineShaderGroupsCreateInfoNV = () 
Extends GraphicsPipelineCreateInfo PipelineDiscardRectangleStateCreateInfoEXT = () 
Extends GraphicsPipelineCreateInfo PipelineRepresentativeFragmentTestStateCreateInfoNV = () 
Extends GraphicsPipelineCreateInfo PipelineCreationFeedbackCreateInfoEXT = () 
Extends GraphicsPipelineCreateInfo PipelineCompilerControlCreateInfoAMD = () 
Extends GraphicsPipelineCreateInfo PipelineFragmentShadingRateStateCreateInfoKHR = () 
Extends GraphicsPipelineCreateInfo PipelineFragmentShadingRateEnumStateCreateInfoNV = () 
Extends ImageBlit2KHR CopyCommandTransformInfoQCOM = () 
Extends ImageCreateInfo DedicatedAllocationImageCreateInfoNV = () 
Extends ImageCreateInfo ExternalMemoryImageCreateInfoNV = () 
Extends ImageCreateInfo ExternalMemoryImageCreateInfo = () 
Extends ImageCreateInfo ImageSwapchainCreateInfoKHR = () 
Extends ImageCreateInfo ImageFormatListCreateInfo = () 
Extends ImageCreateInfo ExternalFormatANDROID = () 
Extends ImageCreateInfo ImageDrmFormatModifierListCreateInfoEXT = () 
Extends ImageCreateInfo ImageDrmFormatModifierExplicitCreateInfoEXT = () 
Extends ImageCreateInfo ImageStencilUsageCreateInfo = () 
Extends ImageFormatProperties2 ExternalImageFormatProperties = () 
Extends ImageFormatProperties2 SamplerYcbcrConversionImageFormatProperties = () 
Extends ImageFormatProperties2 TextureLODGatherFormatPropertiesAMD = () 
Extends ImageFormatProperties2 AndroidHardwareBufferUsageANDROID = () 
Extends ImageFormatProperties2 FilterCubicImageViewImageFormatPropertiesEXT = () 
Extends ImageMemoryBarrier SampleLocationsInfoEXT = () 
Extends ImageMemoryRequirementsInfo2 ImagePlaneMemoryRequirementsInfo = () 
Extends ImageViewCreateInfo ImageViewUsageCreateInfo = () 
Extends ImageViewCreateInfo SamplerYcbcrConversionInfo = () 
Extends ImageViewCreateInfo ImageViewASTCDecodeModeEXT = () 
Extends InstanceCreateInfo DebugReportCallbackCreateInfoEXT = () 
Extends InstanceCreateInfo ValidationFlagsEXT = () 
Extends InstanceCreateInfo ValidationFeaturesEXT = () 
Extends InstanceCreateInfo DebugUtilsMessengerCreateInfoEXT = () 
Extends MemoryAllocateInfo DedicatedAllocationMemoryAllocateInfoNV = () 
Extends MemoryAllocateInfo ExportMemoryAllocateInfoNV = () 
Extends MemoryAllocateInfo ImportMemoryWin32HandleInfoNV = () 
Extends MemoryAllocateInfo ExportMemoryWin32HandleInfoNV = () 
Extends MemoryAllocateInfo ExportMemoryAllocateInfo = () 
Extends MemoryAllocateInfo ImportMemoryWin32HandleInfoKHR = () 
Extends MemoryAllocateInfo ExportMemoryWin32HandleInfoKHR = () 
Extends MemoryAllocateInfo ImportMemoryFdInfoKHR = () 
Extends MemoryAllocateInfo MemoryAllocateFlagsInfo = () 
Extends MemoryAllocateInfo MemoryDedicatedAllocateInfo = () 
Extends MemoryAllocateInfo ImportMemoryHostPointerInfoEXT = () 
Extends MemoryAllocateInfo ImportAndroidHardwareBufferInfoANDROID = () 
Extends MemoryAllocateInfo MemoryPriorityAllocateInfoEXT = () 
Extends MemoryAllocateInfo MemoryOpaqueCaptureAddressAllocateInfo = () 
Extends MemoryRequirements2 MemoryDedicatedRequirements = () 
Extends PhysicalDeviceExternalSemaphoreInfo SemaphoreTypeCreateInfo = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceDeviceGeneratedCommandsFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDevicePrivateDataFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceVariablePointersFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceMultiviewFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDevice16BitStorageFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderSubgroupExtendedTypesFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceSamplerYcbcrConversionFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceProtectedMemoryFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceBlendOperationAdvancedFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceInlineUniformBlockFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderDrawParametersFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderFloat16Int8Features = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceHostQueryResetFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceDeviceMemoryReportFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceDescriptorIndexingFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceTimelineSemaphoreFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDevice8BitStorageFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceConditionalRenderingFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceVulkanMemoryModelFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderAtomicInt64Features = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderAtomicFloatFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceVertexAttributeDivisorFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceASTCDecodeFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceTransformFeedbackFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceRepresentativeFragmentTestFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceExclusiveScissorFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceCornerSampledImageFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceComputeShaderDerivativesFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentShaderBarycentricFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderImageFootprintFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShadingRateImageFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceMeshShaderFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceAccelerationStructureFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceRayTracingPipelineFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceRayQueryFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentDensityMapFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentDensityMap2FeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceScalarBlockLayoutFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceUniformBufferStandardLayoutFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceDepthClipEnableFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceMemoryPriorityFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceBufferDeviceAddressFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceBufferDeviceAddressFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceImagelessFramebufferFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceCooperativeMatrixFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceYcbcrImageArraysFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDevicePerformanceQueryFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceCoverageReductionModeFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderClockFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceIndexTypeUint8FeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderSMBuiltinsFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentShaderInterlockFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceSeparateDepthStencilLayoutsFeatures = () 
Extends PhysicalDeviceFeatures2 PhysicalDevicePipelineExecutablePropertiesFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceTexelBufferAlignmentFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceSubgroupSizeControlFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceLineRasterizationFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDevicePipelineCreationCacheControlFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceVulkan11Features = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceVulkan12Features = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceCoherentMemoryFeaturesAMD = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceCustomBorderColorFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceExtendedDynamicStateFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceDiagnosticsConfigFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceRobustness2FeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceImageRobustnessFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDevicePortabilitySubsetFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDevice4444FormatsFeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderImageAtomicInt64FeaturesEXT = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentShadingRateFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderTerminateInvocationFeaturesKHR = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV = () 
Extends PhysicalDeviceFeatures2 PhysicalDeviceMutableDescriptorTypeFeaturesVALVE = () 
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceExternalImageFormatInfo = () 
Extends PhysicalDeviceImageFormatInfo2 ImageFormatListCreateInfo = () 
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceImageDrmFormatModifierInfoEXT = () 
Extends PhysicalDeviceImageFormatInfo2 ImageStencilUsageCreateInfo = () 
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceImageViewImageFormatInfoEXT = () 
Extends PhysicalDeviceMemoryProperties2 PhysicalDeviceMemoryBudgetPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceDeviceGeneratedCommandsPropertiesNV = () 
Extends PhysicalDeviceProperties2 PhysicalDevicePushDescriptorPropertiesKHR = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceDriverProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceIDProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceMultiviewProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceDiscardRectanglePropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceSubgroupProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDevicePointClippingProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceProtectedMemoryProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceSamplerFilterMinmaxProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceSampleLocationsPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceBlendOperationAdvancedPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceInlineUniformBlockPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceMaintenance3Properties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceFloatControlsProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceExternalMemoryHostPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceConservativeRasterizationPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceShaderCorePropertiesAMD = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceShaderCoreProperties2AMD = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceDescriptorIndexingProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceTimelineSemaphoreProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceVertexAttributeDivisorPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDevicePCIBusInfoPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceDepthStencilResolveProperties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceTransformFeedbackPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceShadingRateImagePropertiesNV = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceMeshShaderPropertiesNV = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceAccelerationStructurePropertiesKHR = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceRayTracingPipelinePropertiesKHR = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceRayTracingPropertiesNV = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceFragmentDensityMapPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceFragmentDensityMap2PropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceCooperativeMatrixPropertiesNV = () 
Extends PhysicalDeviceProperties2 PhysicalDevicePerformanceQueryPropertiesKHR = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceShaderSMBuiltinsPropertiesNV = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceTexelBufferAlignmentPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceSubgroupSizeControlPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceLineRasterizationPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceVulkan11Properties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceVulkan12Properties = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceCustomBorderColorPropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceRobustness2PropertiesEXT = () 
Extends PhysicalDeviceProperties2 PhysicalDevicePortabilitySubsetPropertiesKHR = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceFragmentShadingRatePropertiesKHR = () 
Extends PhysicalDeviceProperties2 PhysicalDeviceFragmentShadingRateEnumsPropertiesNV = () 
Extends PhysicalDeviceSurfaceInfo2KHR SurfaceFullScreenExclusiveInfoEXT = () 
Extends PhysicalDeviceSurfaceInfo2KHR SurfaceFullScreenExclusiveWin32InfoEXT = () 
Extends PipelineColorBlendStateCreateInfo PipelineColorBlendAdvancedStateCreateInfoEXT = () 
Extends PipelineMultisampleStateCreateInfo PipelineCoverageToColorStateCreateInfoNV = () 
Extends PipelineMultisampleStateCreateInfo PipelineSampleLocationsStateCreateInfoEXT = () 
Extends PipelineMultisampleStateCreateInfo PipelineCoverageModulationStateCreateInfoNV = () 
Extends PipelineMultisampleStateCreateInfo PipelineCoverageReductionStateCreateInfoNV = () 
Extends PipelineRasterizationStateCreateInfo PipelineRasterizationStateRasterizationOrderAMD = () 
Extends PipelineRasterizationStateCreateInfo PipelineRasterizationConservativeStateCreateInfoEXT = () 
Extends PipelineRasterizationStateCreateInfo PipelineRasterizationStateStreamCreateInfoEXT = () 
Extends PipelineRasterizationStateCreateInfo PipelineRasterizationDepthClipStateCreateInfoEXT = () 
Extends PipelineRasterizationStateCreateInfo PipelineRasterizationLineStateCreateInfoEXT = () 
Extends PipelineShaderStageCreateInfo PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = () 
Extends PipelineTessellationStateCreateInfo PipelineTessellationDomainOriginStateCreateInfo = () 
Extends PipelineVertexInputStateCreateInfo PipelineVertexInputDivisorStateCreateInfoEXT = () 
Extends PipelineViewportStateCreateInfo PipelineViewportWScalingStateCreateInfoNV = () 
Extends PipelineViewportStateCreateInfo PipelineViewportSwizzleStateCreateInfoNV = () 
Extends PipelineViewportStateCreateInfo PipelineViewportExclusiveScissorStateCreateInfoNV = () 
Extends PipelineViewportStateCreateInfo PipelineViewportShadingRateImageStateCreateInfoNV = () 
Extends PipelineViewportStateCreateInfo PipelineViewportCoarseSampleOrderStateCreateInfoNV = () 
Extends PresentInfoKHR DisplayPresentInfoKHR = () 
Extends PresentInfoKHR PresentRegionsKHR = () 
Extends PresentInfoKHR DeviceGroupPresentInfoKHR = () 
Extends PresentInfoKHR PresentTimesInfoGOOGLE = () 
Extends PresentInfoKHR PresentFrameTokenGGP = () 
Extends QueryPoolCreateInfo QueryPoolPerformanceCreateInfoKHR = () 
Extends QueryPoolCreateInfo QueryPoolPerformanceQueryCreateInfoINTEL = () 
Extends QueueFamilyProperties2 QueueFamilyCheckpointPropertiesNV = () 
Extends RayTracingPipelineCreateInfoKHR PipelineCreationFeedbackCreateInfoEXT = () 
Extends RayTracingPipelineCreateInfoNV PipelineCreationFeedbackCreateInfoEXT = () 
Extends RenderPassBeginInfo DeviceGroupRenderPassBeginInfo = () 
Extends RenderPassBeginInfo RenderPassSampleLocationsBeginInfoEXT = () 
Extends RenderPassBeginInfo RenderPassAttachmentBeginInfo = () 
Extends RenderPassBeginInfo RenderPassTransformBeginInfoQCOM = () 
Extends RenderPassCreateInfo RenderPassMultiviewCreateInfo = () 
Extends RenderPassCreateInfo RenderPassInputAttachmentAspectCreateInfo = () 
Extends RenderPassCreateInfo RenderPassFragmentDensityMapCreateInfoEXT = () 
Extends RenderPassCreateInfo2 RenderPassFragmentDensityMapCreateInfoEXT = () 
Extends SamplerCreateInfo SamplerYcbcrConversionInfo = () 
Extends SamplerCreateInfo SamplerReductionModeCreateInfo = () 
Extends SamplerCreateInfo SamplerCustomBorderColorCreateInfoEXT = () 
Extends SamplerYcbcrConversionCreateInfo ExternalFormatANDROID = () 
Extends SemaphoreCreateInfo ExportSemaphoreCreateInfo = () 
Extends SemaphoreCreateInfo ExportSemaphoreWin32HandleInfoKHR = () 
Extends SemaphoreCreateInfo SemaphoreTypeCreateInfo = () 
Extends ShaderModuleCreateInfo ShaderModuleValidationCacheCreateInfoEXT = () 
Extends SubmitInfo Win32KeyedMutexAcquireReleaseInfoNV = () 
Extends SubmitInfo Win32KeyedMutexAcquireReleaseInfoKHR = () 
Extends SubmitInfo D3D12FenceSubmitInfoKHR = () 
Extends SubmitInfo DeviceGroupSubmitInfo = () 
Extends SubmitInfo ProtectedSubmitInfo = () 
Extends SubmitInfo TimelineSemaphoreSubmitInfo = () 
Extends SubmitInfo PerformanceQuerySubmitInfoKHR = () 
Extends SubpassDescription2 SubpassDescriptionDepthStencilResolve = () 
Extends SubpassDescription2 FragmentShadingRateAttachmentInfoKHR = () 
Extends SurfaceCapabilities2KHR DisplayNativeHdrSurfaceCapabilitiesAMD = () 
Extends SurfaceCapabilities2KHR SharedPresentSurfaceCapabilitiesKHR = () 
Extends SurfaceCapabilities2KHR SurfaceProtectedCapabilitiesKHR = () 
Extends SurfaceCapabilities2KHR SurfaceCapabilitiesFullScreenExclusiveEXT = () 
Extends SwapchainCreateInfoKHR SwapchainCounterCreateInfoEXT = () 
Extends SwapchainCreateInfoKHR DeviceGroupSwapchainCreateInfoKHR = () 
Extends SwapchainCreateInfoKHR SwapchainDisplayNativeHdrCreateInfoAMD = () 
Extends SwapchainCreateInfoKHR ImageFormatListCreateInfo = () 
Extends SwapchainCreateInfoKHR SurfaceFullScreenExclusiveInfoEXT = () 
Extends SwapchainCreateInfoKHR SurfaceFullScreenExclusiveWin32InfoEXT = () 
Extends WriteDescriptorSet WriteDescriptorSetInlineUniformBlockEXT = () 
Extends WriteDescriptorSet WriteDescriptorSetAccelerationStructureKHR = () 
Extends WriteDescriptorSet WriteDescriptorSetAccelerationStructureNV = () 
Extends a b = TypeError ((ShowType a :<>: Text " is not extended by ") :<>: ShowType b) 

class PeekChain es where Source #

Methods

peekChain :: Ptr (Chain es) -> IO (Chain es) Source #

Instances

Instances details
PeekChain ('[] :: [Type]) Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Methods

peekChain :: Ptr (Chain '[]) -> IO (Chain '[]) Source #

(FromCStruct e, PeekChain es) => PeekChain (e ': es) Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Methods

peekChain :: Ptr (Chain (e ': es)) -> IO (Chain (e ': es)) Source #

class PokeChain es where Source #

Methods

withChain :: Chain es -> (Ptr (Chain es) -> IO a) -> IO a Source #

withZeroChain :: (Ptr (Chain es) -> IO a) -> IO a Source #

Instances

Instances details
PokeChain ('[] :: [Type]) Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Methods

withChain :: Chain '[] -> (Ptr (Chain '[]) -> IO a) -> IO a Source #

withZeroChain :: (Ptr (Chain '[]) -> IO a) -> IO a Source #

(ToCStruct e, PokeChain es) => PokeChain (e ': es) Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Methods

withChain :: Chain (e ': es) -> (Ptr (Chain (e ': es)) -> IO a) -> IO a Source #

withZeroChain :: (Ptr (Chain (e ': es)) -> IO a) -> IO a Source #

type family Chain (xs :: [a]) = (r :: a) | r -> xs where ... Source #

Equations

Chain '[] = () 
Chain (x ': xs) = (x, Chain xs) 

type family Extendss (p :: [Type] -> Type) (xs :: [Type]) :: Constraint where ... Source #

Equations

Extendss p '[] = () 
Extendss p (x ': xs) = (Extends p x, Extendss p xs) 

data SomeStruct (a :: [Type] -> Type) where Source #

Constructors

SomeStruct :: forall a es. (Extendss a es, PokeChain es, Show (Chain es)) => a es -> SomeStruct a 

Instances

Instances details
(forall (es :: [Type]). Show (Chain es) => Show (a es)) => Show (SomeStruct a) Source # 
Instance details

Defined in Vulkan.CStruct.Extends

Zero (a ('[] :: [Type])) => Zero (SomeStruct a) Source #

The constraint is so on this instance to encourage type inference

Instance details

Defined in Vulkan.CStruct.Extends

Methods

zero :: SomeStruct a Source #

extendSomeStruct :: (Extensible a, Extends a e, ToCStruct e, Show e) => e -> SomeStruct a -> SomeStruct a Source #

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)

withSomeStruct :: forall a b. SomeStruct a -> (forall es. (Extendss a es, PokeChain es, Show (Chain es)) => a es -> b) -> b Source #

Consume a SomeStruct value

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 Source #

Write the C representation of some extended a and use the pointer, the pointer must not be returned from the continuation.

peekSomeCStruct :: forall a. (Extensible a, forall es. (Extendss a es, PeekChain es) => FromCStruct (a es)) => Ptr (SomeStruct a) -> IO (SomeStruct a) Source #

Given a pointer to a struct with an unknown chain, peek the struct and its chain.

pokeSomeCStruct Source #

Arguments

:: (forall es. (Extendss a es, PokeChain es) => ToCStruct (a es)) 
=> Ptr (SomeStruct a)

Pointer to some memory at least the size of the head of the struct chain.

-> SomeStruct a

The struct to poke

-> IO b

Computation to run while the poked tail is valid

-> IO b 

Given some memory for the head of the chain, allocate and poke the tail and run an action.

forgetExtensions :: Ptr (a es) -> Ptr (SomeStruct a) Source #

Forget which extensions a pointed-to struct has by casting the pointer

class Extensible (a :: [Type] -> Type) where Source #

Methods

extensibleTypeName :: String Source #

For error reporting an invalid extension

getNext :: a es -> Chain es Source #

setNext :: a ds -> Chain es -> a es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends a e => b) -> Maybe b Source #

Instances

Instances details
Extensible BufferCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Buffer

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). BufferCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). BufferCreateInfo ds -> Chain es -> BufferCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends BufferCreateInfo e => b) -> Maybe b Source #

Extensible CommandBufferInheritanceInfo Source # 
Instance details

Defined in Vulkan.Core10.CommandBuffer

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). CommandBufferInheritanceInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). CommandBufferInheritanceInfo ds -> Chain es -> CommandBufferInheritanceInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends CommandBufferInheritanceInfo e => b) -> Maybe b Source #

Extensible CommandBufferBeginInfo Source # 
Instance details

Defined in Vulkan.Core10.CommandBuffer

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). CommandBufferBeginInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). CommandBufferBeginInfo ds -> Chain es -> CommandBufferBeginInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends CommandBufferBeginInfo e => b) -> Maybe b Source #

Extensible RenderPassBeginInfo Source # 
Instance details

Defined in Vulkan.Core10.CommandBufferBuilding

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). RenderPassBeginInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). RenderPassBeginInfo ds -> Chain es -> RenderPassBeginInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends RenderPassBeginInfo e => b) -> Maybe b Source #

Extensible WriteDescriptorSet Source # 
Instance details

Defined in Vulkan.Core10.DescriptorSet

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). WriteDescriptorSet es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). WriteDescriptorSet ds -> Chain es -> WriteDescriptorSet es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends WriteDescriptorSet e => b) -> Maybe b Source #

Extensible DescriptorSetLayoutCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.DescriptorSet

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). DescriptorSetLayoutCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). DescriptorSetLayoutCreateInfo ds -> Chain es -> DescriptorSetLayoutCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends DescriptorSetLayoutCreateInfo e => b) -> Maybe b Source #

Extensible DescriptorSetAllocateInfo Source # 
Instance details

Defined in Vulkan.Core10.DescriptorSet

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). DescriptorSetAllocateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). DescriptorSetAllocateInfo ds -> Chain es -> DescriptorSetAllocateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends DescriptorSetAllocateInfo e => b) -> Maybe b Source #

Extensible DescriptorPoolCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.DescriptorSet

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). DescriptorPoolCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). DescriptorPoolCreateInfo ds -> Chain es -> DescriptorPoolCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends DescriptorPoolCreateInfo e => b) -> Maybe b Source #

Extensible DeviceQueueCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Device

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). DeviceQueueCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). DeviceQueueCreateInfo ds -> Chain es -> DeviceQueueCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends DeviceQueueCreateInfo e => b) -> Maybe b Source #

Extensible DeviceCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Device

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). DeviceCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). DeviceCreateInfo ds -> Chain es -> DeviceCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends DeviceCreateInfo e => b) -> Maybe b Source #

Extensible InstanceCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.DeviceInitialization

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). InstanceCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). InstanceCreateInfo ds -> Chain es -> InstanceCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends InstanceCreateInfo e => b) -> Maybe b Source #

Extensible FenceCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Fence

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). FenceCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). FenceCreateInfo ds -> Chain es -> FenceCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends FenceCreateInfo e => b) -> Maybe b Source #

Extensible ImageCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Image

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ImageCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ImageCreateInfo ds -> Chain es -> ImageCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ImageCreateInfo e => b) -> Maybe b Source #

Extensible ImageViewCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.ImageView

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ImageViewCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ImageViewCreateInfo ds -> Chain es -> ImageViewCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ImageViewCreateInfo e => b) -> Maybe b Source #

Extensible MemoryAllocateInfo Source # 
Instance details

Defined in Vulkan.Core10.Memory

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). MemoryAllocateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). MemoryAllocateInfo ds -> Chain es -> MemoryAllocateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends MemoryAllocateInfo e => b) -> Maybe b Source #

Extensible ImageMemoryBarrier Source # 
Instance details

Defined in Vulkan.Core10.OtherTypes

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ImageMemoryBarrier es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ImageMemoryBarrier ds -> Chain es -> ImageMemoryBarrier es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ImageMemoryBarrier e => b) -> Maybe b Source #

Extensible RenderPassCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pass

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). RenderPassCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). RenderPassCreateInfo ds -> Chain es -> RenderPassCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends RenderPassCreateInfo e => b) -> Maybe b Source #

Extensible FramebufferCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pass

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). FramebufferCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). FramebufferCreateInfo ds -> Chain es -> FramebufferCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends FramebufferCreateInfo e => b) -> Maybe b Source #

Extensible PipelineViewportStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Extensible PipelineVertexInputStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Extensible PipelineTessellationStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Extensible PipelineShaderStageCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PipelineShaderStageCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PipelineShaderStageCreateInfo ds -> Chain es -> PipelineShaderStageCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PipelineShaderStageCreateInfo e => b) -> Maybe b Source #

Extensible PipelineRasterizationStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Extensible PipelineMultisampleStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Extensible PipelineColorBlendStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Extensible GraphicsPipelineCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). GraphicsPipelineCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). GraphicsPipelineCreateInfo ds -> Chain es -> GraphicsPipelineCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends GraphicsPipelineCreateInfo e => b) -> Maybe b Source #

Extensible ComputePipelineCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ComputePipelineCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ComputePipelineCreateInfo ds -> Chain es -> ComputePipelineCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ComputePipelineCreateInfo e => b) -> Maybe b Source #

Extensible QueryPoolCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Query

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). QueryPoolCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). QueryPoolCreateInfo ds -> Chain es -> QueryPoolCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends QueryPoolCreateInfo e => b) -> Maybe b Source #

Extensible SubmitInfo Source # 
Instance details

Defined in Vulkan.Core10.Queue

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). SubmitInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). SubmitInfo ds -> Chain es -> SubmitInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends SubmitInfo e => b) -> Maybe b Source #

Extensible SemaphoreCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.QueueSemaphore

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). SemaphoreCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). SemaphoreCreateInfo ds -> Chain es -> SemaphoreCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends SemaphoreCreateInfo e => b) -> Maybe b Source #

Extensible SamplerCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Sampler

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). SamplerCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). SamplerCreateInfo ds -> Chain es -> SamplerCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends SamplerCreateInfo e => b) -> Maybe b Source #

Extensible ShaderModuleCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Shader

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ShaderModuleCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ShaderModuleCreateInfo ds -> Chain es -> ShaderModuleCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ShaderModuleCreateInfo e => b) -> Maybe b Source #

Extensible BindSparseInfo Source # 
Instance details

Defined in Vulkan.Core10.SparseResourceMemoryManagement

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). BindSparseInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). BindSparseInfo ds -> Chain es -> BindSparseInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends BindSparseInfo e => b) -> Maybe b Source #

Extensible BindImageMemoryInfo Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). BindImageMemoryInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). BindImageMemoryInfo ds -> Chain es -> BindImageMemoryInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends BindImageMemoryInfo e => b) -> Maybe b Source #

Extensible BindBufferMemoryInfo Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_bind_memory2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). BindBufferMemoryInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). BindBufferMemoryInfo ds -> Chain es -> BindBufferMemoryInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends BindBufferMemoryInfo e => b) -> Maybe b Source #

Extensible PhysicalDeviceExternalSemaphoreInfo Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_external_semaphore_capabilities

Extensible MemoryRequirements2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). MemoryRequirements2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). MemoryRequirements2 ds -> Chain es -> MemoryRequirements2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends MemoryRequirements2 e => b) -> Maybe b Source #

Extensible ImageMemoryRequirementsInfo2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ImageMemoryRequirementsInfo2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ImageMemoryRequirementsInfo2 ds -> Chain es -> ImageMemoryRequirementsInfo2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ImageMemoryRequirementsInfo2 e => b) -> Maybe b Source #

Extensible QueueFamilyProperties2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). QueueFamilyProperties2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). QueueFamilyProperties2 ds -> Chain es -> QueueFamilyProperties2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends QueueFamilyProperties2 e => b) -> Maybe b Source #

Extensible PhysicalDeviceProperties2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PhysicalDeviceProperties2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PhysicalDeviceProperties2 ds -> Chain es -> PhysicalDeviceProperties2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PhysicalDeviceProperties2 e => b) -> Maybe b Source #

Extensible PhysicalDeviceMemoryProperties2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Extensible PhysicalDeviceImageFormatInfo2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PhysicalDeviceImageFormatInfo2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PhysicalDeviceImageFormatInfo2 ds -> Chain es -> PhysicalDeviceImageFormatInfo2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PhysicalDeviceImageFormatInfo2 e => b) -> Maybe b Source #

Extensible PhysicalDeviceFeatures2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PhysicalDeviceFeatures2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PhysicalDeviceFeatures2 ds -> Chain es -> PhysicalDeviceFeatures2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PhysicalDeviceFeatures2 e => b) -> Maybe b Source #

Extensible ImageFormatProperties2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ImageFormatProperties2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ImageFormatProperties2 ds -> Chain es -> ImageFormatProperties2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ImageFormatProperties2 e => b) -> Maybe b Source #

Extensible FormatProperties2 Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). FormatProperties2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). FormatProperties2 ds -> Chain es -> FormatProperties2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends FormatProperties2 e => b) -> Maybe b Source #

Extensible DescriptorSetLayoutSupport Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_maintenance3

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). DescriptorSetLayoutSupport es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). DescriptorSetLayoutSupport ds -> Chain es -> DescriptorSetLayoutSupport es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends DescriptorSetLayoutSupport e => b) -> Maybe b Source #

Extensible SamplerYcbcrConversionCreateInfo Source # 
Instance details

Defined in Vulkan.Core11.Promoted_From_VK_KHR_sampler_ycbcr_conversion

Extensible SubpassDescription2 Source # 
Instance details

Defined in Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). SubpassDescription2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). SubpassDescription2 ds -> Chain es -> SubpassDescription2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends SubpassDescription2 e => b) -> Maybe b Source #

Extensible RenderPassCreateInfo2 Source # 
Instance details

Defined in Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). RenderPassCreateInfo2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). RenderPassCreateInfo2 ds -> Chain es -> RenderPassCreateInfo2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends RenderPassCreateInfo2 e => b) -> Maybe b Source #

Extensible AttachmentReference2 Source # 
Instance details

Defined in Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). AttachmentReference2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). AttachmentReference2 ds -> Chain es -> AttachmentReference2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends AttachmentReference2 e => b) -> Maybe b Source #

Extensible AttachmentDescription2 Source # 
Instance details

Defined in Vulkan.Core12.Promoted_From_VK_KHR_create_renderpass2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). AttachmentDescription2 es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). AttachmentDescription2 ds -> Chain es -> AttachmentDescription2 es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends AttachmentDescription2 e => b) -> Maybe b Source #

Extensible AndroidHardwareBufferPropertiesANDROID Source # 
Instance details

Defined in Vulkan.Extensions.VK_ANDROID_external_memory_android_hardware_buffer

Extensible ImageBlit2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_copy_commands2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ImageBlit2KHR es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ImageBlit2KHR ds -> Chain es -> ImageBlit2KHR es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ImageBlit2KHR e => b) -> Maybe b Source #

Extensible BufferImageCopy2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_copy_commands2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). BufferImageCopy2KHR es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). BufferImageCopy2KHR ds -> Chain es -> BufferImageCopy2KHR es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends BufferImageCopy2KHR e => b) -> Maybe b Source #

Extensible SurfaceCapabilities2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_get_surface_capabilities2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). SurfaceCapabilities2KHR es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). SurfaceCapabilities2KHR ds -> Chain es -> SurfaceCapabilities2KHR es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends SurfaceCapabilities2KHR e => b) -> Maybe b Source #

Extensible PhysicalDeviceSurfaceInfo2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_get_surface_capabilities2

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PhysicalDeviceSurfaceInfo2KHR es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PhysicalDeviceSurfaceInfo2KHR ds -> Chain es -> PhysicalDeviceSurfaceInfo2KHR es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PhysicalDeviceSurfaceInfo2KHR e => b) -> Maybe b Source #

Extensible RayTracingPipelineCreateInfoKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_ray_tracing_pipeline

Extensible SwapchainCreateInfoKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_swapchain

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). SwapchainCreateInfoKHR es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). SwapchainCreateInfoKHR ds -> Chain es -> SwapchainCreateInfoKHR es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends SwapchainCreateInfoKHR e => b) -> Maybe b Source #

Extensible PresentInfoKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_swapchain

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PresentInfoKHR es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PresentInfoKHR ds -> Chain es -> PresentInfoKHR es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PresentInfoKHR e => b) -> Maybe b Source #

Extensible RayTracingPipelineCreateInfoNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_ray_tracing

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). RayTracingPipelineCreateInfoNV es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). RayTracingPipelineCreateInfoNV ds -> Chain es -> RayTracingPipelineCreateInfoNV es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends RayTracingPipelineCreateInfoNV e => b) -> Maybe b Source #

pattern (::&) :: Extensible a => a es' -> Chain es -> a es infix 6 Source #

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 (:&) :: e -> Chain es -> Chain (e ': es) infixr 7 Source #

View the head and tail of a Chain, see ::&

Equivalent to (,)