content: {-# language CPP #-}
  -- | = Name
  --
  -- VK_EXT_swapchain_colorspace - instance extension
  --
  -- == VK_EXT_swapchain_colorspace
  --
  -- [__Name String__]
  --     @VK_EXT_swapchain_colorspace@
  --
  -- [__Extension Type__]
  --     Instance extension
  --
  -- [__Registered Extension Number__]
  --     105
  --
  -- [__Revision__]
  --     4
  --
  -- [__Ratification Status__]
  --     Not ratified
  --
  -- [__Extension and Version Dependencies__]
  --     <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_KHR_surface VK_KHR_surface>
  --
  -- [__Contact__]
  --
  --     -   Courtney Goeltzenleuchter
  --         <https://github.com/KhronosGroup/Vulkan-Docs/issues/new?body=[VK_EXT_swapchain_colorspace] @courtney-g%0A*Here describe the issue or question you have about the VK_EXT_swapchain_colorspace extension* >
  --
  -- == Other Extension Metadata
  --
  -- [__Last Modified Date__]
  --     2019-04-26
  --
  -- [__IP Status__]
  --     No known IP claims.
  --
  -- [__Contributors__]
  --
  --     -   Courtney Goeltzenleuchter, Google
  --
  -- == Description
  --
  -- This extension expands 'Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR'
  -- to add support for most standard color spaces beyond
  -- 'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_SRGB_NONLINEAR_KHR'. This
  -- extension also adds support for
  -- 'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_PASS_THROUGH_EXT' which
  -- allows applications to use color spaces not explicitly enumerated in
  -- 'Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR'.
  --
  -- == New Enum Constants
  --
  -- -   'EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME'
  --
  -- -   'EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION'
  --
  -- -   Extending 'Vulkan.Extensions.VK_KHR_surface.ColorSpaceKHR':
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_ADOBERGB_LINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_ADOBERGB_NONLINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_BT2020_LINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_BT709_LINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_BT709_NONLINEAR_EXT'
  --
  --     -   'COLOR_SPACE_DCI_P3_LINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_DCI_P3_NONLINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_DISPLAY_P3_LINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_DOLBYVISION_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_HDR10_HLG_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_HDR10_ST2084_EXT'
  --
  --     -   'Vulkan.Extensions.VK_KHR_surface.COLOR_SPACE_PASS_THROUGH_EXT'
  --
  -- == Issues
  --
  -- 1) Does the spec need to specify which kinds of image formats support
  -- the color spaces?
  --
  -- __RESOLVED__: Pixel format is independent of color space (though some
  -- color spaces really want \/ need floating point color components to be
  -- useful). Therefore, do not plan on documenting what formats support
  -- which color spaces. An application /can/ call
  -- 'Vulkan.Extensions.VK_KHR_surface.getPhysicalDeviceSurfaceFormatsKHR' to
  -- query what a particular implementation supports.
  --
  -- 2) How does application determine if HW supports appropriate transfer
  -- function for a color space?
  --
  -- __RESOLVED__: Extension indicates that implementation /must/ not do the
  -- OETF encoding if it is not sRGB. That responsibility falls to the
  -- application shaders. Any other native OETF \/ EOTF functions supported
  -- by an implementation can be described by separate extension.
  --
  -- == Version History
  --
  -- -   Revision 1, 2016-12-27 (Courtney Goeltzenleuchter)
  --
  --     -   Initial version
  --
  -- -   Revision 2, 2017-01-19 (Courtney Goeltzenleuchter)
  --
  --     -   Add pass through and multiple options for BT2020.
  --
  --     -   Clean up some issues with equations not displaying properly.
  --
  -- -   Revision 3, 2017-06-23 (Courtney Goeltzenleuchter)
  --
  --     -   Add extended sRGB non-linear enum.
  --
  -- -   Revision 4, 2019-04-26 (Graeme Leese)
  --
  --     -   Clarify color space transfer function usage.
  --
  --     -   Refer to normative definitions in the Data Format Specification.
  --
  --     -   Clarify DCI-P3 and Display P3 usage.
  --
  -- == See Also
  --
  -- No cross-references are available
  --
  -- == Document Notes
  --
  -- For more information, see the
  -- <https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#VK_EXT_swapchain_colorspace Vulkan Specification>
  --
  -- This page is a generated document. Fixes and changes should be made to
  -- the generator scripts, not directly.
  module Vulkan.Extensions.VK_EXT_swapchain_colorspace  ( pattern COLOR_SPACE_DCI_P3_LINEAR_EXT
                                                        , EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION
                                                        , pattern EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION
                                                        , EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME
                                                        , pattern EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME
                                                        , ColorSpaceKHR(..)
                                                        ) where
  
  import Data.String (IsString)
  import Vulkan.Extensions.VK_KHR_surface (ColorSpaceKHR(COLOR_SPACE_DISPLAY_P3_LINEAR_EXT))
  import Vulkan.Extensions.VK_KHR_surface (ColorSpaceKHR(..))
  -- No documentation found for TopLevel "VK_COLOR_SPACE_DCI_P3_LINEAR_EXT"
  pattern COLOR_SPACE_DCI_P3_LINEAR_EXT = COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
  
  
  type EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION = 4
  
  -- No documentation found for TopLevel "VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION"
  pattern EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION :: forall a . Integral a => a
  pattern EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION = 4
  
  
  type EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME = "VK_EXT_swapchain_colorspace"
  
  -- No documentation found for TopLevel "VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME"
  pattern EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
  pattern EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME = "VK_EXT_swapchain_colorspace"
  
  