{-# language CPP #-}
module Vulkan.Core10.Enums.SparseImageFormatFlagBits ( SparseImageFormatFlags
, SparseImageFormatFlagBits( SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT
, SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT
, SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_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 SparseImageFormatFlags = SparseImageFormatFlagBits
newtype SparseImageFormatFlagBits = SparseImageFormatFlagBits Flags
deriving newtype (SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
(SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool)
-> (SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool)
-> Eq SparseImageFormatFlagBits
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
== :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
$c/= :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
/= :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
Eq, Eq SparseImageFormatFlagBits
Eq SparseImageFormatFlagBits =>
(SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> Ordering)
-> (SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool)
-> (SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool)
-> (SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool)
-> (SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool)
-> (SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits)
-> Ord SparseImageFormatFlagBits
SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Ordering
SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
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
$ccompare :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Ordering
compare :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Ordering
$c< :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
< :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
$c<= :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
<= :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
$c> :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
> :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
$c>= :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
>= :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> Bool
$cmax :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
max :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
$cmin :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
min :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
Ord, Ptr SparseImageFormatFlagBits -> IO SparseImageFormatFlagBits
Ptr SparseImageFormatFlagBits
-> Int -> IO SparseImageFormatFlagBits
Ptr SparseImageFormatFlagBits
-> Int -> SparseImageFormatFlagBits -> IO ()
Ptr SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> IO ()
SparseImageFormatFlagBits -> Int
(SparseImageFormatFlagBits -> Int)
-> (SparseImageFormatFlagBits -> Int)
-> (Ptr SparseImageFormatFlagBits
-> Int -> IO SparseImageFormatFlagBits)
-> (Ptr SparseImageFormatFlagBits
-> Int -> SparseImageFormatFlagBits -> IO ())
-> (forall b. Ptr b -> Int -> IO SparseImageFormatFlagBits)
-> (forall b. Ptr b -> Int -> SparseImageFormatFlagBits -> IO ())
-> (Ptr SparseImageFormatFlagBits -> IO SparseImageFormatFlagBits)
-> (Ptr SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> IO ())
-> Storable SparseImageFormatFlagBits
forall b. Ptr b -> Int -> IO SparseImageFormatFlagBits
forall b. Ptr b -> Int -> SparseImageFormatFlagBits -> 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
$csizeOf :: SparseImageFormatFlagBits -> Int
sizeOf :: SparseImageFormatFlagBits -> Int
$calignment :: SparseImageFormatFlagBits -> Int
alignment :: SparseImageFormatFlagBits -> Int
$cpeekElemOff :: Ptr SparseImageFormatFlagBits
-> Int -> IO SparseImageFormatFlagBits
peekElemOff :: Ptr SparseImageFormatFlagBits
-> Int -> IO SparseImageFormatFlagBits
$cpokeElemOff :: Ptr SparseImageFormatFlagBits
-> Int -> SparseImageFormatFlagBits -> IO ()
pokeElemOff :: Ptr SparseImageFormatFlagBits
-> Int -> SparseImageFormatFlagBits -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO SparseImageFormatFlagBits
peekByteOff :: forall b. Ptr b -> Int -> IO SparseImageFormatFlagBits
$cpokeByteOff :: forall b. Ptr b -> Int -> SparseImageFormatFlagBits -> IO ()
pokeByteOff :: forall b. Ptr b -> Int -> SparseImageFormatFlagBits -> IO ()
$cpeek :: Ptr SparseImageFormatFlagBits -> IO SparseImageFormatFlagBits
peek :: Ptr SparseImageFormatFlagBits -> IO SparseImageFormatFlagBits
$cpoke :: Ptr SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> IO ()
poke :: Ptr SparseImageFormatFlagBits -> SparseImageFormatFlagBits -> IO ()
Storable, SparseImageFormatFlagBits
SparseImageFormatFlagBits -> Zero SparseImageFormatFlagBits
forall a. a -> Zero a
$czero :: SparseImageFormatFlagBits
zero :: SparseImageFormatFlagBits
Zero, Eq SparseImageFormatFlagBits
SparseImageFormatFlagBits
Eq SparseImageFormatFlagBits =>
(SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> SparseImageFormatFlagBits
-> (Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> Bool)
-> (SparseImageFormatFlagBits -> Maybe Int)
-> (SparseImageFormatFlagBits -> Int)
-> (SparseImageFormatFlagBits -> Bool)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits)
-> (SparseImageFormatFlagBits -> Int)
-> Bits SparseImageFormatFlagBits
Int -> SparseImageFormatFlagBits
SparseImageFormatFlagBits -> Bool
SparseImageFormatFlagBits -> Int
SparseImageFormatFlagBits -> Maybe Int
SparseImageFormatFlagBits -> SparseImageFormatFlagBits
SparseImageFormatFlagBits -> Int -> Bool
SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
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
$c.&. :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
.&. :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
$c.|. :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
.|. :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
$cxor :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
xor :: SparseImageFormatFlagBits
-> SparseImageFormatFlagBits -> SparseImageFormatFlagBits
$ccomplement :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits
complement :: SparseImageFormatFlagBits -> SparseImageFormatFlagBits
$cshift :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
shift :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$crotate :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
rotate :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$czeroBits :: SparseImageFormatFlagBits
zeroBits :: SparseImageFormatFlagBits
$cbit :: Int -> SparseImageFormatFlagBits
bit :: Int -> SparseImageFormatFlagBits
$csetBit :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
setBit :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$cclearBit :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
clearBit :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$ccomplementBit :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
complementBit :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$ctestBit :: SparseImageFormatFlagBits -> Int -> Bool
testBit :: SparseImageFormatFlagBits -> Int -> Bool
$cbitSizeMaybe :: SparseImageFormatFlagBits -> Maybe Int
bitSizeMaybe :: SparseImageFormatFlagBits -> Maybe Int
$cbitSize :: SparseImageFormatFlagBits -> Int
bitSize :: SparseImageFormatFlagBits -> Int
$cisSigned :: SparseImageFormatFlagBits -> Bool
isSigned :: SparseImageFormatFlagBits -> Bool
$cshiftL :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
shiftL :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$cunsafeShiftL :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
unsafeShiftL :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$cshiftR :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
shiftR :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$cunsafeShiftR :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
unsafeShiftR :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$crotateL :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
rotateL :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$crotateR :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
rotateR :: SparseImageFormatFlagBits -> Int -> SparseImageFormatFlagBits
$cpopCount :: SparseImageFormatFlagBits -> Int
popCount :: SparseImageFormatFlagBits -> Int
Bits, Bits SparseImageFormatFlagBits
Bits SparseImageFormatFlagBits =>
(SparseImageFormatFlagBits -> Int)
-> (SparseImageFormatFlagBits -> Int)
-> (SparseImageFormatFlagBits -> Int)
-> FiniteBits SparseImageFormatFlagBits
SparseImageFormatFlagBits -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: SparseImageFormatFlagBits -> Int
finiteBitSize :: SparseImageFormatFlagBits -> Int
$ccountLeadingZeros :: SparseImageFormatFlagBits -> Int
countLeadingZeros :: SparseImageFormatFlagBits -> Int
$ccountTrailingZeros :: SparseImageFormatFlagBits -> Int
countTrailingZeros :: SparseImageFormatFlagBits -> Int
FiniteBits)
pattern $bSPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT :: SparseImageFormatFlagBits
$mSPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT :: forall {r}.
SparseImageFormatFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = SparseImageFormatFlagBits 0x00000001
pattern $bSPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT :: SparseImageFormatFlagBits
$mSPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT :: forall {r}.
SparseImageFormatFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = SparseImageFormatFlagBits 0x00000002
pattern $bSPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT :: SparseImageFormatFlagBits
$mSPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT :: forall {r}.
SparseImageFormatFlagBits -> ((# #) -> r) -> ((# #) -> r) -> r
SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = SparseImageFormatFlagBits 0x00000004
conNameSparseImageFormatFlagBits :: String
conNameSparseImageFormatFlagBits :: String
conNameSparseImageFormatFlagBits = String
"SparseImageFormatFlagBits"
enumPrefixSparseImageFormatFlagBits :: String
enumPrefixSparseImageFormatFlagBits :: String
enumPrefixSparseImageFormatFlagBits = String
"SPARSE_IMAGE_FORMAT_"
showTableSparseImageFormatFlagBits :: [(SparseImageFormatFlagBits, String)]
showTableSparseImageFormatFlagBits :: [(SparseImageFormatFlagBits, String)]
showTableSparseImageFormatFlagBits =
[
( SparseImageFormatFlagBits
SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT
, String
"SINGLE_MIPTAIL_BIT"
)
,
( SparseImageFormatFlagBits
SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT
, String
"ALIGNED_MIP_SIZE_BIT"
)
,
( SparseImageFormatFlagBits
SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT
, String
"NONSTANDARD_BLOCK_SIZE_BIT"
)
]
instance Show SparseImageFormatFlagBits where
showsPrec :: Int -> SparseImageFormatFlagBits -> ShowS
showsPrec =
String
-> [(SparseImageFormatFlagBits, String)]
-> String
-> (SparseImageFormatFlagBits -> Flags)
-> (Flags -> ShowS)
-> Int
-> SparseImageFormatFlagBits
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixSparseImageFormatFlagBits
[(SparseImageFormatFlagBits, String)]
showTableSparseImageFormatFlagBits
String
conNameSparseImageFormatFlagBits
(\(SparseImageFormatFlagBits Flags
x) -> Flags
x)
(\Flags
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Flags -> ShowS
forall a. Integral a => a -> ShowS
showHex Flags
x)
instance Read SparseImageFormatFlagBits where
readPrec :: ReadPrec SparseImageFormatFlagBits
readPrec =
String
-> [(SparseImageFormatFlagBits, String)]
-> String
-> (Flags -> SparseImageFormatFlagBits)
-> ReadPrec SparseImageFormatFlagBits
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixSparseImageFormatFlagBits
[(SparseImageFormatFlagBits, String)]
showTableSparseImageFormatFlagBits
String
conNameSparseImageFormatFlagBits
Flags -> SparseImageFormatFlagBits
SparseImageFormatFlagBits