vulkan-3.27: src/Vulkan/Core11/Enums/ExternalFenceFeatureFlagBits.hs
{-# language CPP #-}
-- No documentation found for Chapter "ExternalFenceFeatureFlagBits"
module Vulkan.Core11.Enums.ExternalFenceFeatureFlagBits ( ExternalFenceFeatureFlags
, ExternalFenceFeatureFlagBits( EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
, EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
, ..
)
) 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)
type ExternalFenceFeatureFlags = ExternalFenceFeatureFlagBits
-- | VkExternalFenceFeatureFlagBits - Bitfield describing features of an
-- external fence handle type
--
-- = Description
--
-- - 'EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT' specifies handles of this
-- type /can/ be exported from Vulkan fence objects.
--
-- - 'EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT' specifies handles of this
-- type /can/ be imported to Vulkan fence objects.
--
-- = See Also
--
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_KHR_external_fence_capabilities VK_KHR_external_fence_capabilities>,
-- <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VK_VERSION_1_1 VK_VERSION_1_1>,
-- 'ExternalFenceFeatureFlags'
newtype ExternalFenceFeatureFlagBits = ExternalFenceFeatureFlagBits Flags
deriving newtype (Eq, Ord, Storable, Zero, Bits, FiniteBits)
-- No documentation found for Nested "VkExternalFenceFeatureFlagBits" "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT"
pattern EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = ExternalFenceFeatureFlagBits 0x00000001
-- No documentation found for Nested "VkExternalFenceFeatureFlagBits" "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT"
pattern EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = ExternalFenceFeatureFlagBits 0x00000002
conNameExternalFenceFeatureFlagBits :: String
conNameExternalFenceFeatureFlagBits = "ExternalFenceFeatureFlagBits"
enumPrefixExternalFenceFeatureFlagBits :: String
enumPrefixExternalFenceFeatureFlagBits = "EXTERNAL_FENCE_FEATURE_"
showTableExternalFenceFeatureFlagBits :: [(ExternalFenceFeatureFlagBits, String)]
showTableExternalFenceFeatureFlagBits =
[
( EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
, "EXPORTABLE_BIT"
)
,
( EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
, "IMPORTABLE_BIT"
)
]
instance Show ExternalFenceFeatureFlagBits where
showsPrec =
enumShowsPrec
enumPrefixExternalFenceFeatureFlagBits
showTableExternalFenceFeatureFlagBits
conNameExternalFenceFeatureFlagBits
(\(ExternalFenceFeatureFlagBits x) -> x)
(\x -> showString "0x" . showHex x)
instance Read ExternalFenceFeatureFlagBits where
readPrec =
enumReadPrec
enumPrefixExternalFenceFeatureFlagBits
showTableExternalFenceFeatureFlagBits
conNameExternalFenceFeatureFlagBits
ExternalFenceFeatureFlagBits