{-# language CPP #-}
module Vulkan.Core11.Enums.ExternalSemaphoreFeatureFlagBits ( ExternalSemaphoreFeatureFlags
, ExternalSemaphoreFeatureFlagBits( EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT
, EXTERNAL_SEMAPHORE_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 ExternalSemaphoreFeatureFlags = ExternalSemaphoreFeatureFlagBits
newtype ExternalSemaphoreFeatureFlagBits = ExternalSemaphoreFeatureFlagBits Flags
deriving newtype (ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
$c/= :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
== :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
$c== :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
Eq, Eq ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Ordering
ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
$cmin :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
max :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
$cmax :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
>= :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
$c>= :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
> :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
$c> :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
<= :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
$c<= :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
< :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
$c< :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Bool
compare :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Ordering
$ccompare :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> Ordering
Ord, Ptr ExternalSemaphoreFeatureFlagBits
-> IO ExternalSemaphoreFeatureFlagBits
Ptr ExternalSemaphoreFeatureFlagBits
-> Int -> IO ExternalSemaphoreFeatureFlagBits
Ptr ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits -> IO ()
Ptr ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> IO ()
ExternalSemaphoreFeatureFlagBits -> Int
forall b. Ptr b -> Int -> IO ExternalSemaphoreFeatureFlagBits
forall b. Ptr b -> Int -> ExternalSemaphoreFeatureFlagBits -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
poke :: Ptr ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> IO ()
$cpoke :: Ptr ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits -> IO ()
peek :: Ptr ExternalSemaphoreFeatureFlagBits
-> IO ExternalSemaphoreFeatureFlagBits
$cpeek :: Ptr ExternalSemaphoreFeatureFlagBits
-> IO ExternalSemaphoreFeatureFlagBits
pokeByteOff :: forall b. Ptr b -> Int -> ExternalSemaphoreFeatureFlagBits -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> ExternalSemaphoreFeatureFlagBits -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO ExternalSemaphoreFeatureFlagBits
$cpeekByteOff :: forall b. Ptr b -> Int -> IO ExternalSemaphoreFeatureFlagBits
pokeElemOff :: Ptr ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits -> IO ()
$cpokeElemOff :: Ptr ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits -> IO ()
peekElemOff :: Ptr ExternalSemaphoreFeatureFlagBits
-> Int -> IO ExternalSemaphoreFeatureFlagBits
$cpeekElemOff :: Ptr ExternalSemaphoreFeatureFlagBits
-> Int -> IO ExternalSemaphoreFeatureFlagBits
alignment :: ExternalSemaphoreFeatureFlagBits -> Int
$calignment :: ExternalSemaphoreFeatureFlagBits -> Int
sizeOf :: ExternalSemaphoreFeatureFlagBits -> Int
$csizeOf :: ExternalSemaphoreFeatureFlagBits -> Int
Storable, ExternalSemaphoreFeatureFlagBits
forall a. a -> Zero a
zero :: ExternalSemaphoreFeatureFlagBits
$czero :: ExternalSemaphoreFeatureFlagBits
Zero, Eq ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits
Int -> ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits -> Bool
ExternalSemaphoreFeatureFlagBits -> Int
ExternalSemaphoreFeatureFlagBits -> Maybe Int
ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits -> Int -> Bool
ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
forall a.
Eq a
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
popCount :: ExternalSemaphoreFeatureFlagBits -> Int
$cpopCount :: ExternalSemaphoreFeatureFlagBits -> Int
rotateR :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$crotateR :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
rotateL :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$crotateL :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
unsafeShiftR :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$cunsafeShiftR :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
shiftR :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$cshiftR :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
unsafeShiftL :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$cunsafeShiftL :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
shiftL :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$cshiftL :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
isSigned :: ExternalSemaphoreFeatureFlagBits -> Bool
$cisSigned :: ExternalSemaphoreFeatureFlagBits -> Bool
bitSize :: ExternalSemaphoreFeatureFlagBits -> Int
$cbitSize :: ExternalSemaphoreFeatureFlagBits -> Int
bitSizeMaybe :: ExternalSemaphoreFeatureFlagBits -> Maybe Int
$cbitSizeMaybe :: ExternalSemaphoreFeatureFlagBits -> Maybe Int
testBit :: ExternalSemaphoreFeatureFlagBits -> Int -> Bool
$ctestBit :: ExternalSemaphoreFeatureFlagBits -> Int -> Bool
complementBit :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$ccomplementBit :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
clearBit :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$cclearBit :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
setBit :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$csetBit :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
bit :: Int -> ExternalSemaphoreFeatureFlagBits
$cbit :: Int -> ExternalSemaphoreFeatureFlagBits
zeroBits :: ExternalSemaphoreFeatureFlagBits
$czeroBits :: ExternalSemaphoreFeatureFlagBits
rotate :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$crotate :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
shift :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
$cshift :: ExternalSemaphoreFeatureFlagBits
-> Int -> ExternalSemaphoreFeatureFlagBits
complement :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
$ccomplement :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
xor :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
$cxor :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
.|. :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
$c.|. :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
.&. :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
$c.&. :: ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
-> ExternalSemaphoreFeatureFlagBits
Bits, Bits ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: ExternalSemaphoreFeatureFlagBits -> Int
$ccountTrailingZeros :: ExternalSemaphoreFeatureFlagBits -> Int
countLeadingZeros :: ExternalSemaphoreFeatureFlagBits -> Int
$ccountLeadingZeros :: ExternalSemaphoreFeatureFlagBits -> Int
finiteBitSize :: ExternalSemaphoreFeatureFlagBits -> Int
$cfiniteBitSize :: ExternalSemaphoreFeatureFlagBits -> Int
FiniteBits)
pattern $bEXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT :: ExternalSemaphoreFeatureFlagBits
$mEXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT :: forall {r}.
ExternalSemaphoreFeatureFlagBits
-> ((# #) -> r) -> ((# #) -> r) -> r
EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT = ExternalSemaphoreFeatureFlagBits 0x00000001
pattern $bEXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT :: ExternalSemaphoreFeatureFlagBits
$mEXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT :: forall {r}.
ExternalSemaphoreFeatureFlagBits
-> ((# #) -> r) -> ((# #) -> r) -> r
EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT = ExternalSemaphoreFeatureFlagBits 0x00000002
conNameExternalSemaphoreFeatureFlagBits :: String
conNameExternalSemaphoreFeatureFlagBits :: String
conNameExternalSemaphoreFeatureFlagBits = String
"ExternalSemaphoreFeatureFlagBits"
enumPrefixExternalSemaphoreFeatureFlagBits :: String
enumPrefixExternalSemaphoreFeatureFlagBits :: String
enumPrefixExternalSemaphoreFeatureFlagBits = String
"EXTERNAL_SEMAPHORE_FEATURE_"
showTableExternalSemaphoreFeatureFlagBits :: [(ExternalSemaphoreFeatureFlagBits, String)]
showTableExternalSemaphoreFeatureFlagBits :: [(ExternalSemaphoreFeatureFlagBits, String)]
showTableExternalSemaphoreFeatureFlagBits =
[
( ExternalSemaphoreFeatureFlagBits
EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT
, String
"EXPORTABLE_BIT"
)
,
( ExternalSemaphoreFeatureFlagBits
EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT
, String
"IMPORTABLE_BIT"
)
]
instance Show ExternalSemaphoreFeatureFlagBits where
showsPrec :: Int -> ExternalSemaphoreFeatureFlagBits -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixExternalSemaphoreFeatureFlagBits
[(ExternalSemaphoreFeatureFlagBits, String)]
showTableExternalSemaphoreFeatureFlagBits
String
conNameExternalSemaphoreFeatureFlagBits
(\(ExternalSemaphoreFeatureFlagBits Flags
x) -> Flags
x)
(\Flags
x -> String -> ShowS
showString String
"0x" forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. (Integral a, Show a) => a -> ShowS
showHex Flags
x)
instance Read ExternalSemaphoreFeatureFlagBits where
readPrec :: ReadPrec ExternalSemaphoreFeatureFlagBits
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixExternalSemaphoreFeatureFlagBits
[(ExternalSemaphoreFeatureFlagBits, String)]
showTableExternalSemaphoreFeatureFlagBits
String
conNameExternalSemaphoreFeatureFlagBits
Flags -> ExternalSemaphoreFeatureFlagBits
ExternalSemaphoreFeatureFlagBits