{-# language CPP #-}
module Vulkan.Extensions.VK_NV_device_diagnostics_config ( PhysicalDeviceDiagnosticsConfigFeaturesNV(..)
, DeviceDiagnosticsConfigCreateInfoNV(..)
, DeviceDiagnosticsConfigFlagsNV
, DeviceDiagnosticsConfigFlagBitsNV( DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV
, DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV
, DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
, DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV
, ..
)
, NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION
, pattern NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION
, NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME
, pattern NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME
) where
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import Foreign.Marshal.Alloc (allocaBytes)
import Foreign.Ptr (nullPtr)
import Foreign.Ptr (plusPtr)
import GHC.Show (showString)
import Numeric (showHex)
import Vulkan.CStruct (FromCStruct)
import Vulkan.CStruct (FromCStruct(..))
import Vulkan.CStruct (ToCStruct)
import Vulkan.CStruct (ToCStruct(..))
import Vulkan.Zero (Zero)
import Vulkan.Zero (Zero(..))
import Data.String (IsString)
import Data.Typeable (Typeable)
import Foreign.Storable (Storable)
import Foreign.Storable (Storable(peek))
import Foreign.Storable (Storable(poke))
import qualified Foreign.Storable (Storable(..))
import GHC.Generics (Generic)
import Foreign.Ptr (Ptr)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Data.Kind (Type)
import Vulkan.Core10.FundamentalTypes (bool32ToBool)
import Vulkan.Core10.FundamentalTypes (boolToBool32)
import Vulkan.Core10.FundamentalTypes (Bool32)
import Vulkan.Core10.FundamentalTypes (Flags)
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV))
data PhysicalDeviceDiagnosticsConfigFeaturesNV = PhysicalDeviceDiagnosticsConfigFeaturesNV
{
PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
diagnosticsConfig :: Bool }
deriving (Typeable, PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
$c/= :: PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
== :: PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
$c== :: PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceDiagnosticsConfigFeaturesNV)
#endif
deriving instance Show PhysicalDeviceDiagnosticsConfigFeaturesNV
instance ToCStruct PhysicalDeviceDiagnosticsConfigFeaturesNV where
withCStruct :: forall b.
PhysicalDeviceDiagnosticsConfigFeaturesNV
-> (Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV -> IO b) -> IO b
withCStruct PhysicalDeviceDiagnosticsConfigFeaturesNV
x Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV -> IO b
f = forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p -> forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p PhysicalDeviceDiagnosticsConfigFeaturesNV
x (Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV -> IO b
f Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p PhysicalDeviceDiagnosticsConfigFeaturesNV{Bool
diagnosticsConfig :: Bool
$sel:diagnosticsConfig:PhysicalDeviceDiagnosticsConfigFeaturesNV :: PhysicalDeviceDiagnosticsConfigFeaturesNV -> Bool
..} IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
diagnosticsConfig))
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceDiagnosticsConfigFeaturesNV where
peekCStruct :: Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
-> IO PhysicalDeviceDiagnosticsConfigFeaturesNV
peekCStruct Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p = do
Bool32
diagnosticsConfig <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ Bool -> PhysicalDeviceDiagnosticsConfigFeaturesNV
PhysicalDeviceDiagnosticsConfigFeaturesNV
(Bool32 -> Bool
bool32ToBool Bool32
diagnosticsConfig)
instance Storable PhysicalDeviceDiagnosticsConfigFeaturesNV where
sizeOf :: PhysicalDeviceDiagnosticsConfigFeaturesNV -> Int
sizeOf ~PhysicalDeviceDiagnosticsConfigFeaturesNV
_ = Int
24
alignment :: PhysicalDeviceDiagnosticsConfigFeaturesNV -> Int
alignment ~PhysicalDeviceDiagnosticsConfigFeaturesNV
_ = Int
8
peek :: Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
-> IO PhysicalDeviceDiagnosticsConfigFeaturesNV
peek = forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
-> PhysicalDeviceDiagnosticsConfigFeaturesNV -> IO ()
poke Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
poked = forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
ptr PhysicalDeviceDiagnosticsConfigFeaturesNV
poked (forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceDiagnosticsConfigFeaturesNV where
zero :: PhysicalDeviceDiagnosticsConfigFeaturesNV
zero = Bool -> PhysicalDeviceDiagnosticsConfigFeaturesNV
PhysicalDeviceDiagnosticsConfigFeaturesNV
forall a. Zero a => a
zero
data DeviceDiagnosticsConfigCreateInfoNV = DeviceDiagnosticsConfigCreateInfoNV
{
DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigFlagBitsNV
flags :: DeviceDiagnosticsConfigFlagsNV }
deriving (Typeable, DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> Bool
$c/= :: DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> Bool
== :: DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> Bool
$c== :: DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DeviceDiagnosticsConfigCreateInfoNV)
#endif
deriving instance Show DeviceDiagnosticsConfigCreateInfoNV
instance ToCStruct DeviceDiagnosticsConfigCreateInfoNV where
withCStruct :: forall b.
DeviceDiagnosticsConfigCreateInfoNV
-> (Ptr DeviceDiagnosticsConfigCreateInfoNV -> IO b) -> IO b
withCStruct DeviceDiagnosticsConfigCreateInfoNV
x Ptr DeviceDiagnosticsConfigCreateInfoNV -> IO b
f = forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 forall a b. (a -> b) -> a -> b
$ \Ptr DeviceDiagnosticsConfigCreateInfoNV
p -> forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DeviceDiagnosticsConfigCreateInfoNV
p DeviceDiagnosticsConfigCreateInfoNV
x (Ptr DeviceDiagnosticsConfigCreateInfoNV -> IO b
f Ptr DeviceDiagnosticsConfigCreateInfoNV
p)
pokeCStruct :: forall b.
Ptr DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> IO b -> IO b
pokeCStruct Ptr DeviceDiagnosticsConfigCreateInfoNV
p DeviceDiagnosticsConfigCreateInfoNV{DeviceDiagnosticsConfigFlagBitsNV
flags :: DeviceDiagnosticsConfigFlagBitsNV
$sel:flags:DeviceDiagnosticsConfigCreateInfoNV :: DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigFlagBitsNV
..} IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceDiagnosticsConfigCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceDiagnosticsConfigCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceDiagnosticsConfigCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DeviceDiagnosticsConfigFlagsNV)) (DeviceDiagnosticsConfigFlagBitsNV
flags)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DeviceDiagnosticsConfigCreateInfoNV -> IO b -> IO b
pokeZeroCStruct Ptr DeviceDiagnosticsConfigCreateInfoNV
p IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceDiagnosticsConfigCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceDiagnosticsConfigCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (forall a. Ptr a
nullPtr)
IO b
f
instance FromCStruct DeviceDiagnosticsConfigCreateInfoNV where
peekCStruct :: Ptr DeviceDiagnosticsConfigCreateInfoNV
-> IO DeviceDiagnosticsConfigCreateInfoNV
peekCStruct Ptr DeviceDiagnosticsConfigCreateInfoNV
p = do
DeviceDiagnosticsConfigFlagBitsNV
flags <- forall a. Storable a => Ptr a -> IO a
peek @DeviceDiagnosticsConfigFlagsNV ((Ptr DeviceDiagnosticsConfigCreateInfoNV
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DeviceDiagnosticsConfigFlagsNV))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigCreateInfoNV
DeviceDiagnosticsConfigCreateInfoNV
DeviceDiagnosticsConfigFlagBitsNV
flags
instance Storable DeviceDiagnosticsConfigCreateInfoNV where
sizeOf :: DeviceDiagnosticsConfigCreateInfoNV -> Int
sizeOf ~DeviceDiagnosticsConfigCreateInfoNV
_ = Int
24
alignment :: DeviceDiagnosticsConfigCreateInfoNV -> Int
alignment ~DeviceDiagnosticsConfigCreateInfoNV
_ = Int
8
peek :: Ptr DeviceDiagnosticsConfigCreateInfoNV
-> IO DeviceDiagnosticsConfigCreateInfoNV
peek = forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DeviceDiagnosticsConfigCreateInfoNV
-> DeviceDiagnosticsConfigCreateInfoNV -> IO ()
poke Ptr DeviceDiagnosticsConfigCreateInfoNV
ptr DeviceDiagnosticsConfigCreateInfoNV
poked = forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DeviceDiagnosticsConfigCreateInfoNV
ptr DeviceDiagnosticsConfigCreateInfoNV
poked (forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DeviceDiagnosticsConfigCreateInfoNV where
zero :: DeviceDiagnosticsConfigCreateInfoNV
zero = DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigCreateInfoNV
DeviceDiagnosticsConfigCreateInfoNV
forall a. Zero a => a
zero
type DeviceDiagnosticsConfigFlagsNV = DeviceDiagnosticsConfigFlagBitsNV
newtype DeviceDiagnosticsConfigFlagBitsNV = DeviceDiagnosticsConfigFlagBitsNV Flags
deriving newtype (DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
$c/= :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
== :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
$c== :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
Eq, Eq DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Ordering
DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
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 :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
$cmin :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
max :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
$cmax :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
>= :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
$c>= :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
> :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
$c> :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
<= :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
$c<= :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
< :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
$c< :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Bool
compare :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Ordering
$ccompare :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> Ordering
Ord, Ptr DeviceDiagnosticsConfigFlagBitsNV
-> IO DeviceDiagnosticsConfigFlagBitsNV
Ptr DeviceDiagnosticsConfigFlagBitsNV
-> Int -> IO DeviceDiagnosticsConfigFlagBitsNV
Ptr DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
Ptr DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
DeviceDiagnosticsConfigFlagBitsNV -> Int
forall b. Ptr b -> Int -> IO DeviceDiagnosticsConfigFlagBitsNV
forall b.
Ptr b -> Int -> DeviceDiagnosticsConfigFlagBitsNV -> 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 DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
$cpoke :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
peek :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> IO DeviceDiagnosticsConfigFlagBitsNV
$cpeek :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> IO DeviceDiagnosticsConfigFlagBitsNV
pokeByteOff :: forall b.
Ptr b -> Int -> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
$cpokeByteOff :: forall b.
Ptr b -> Int -> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO DeviceDiagnosticsConfigFlagBitsNV
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DeviceDiagnosticsConfigFlagBitsNV
pokeElemOff :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
$cpokeElemOff :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV -> IO ()
peekElemOff :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> Int -> IO DeviceDiagnosticsConfigFlagBitsNV
$cpeekElemOff :: Ptr DeviceDiagnosticsConfigFlagBitsNV
-> Int -> IO DeviceDiagnosticsConfigFlagBitsNV
alignment :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$calignment :: DeviceDiagnosticsConfigFlagBitsNV -> Int
sizeOf :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$csizeOf :: DeviceDiagnosticsConfigFlagBitsNV -> Int
Storable, DeviceDiagnosticsConfigFlagBitsNV
forall a. a -> Zero a
zero :: DeviceDiagnosticsConfigFlagBitsNV
$czero :: DeviceDiagnosticsConfigFlagBitsNV
Zero, Eq DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV
Int -> DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV -> Bool
DeviceDiagnosticsConfigFlagBitsNV -> Int
DeviceDiagnosticsConfigFlagBitsNV -> Maybe Int
DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV -> Int -> Bool
DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
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 :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$cpopCount :: DeviceDiagnosticsConfigFlagBitsNV -> Int
rotateR :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$crotateR :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
rotateL :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$crotateL :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
unsafeShiftR :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$cunsafeShiftR :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
shiftR :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$cshiftR :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
unsafeShiftL :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$cunsafeShiftL :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
shiftL :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$cshiftL :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
isSigned :: DeviceDiagnosticsConfigFlagBitsNV -> Bool
$cisSigned :: DeviceDiagnosticsConfigFlagBitsNV -> Bool
bitSize :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$cbitSize :: DeviceDiagnosticsConfigFlagBitsNV -> Int
bitSizeMaybe :: DeviceDiagnosticsConfigFlagBitsNV -> Maybe Int
$cbitSizeMaybe :: DeviceDiagnosticsConfigFlagBitsNV -> Maybe Int
testBit :: DeviceDiagnosticsConfigFlagBitsNV -> Int -> Bool
$ctestBit :: DeviceDiagnosticsConfigFlagBitsNV -> Int -> Bool
complementBit :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$ccomplementBit :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
clearBit :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$cclearBit :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
setBit :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$csetBit :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
bit :: Int -> DeviceDiagnosticsConfigFlagBitsNV
$cbit :: Int -> DeviceDiagnosticsConfigFlagBitsNV
zeroBits :: DeviceDiagnosticsConfigFlagBitsNV
$czeroBits :: DeviceDiagnosticsConfigFlagBitsNV
rotate :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$crotate :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
shift :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
$cshift :: DeviceDiagnosticsConfigFlagBitsNV
-> Int -> DeviceDiagnosticsConfigFlagBitsNV
complement :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
$ccomplement :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
xor :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
$cxor :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
.|. :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
$c.|. :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
.&. :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
$c.&. :: DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
-> DeviceDiagnosticsConfigFlagBitsNV
Bits, Bits DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$ccountTrailingZeros :: DeviceDiagnosticsConfigFlagBitsNV -> Int
countLeadingZeros :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$ccountLeadingZeros :: DeviceDiagnosticsConfigFlagBitsNV -> Int
finiteBitSize :: DeviceDiagnosticsConfigFlagBitsNV -> Int
$cfiniteBitSize :: DeviceDiagnosticsConfigFlagBitsNV -> Int
FiniteBits)
pattern $bDEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
$mDEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV :: forall {r}.
DeviceDiagnosticsConfigFlagBitsNV
-> ((# #) -> r) -> ((# #) -> r) -> r
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = DeviceDiagnosticsConfigFlagBitsNV 0x00000001
pattern $bDEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
$mDEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV :: forall {r}.
DeviceDiagnosticsConfigFlagBitsNV
-> ((# #) -> r) -> ((# #) -> r) -> r
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = DeviceDiagnosticsConfigFlagBitsNV 0x00000002
pattern $bDEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
$mDEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV :: forall {r}.
DeviceDiagnosticsConfigFlagBitsNV
-> ((# #) -> r) -> ((# #) -> r) -> r
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = DeviceDiagnosticsConfigFlagBitsNV 0x00000004
pattern $bDEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV :: DeviceDiagnosticsConfigFlagBitsNV
$mDEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV :: forall {r}.
DeviceDiagnosticsConfigFlagBitsNV
-> ((# #) -> r) -> ((# #) -> r) -> r
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV = DeviceDiagnosticsConfigFlagBitsNV 0x00000008
conNameDeviceDiagnosticsConfigFlagBitsNV :: String
conNameDeviceDiagnosticsConfigFlagBitsNV :: String
conNameDeviceDiagnosticsConfigFlagBitsNV = String
"DeviceDiagnosticsConfigFlagBitsNV"
enumPrefixDeviceDiagnosticsConfigFlagBitsNV :: String
enumPrefixDeviceDiagnosticsConfigFlagBitsNV :: String
enumPrefixDeviceDiagnosticsConfigFlagBitsNV = String
"DEVICE_DIAGNOSTICS_CONFIG_ENABLE_"
showTableDeviceDiagnosticsConfigFlagBitsNV :: [(DeviceDiagnosticsConfigFlagBitsNV, String)]
showTableDeviceDiagnosticsConfigFlagBitsNV :: [(DeviceDiagnosticsConfigFlagBitsNV, String)]
showTableDeviceDiagnosticsConfigFlagBitsNV =
[
( DeviceDiagnosticsConfigFlagBitsNV
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV
, String
"SHADER_DEBUG_INFO_BIT_NV"
)
,
( DeviceDiagnosticsConfigFlagBitsNV
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV
, String
"RESOURCE_TRACKING_BIT_NV"
)
,
( DeviceDiagnosticsConfigFlagBitsNV
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV
, String
"AUTOMATIC_CHECKPOINTS_BIT_NV"
)
,
( DeviceDiagnosticsConfigFlagBitsNV
DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV
, String
"SHADER_ERROR_REPORTING_BIT_NV"
)
]
instance Show DeviceDiagnosticsConfigFlagBitsNV where
showsPrec :: Int -> DeviceDiagnosticsConfigFlagBitsNV -> ShowS
showsPrec =
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDeviceDiagnosticsConfigFlagBitsNV
[(DeviceDiagnosticsConfigFlagBitsNV, String)]
showTableDeviceDiagnosticsConfigFlagBitsNV
String
conNameDeviceDiagnosticsConfigFlagBitsNV
(\(DeviceDiagnosticsConfigFlagBitsNV 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 DeviceDiagnosticsConfigFlagBitsNV where
readPrec :: ReadPrec DeviceDiagnosticsConfigFlagBitsNV
readPrec =
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDeviceDiagnosticsConfigFlagBitsNV
[(DeviceDiagnosticsConfigFlagBitsNV, String)]
showTableDeviceDiagnosticsConfigFlagBitsNV
String
conNameDeviceDiagnosticsConfigFlagBitsNV
Flags -> DeviceDiagnosticsConfigFlagBitsNV
DeviceDiagnosticsConfigFlagBitsNV
type NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION = 2
pattern NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION :: forall a . Integral a => a
pattern $bNV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION :: forall a. Integral a => a
$mNV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION = 2
type NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME = "VK_NV_device_diagnostics_config"
pattern NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $bNV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
$mNV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME = "VK_NV_device_diagnostics_config"