vulkan-3.27: src/Vulkan/Core10/Enums/StencilFaceFlagBits.hs
{-# language CPP #-}
-- No documentation found for Chapter "StencilFaceFlagBits"
module Vulkan.Core10.Enums.StencilFaceFlagBits ( pattern STENCIL_FRONT_AND_BACK
, StencilFaceFlags
, StencilFaceFlagBits( STENCIL_FACE_FRONT_BIT
, STENCIL_FACE_BACK_BIT
, STENCIL_FACE_FRONT_AND_BACK
, ..
)
) where
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import GHC.Show (showString)
import Numeric (showHex)
import Vulkan.Zero (Zero)
import Foreign.Storable (Storable)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Vulkan.Core10.FundamentalTypes (Flags)
-- No documentation found for TopLevel "VK_STENCIL_FRONT_AND_BACK"
pattern STENCIL_FRONT_AND_BACK = STENCIL_FACE_FRONT_AND_BACK
type StencilFaceFlags = StencilFaceFlagBits
-- | VkStencilFaceFlagBits - Bitmask specifying sets of stencil state for
-- which to update the compare mask
--
-- = Description
--
-- - 'STENCIL_FACE_FRONT_BIT' specifies that only the front set of
-- stencil state is updated.
--
-- - 'STENCIL_FACE_BACK_BIT' specifies that only the back set of stencil
-- state is updated.
--
-- - '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.
--
-- = See Also
--
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_VERSION_1_0 VK_VERSION_1_0>,
-- 'StencilFaceFlags'
newtype StencilFaceFlagBits = StencilFaceFlagBits Flags
deriving newtype (Eq, Ord, Storable, Zero, Bits, FiniteBits)
-- No documentation found for Nested "VkStencilFaceFlagBits" "VK_STENCIL_FACE_FRONT_BIT"
pattern STENCIL_FACE_FRONT_BIT = StencilFaceFlagBits 0x00000001
-- No documentation found for Nested "VkStencilFaceFlagBits" "VK_STENCIL_FACE_BACK_BIT"
pattern STENCIL_FACE_BACK_BIT = StencilFaceFlagBits 0x00000002
-- No documentation found for Nested "VkStencilFaceFlagBits" "VK_STENCIL_FACE_FRONT_AND_BACK"
pattern STENCIL_FACE_FRONT_AND_BACK = StencilFaceFlagBits 0x00000003
conNameStencilFaceFlagBits :: String
conNameStencilFaceFlagBits = "StencilFaceFlagBits"
enumPrefixStencilFaceFlagBits :: String
enumPrefixStencilFaceFlagBits = "STENCIL_FACE_"
showTableStencilFaceFlagBits :: [(StencilFaceFlagBits, String)]
showTableStencilFaceFlagBits =
[ (STENCIL_FACE_FRONT_BIT, "FRONT_BIT")
, (STENCIL_FACE_BACK_BIT, "BACK_BIT")
,
( STENCIL_FACE_FRONT_AND_BACK
, "FRONT_AND_BACK"
)
]
instance Show StencilFaceFlagBits where
showsPrec =
enumShowsPrec
enumPrefixStencilFaceFlagBits
showTableStencilFaceFlagBits
conNameStencilFaceFlagBits
(\(StencilFaceFlagBits x) -> x)
(\x -> showString "0x" . showHex x)
instance Read StencilFaceFlagBits where
readPrec =
enumReadPrec
enumPrefixStencilFaceFlagBits
showTableStencilFaceFlagBits
conNameStencilFaceFlagBits
StencilFaceFlagBits