{-# 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(..)
)
newtype VkCompositeAlphaFlagsKHR = VkCompositeAlphaFlagsKHR VkFlags
deriving (Eq, Storable)
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)
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
newtype VkSurfaceTransformFlagsKHR = VkSurfaceTransformFlagsKHR VkFlags
deriving (Eq, Storable)