{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} module Graphics.Vulkan.KHR.Surface where import Text.Read.Lex( Lexeme(Ident) ) import GHC.Read( expectP , choose ) import Data.Word( Word64 , Word32 ) import Data.Int( Int32 ) import Foreign.Storable( Storable(..) ) import Text.Read( Read(..) , parens ) import Text.ParserCombinators.ReadPrec( prec , (+++) , step ) import Graphics.Vulkan.Core( VkFlags(..) ) -- ** VkCompositeAlphaFlagsKHR -- | Opaque flag newtype VkCompositeAlphaFlagsKHR = VkCompositeAlphaFlagsKHR VkFlags deriving (Eq, Storable) -- ** VkPresentModeKHR newtype VkPresentModeKHR = VkPresentModeKHR Int32 deriving (Eq, Storable) instance Show VkPresentModeKHR where showsPrec _ VK_PRESENT_MODE_IMMEDIATE_KHR = showString "VK_PRESENT_MODE_IMMEDIATE_KHR" showsPrec _ VK_PRESENT_MODE_MAILBOX_KHR = showString "VK_PRESENT_MODE_MAILBOX_KHR" showsPrec _ VK_PRESENT_MODE_FIFO_KHR = showString "VK_PRESENT_MODE_FIFO_KHR" showsPrec _ VK_PRESENT_MODE_FIFO_RELAXED_KHR = showString "VK_PRESENT_MODE_FIFO_RELAXED_KHR" showsPrec p (VkPresentModeKHR x) = showParen (p >= 11) (showString "VkPresentModeKHR " . showsPrec 11 x) instance Read VkPresentModeKHR where readPrec = parens ( choose [ ("VK_PRESENT_MODE_IMMEDIATE_KHR", pure VK_PRESENT_MODE_IMMEDIATE_KHR) , ("VK_PRESENT_MODE_MAILBOX_KHR", pure VK_PRESENT_MODE_MAILBOX_KHR) , ("VK_PRESENT_MODE_FIFO_KHR", pure VK_PRESENT_MODE_FIFO_KHR) , ("VK_PRESENT_MODE_FIFO_RELAXED_KHR", pure VK_PRESENT_MODE_FIFO_RELAXED_KHR) ] +++ prec 10 (do expectP (Ident "VkPresentModeKHR") v <- step readPrec pure (VkPresentModeKHR v) ) ) pattern VK_PRESENT_MODE_IMMEDIATE_KHR = VkPresentModeKHR 0 pattern VK_PRESENT_MODE_MAILBOX_KHR = VkPresentModeKHR 1 pattern VK_PRESENT_MODE_FIFO_KHR = VkPresentModeKHR 2 pattern VK_PRESENT_MODE_FIFO_RELAXED_KHR = VkPresentModeKHR 3 newtype VkSurfaceKHR = VkSurfaceKHR Word64 deriving (Eq, Storable) -- ** VkColorSpaceKHR newtype VkColorSpaceKHR = VkColorSpaceKHR Int32 deriving (Eq, Storable) instance Show VkColorSpaceKHR where showsPrec _ VK_COLORSPACE_SRGB_NONLINEAR_KHR = showString "VK_COLORSPACE_SRGB_NONLINEAR_KHR" showsPrec p (VkColorSpaceKHR x) = showParen (p >= 11) (showString "VkColorSpaceKHR " . showsPrec 11 x) instance Read VkColorSpaceKHR where readPrec = parens ( choose [ ("VK_COLORSPACE_SRGB_NONLINEAR_KHR", pure VK_COLORSPACE_SRGB_NONLINEAR_KHR) ] +++ prec 10 (do expectP (Ident "VkColorSpaceKHR") v <- step readPrec pure (VkColorSpaceKHR v) ) ) pattern VK_COLORSPACE_SRGB_NONLINEAR_KHR = VkColorSpaceKHR 0 -- ** VkSurfaceTransformFlagsKHR -- | Opaque flag newtype VkSurfaceTransformFlagsKHR = VkSurfaceTransformFlagsKHR VkFlags deriving (Eq, Storable)