{-# language CPP #-}
module Vulkan.Extensions.VK_EXT_device_address_binding_report ( PhysicalDeviceAddressBindingReportFeaturesEXT(..)
, DeviceAddressBindingCallbackDataEXT(..)
, DeviceAddressBindingFlagsEXT
, DeviceAddressBindingFlagBitsEXT( DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT
, ..
)
, DeviceAddressBindingTypeEXT( DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT
, DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT
, ..
)
, EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION
, pattern EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION
, EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME
, pattern EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME
, DebugUtilsMessageTypeFlagBitsEXT(..)
, DebugUtilsMessageTypeFlagsEXT
) where
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 GHC.Show (showsPrec)
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.Bits (Bits)
import Data.Bits (FiniteBits)
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 Data.Int (Int32)
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 (DeviceAddress)
import Vulkan.Core10.FundamentalTypes (DeviceSize)
import Vulkan.Core10.FundamentalTypes (Flags)
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT))
import Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsMessageTypeFlagBitsEXT(..))
import Vulkan.Extensions.VK_EXT_debug_utils (DebugUtilsMessageTypeFlagsEXT)
data PhysicalDeviceAddressBindingReportFeaturesEXT = PhysicalDeviceAddressBindingReportFeaturesEXT
{
PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
reportAddressBinding :: Bool }
deriving (Typeable, PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
(PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool)
-> (PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool)
-> Eq PhysicalDeviceAddressBindingReportFeaturesEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
$c/= :: PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
== :: PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
$c== :: PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceAddressBindingReportFeaturesEXT)
#endif
deriving instance Show PhysicalDeviceAddressBindingReportFeaturesEXT
instance ToCStruct PhysicalDeviceAddressBindingReportFeaturesEXT where
withCStruct :: forall b.
PhysicalDeviceAddressBindingReportFeaturesEXT
-> (Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b)
-> IO b
withCStruct PhysicalDeviceAddressBindingReportFeaturesEXT
x Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b
f = Int
-> (Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b)
-> IO b)
-> (Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p -> Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p PhysicalDeviceAddressBindingReportFeaturesEXT
x (Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b
f Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p PhysicalDeviceAddressBindingReportFeaturesEXT{Bool
reportAddressBinding :: Bool
$sel:reportAddressBinding:PhysicalDeviceAddressBindingReportFeaturesEXT :: PhysicalDeviceAddressBindingReportFeaturesEXT -> Bool
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
reportAddressBinding))
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceAddressBindingReportFeaturesEXT -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceAddressBindingReportFeaturesEXT where
peekCStruct :: Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> IO PhysicalDeviceAddressBindingReportFeaturesEXT
peekCStruct Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p = do
Bool32
reportAddressBinding <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
p Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32))
PhysicalDeviceAddressBindingReportFeaturesEXT
-> IO PhysicalDeviceAddressBindingReportFeaturesEXT
forall (f :: * -> *) a. Applicative f => a -> f a
pure (PhysicalDeviceAddressBindingReportFeaturesEXT
-> IO PhysicalDeviceAddressBindingReportFeaturesEXT)
-> PhysicalDeviceAddressBindingReportFeaturesEXT
-> IO PhysicalDeviceAddressBindingReportFeaturesEXT
forall a b. (a -> b) -> a -> b
$ Bool -> PhysicalDeviceAddressBindingReportFeaturesEXT
PhysicalDeviceAddressBindingReportFeaturesEXT
(Bool32 -> Bool
bool32ToBool Bool32
reportAddressBinding)
instance Storable PhysicalDeviceAddressBindingReportFeaturesEXT where
sizeOf :: PhysicalDeviceAddressBindingReportFeaturesEXT -> Int
sizeOf ~PhysicalDeviceAddressBindingReportFeaturesEXT
_ = Int
24
alignment :: PhysicalDeviceAddressBindingReportFeaturesEXT -> Int
alignment ~PhysicalDeviceAddressBindingReportFeaturesEXT
_ = Int
8
peek :: Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> IO PhysicalDeviceAddressBindingReportFeaturesEXT
peek = Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> IO PhysicalDeviceAddressBindingReportFeaturesEXT
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> IO ()
poke Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
ptr PhysicalDeviceAddressBindingReportFeaturesEXT
poked = Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
-> PhysicalDeviceAddressBindingReportFeaturesEXT -> IO () -> IO ()
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceAddressBindingReportFeaturesEXT
ptr PhysicalDeviceAddressBindingReportFeaturesEXT
poked (() -> IO ()
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceAddressBindingReportFeaturesEXT where
zero :: PhysicalDeviceAddressBindingReportFeaturesEXT
zero = Bool -> PhysicalDeviceAddressBindingReportFeaturesEXT
PhysicalDeviceAddressBindingReportFeaturesEXT
Bool
forall a. Zero a => a
zero
data DeviceAddressBindingCallbackDataEXT = DeviceAddressBindingCallbackDataEXT
{
DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingFlagBitsEXT
flags :: DeviceAddressBindingFlagsEXT
,
DeviceAddressBindingCallbackDataEXT -> DeviceAddress
baseAddress :: DeviceAddress
,
DeviceAddressBindingCallbackDataEXT -> DeviceAddress
size :: DeviceSize
,
DeviceAddressBindingCallbackDataEXT -> DeviceAddressBindingTypeEXT
bindingType :: DeviceAddressBindingTypeEXT
}
deriving (Typeable, DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool
(DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool)
-> (DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool)
-> Eq DeviceAddressBindingCallbackDataEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool
$c/= :: DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool
== :: DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool
$c== :: DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DeviceAddressBindingCallbackDataEXT)
#endif
deriving instance Show DeviceAddressBindingCallbackDataEXT
instance ToCStruct DeviceAddressBindingCallbackDataEXT where
withCStruct :: forall b.
DeviceAddressBindingCallbackDataEXT
-> (Ptr DeviceAddressBindingCallbackDataEXT -> IO b) -> IO b
withCStruct DeviceAddressBindingCallbackDataEXT
x Ptr DeviceAddressBindingCallbackDataEXT -> IO b
f = Int -> (Ptr DeviceAddressBindingCallbackDataEXT -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
48 ((Ptr DeviceAddressBindingCallbackDataEXT -> IO b) -> IO b)
-> (Ptr DeviceAddressBindingCallbackDataEXT -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DeviceAddressBindingCallbackDataEXT
p -> Ptr DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DeviceAddressBindingCallbackDataEXT
p DeviceAddressBindingCallbackDataEXT
x (Ptr DeviceAddressBindingCallbackDataEXT -> IO b
f Ptr DeviceAddressBindingCallbackDataEXT
p)
pokeCStruct :: forall b.
Ptr DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> IO b -> IO b
pokeCStruct Ptr DeviceAddressBindingCallbackDataEXT
p DeviceAddressBindingCallbackDataEXT{DeviceAddress
DeviceAddressBindingTypeEXT
DeviceAddressBindingFlagBitsEXT
bindingType :: DeviceAddressBindingTypeEXT
size :: DeviceAddress
baseAddress :: DeviceAddress
flags :: DeviceAddressBindingFlagBitsEXT
$sel:bindingType:DeviceAddressBindingCallbackDataEXT :: DeviceAddressBindingCallbackDataEXT -> DeviceAddressBindingTypeEXT
$sel:size:DeviceAddressBindingCallbackDataEXT :: DeviceAddressBindingCallbackDataEXT -> DeviceAddress
$sel:baseAddress:DeviceAddressBindingCallbackDataEXT :: DeviceAddressBindingCallbackDataEXT -> DeviceAddress
$sel:flags:DeviceAddressBindingCallbackDataEXT :: DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingFlagBitsEXT
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT
-> Int -> Ptr DeviceAddressBindingFlagBitsEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DeviceAddressBindingFlagsEXT)) (DeviceAddressBindingFlagBitsEXT
flags)
Ptr DeviceAddress -> DeviceAddress -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr DeviceAddress
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DeviceAddress)) (DeviceAddress
baseAddress)
Ptr DeviceAddress -> DeviceAddress -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr DeviceAddress
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr DeviceSize)) (DeviceAddress
size)
Ptr DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT
-> Int -> Ptr DeviceAddressBindingTypeEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr DeviceAddressBindingTypeEXT)) (DeviceAddressBindingTypeEXT
bindingType)
IO b
f
cStructSize :: Int
cStructSize = Int
48
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DeviceAddressBindingCallbackDataEXT -> IO b -> IO b
pokeZeroCStruct Ptr DeviceAddressBindingCallbackDataEXT
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DeviceAddress -> DeviceAddress -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr DeviceAddress
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DeviceAddress)) (DeviceAddress
forall a. Zero a => a
zero)
Ptr DeviceAddress -> DeviceAddress -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr DeviceAddress
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr DeviceSize)) (DeviceAddress
forall a. Zero a => a
zero)
Ptr DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT
-> Int -> Ptr DeviceAddressBindingTypeEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr DeviceAddressBindingTypeEXT)) (DeviceAddressBindingTypeEXT
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DeviceAddressBindingCallbackDataEXT where
peekCStruct :: Ptr DeviceAddressBindingCallbackDataEXT
-> IO DeviceAddressBindingCallbackDataEXT
peekCStruct Ptr DeviceAddressBindingCallbackDataEXT
p = do
DeviceAddressBindingFlagBitsEXT
flags <- forall a. Storable a => Ptr a -> IO a
peek @DeviceAddressBindingFlagsEXT ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT
-> Int -> Ptr DeviceAddressBindingFlagBitsEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DeviceAddressBindingFlagsEXT))
DeviceAddress
baseAddress <- forall a. Storable a => Ptr a -> IO a
peek @DeviceAddress ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr DeviceAddress
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DeviceAddress))
DeviceAddress
size <- forall a. Storable a => Ptr a -> IO a
peek @DeviceSize ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT -> Int -> Ptr DeviceAddress
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr DeviceSize))
DeviceAddressBindingTypeEXT
bindingType <- forall a. Storable a => Ptr a -> IO a
peek @DeviceAddressBindingTypeEXT ((Ptr DeviceAddressBindingCallbackDataEXT
p Ptr DeviceAddressBindingCallbackDataEXT
-> Int -> Ptr DeviceAddressBindingTypeEXT
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr DeviceAddressBindingTypeEXT))
DeviceAddressBindingCallbackDataEXT
-> IO DeviceAddressBindingCallbackDataEXT
forall (f :: * -> *) a. Applicative f => a -> f a
pure (DeviceAddressBindingCallbackDataEXT
-> IO DeviceAddressBindingCallbackDataEXT)
-> DeviceAddressBindingCallbackDataEXT
-> IO DeviceAddressBindingCallbackDataEXT
forall a b. (a -> b) -> a -> b
$ DeviceAddressBindingFlagBitsEXT
-> DeviceAddress
-> DeviceAddress
-> DeviceAddressBindingTypeEXT
-> DeviceAddressBindingCallbackDataEXT
DeviceAddressBindingCallbackDataEXT
DeviceAddressBindingFlagBitsEXT
flags DeviceAddress
baseAddress DeviceAddress
size DeviceAddressBindingTypeEXT
bindingType
instance Storable DeviceAddressBindingCallbackDataEXT where
sizeOf :: DeviceAddressBindingCallbackDataEXT -> Int
sizeOf ~DeviceAddressBindingCallbackDataEXT
_ = Int
48
alignment :: DeviceAddressBindingCallbackDataEXT -> Int
alignment ~DeviceAddressBindingCallbackDataEXT
_ = Int
8
peek :: Ptr DeviceAddressBindingCallbackDataEXT
-> IO DeviceAddressBindingCallbackDataEXT
peek = Ptr DeviceAddressBindingCallbackDataEXT
-> IO DeviceAddressBindingCallbackDataEXT
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> IO ()
poke Ptr DeviceAddressBindingCallbackDataEXT
ptr DeviceAddressBindingCallbackDataEXT
poked = Ptr DeviceAddressBindingCallbackDataEXT
-> DeviceAddressBindingCallbackDataEXT -> IO () -> IO ()
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DeviceAddressBindingCallbackDataEXT
ptr DeviceAddressBindingCallbackDataEXT
poked (() -> IO ()
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DeviceAddressBindingCallbackDataEXT where
zero :: DeviceAddressBindingCallbackDataEXT
zero = DeviceAddressBindingFlagBitsEXT
-> DeviceAddress
-> DeviceAddress
-> DeviceAddressBindingTypeEXT
-> DeviceAddressBindingCallbackDataEXT
DeviceAddressBindingCallbackDataEXT
DeviceAddressBindingFlagBitsEXT
forall a. Zero a => a
zero
DeviceAddress
forall a. Zero a => a
zero
DeviceAddress
forall a. Zero a => a
zero
DeviceAddressBindingTypeEXT
forall a. Zero a => a
zero
type DeviceAddressBindingFlagsEXT = DeviceAddressBindingFlagBitsEXT
newtype DeviceAddressBindingFlagBitsEXT = DeviceAddressBindingFlagBitsEXT Flags
deriving newtype (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
(DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool)
-> Eq DeviceAddressBindingFlagBitsEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
$c/= :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
== :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
$c== :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
Eq, Eq DeviceAddressBindingFlagBitsEXT
Eq DeviceAddressBindingFlagBitsEXT
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Ordering)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT)
-> Ord DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Ordering
DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
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 :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
$cmin :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
max :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
$cmax :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
>= :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
$c>= :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
> :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
$c> :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
<= :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
$c<= :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
< :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
$c< :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Bool
compare :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Ordering
$ccompare :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> Ordering
Ord, Ptr DeviceAddressBindingFlagBitsEXT
-> IO DeviceAddressBindingFlagBitsEXT
Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> IO DeviceAddressBindingFlagBitsEXT
Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT -> IO ()
Ptr DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> IO ()
DeviceAddressBindingFlagBitsEXT -> Int
(DeviceAddressBindingFlagBitsEXT -> Int)
-> (DeviceAddressBindingFlagBitsEXT -> Int)
-> (Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> IO DeviceAddressBindingFlagBitsEXT)
-> (Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT -> IO ())
-> (forall b. Ptr b -> Int -> IO DeviceAddressBindingFlagBitsEXT)
-> (forall b.
Ptr b -> Int -> DeviceAddressBindingFlagBitsEXT -> IO ())
-> (Ptr DeviceAddressBindingFlagBitsEXT
-> IO DeviceAddressBindingFlagBitsEXT)
-> (Ptr DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> IO ())
-> Storable DeviceAddressBindingFlagBitsEXT
forall b. Ptr b -> Int -> IO DeviceAddressBindingFlagBitsEXT
forall b. Ptr b -> Int -> DeviceAddressBindingFlagBitsEXT -> 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 DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> IO ()
$cpoke :: Ptr DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT -> IO ()
peek :: Ptr DeviceAddressBindingFlagBitsEXT
-> IO DeviceAddressBindingFlagBitsEXT
$cpeek :: Ptr DeviceAddressBindingFlagBitsEXT
-> IO DeviceAddressBindingFlagBitsEXT
pokeByteOff :: forall b. Ptr b -> Int -> DeviceAddressBindingFlagBitsEXT -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> DeviceAddressBindingFlagBitsEXT -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO DeviceAddressBindingFlagBitsEXT
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DeviceAddressBindingFlagBitsEXT
pokeElemOff :: Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT -> IO ()
$cpokeElemOff :: Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT -> IO ()
peekElemOff :: Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> IO DeviceAddressBindingFlagBitsEXT
$cpeekElemOff :: Ptr DeviceAddressBindingFlagBitsEXT
-> Int -> IO DeviceAddressBindingFlagBitsEXT
alignment :: DeviceAddressBindingFlagBitsEXT -> Int
$calignment :: DeviceAddressBindingFlagBitsEXT -> Int
sizeOf :: DeviceAddressBindingFlagBitsEXT -> Int
$csizeOf :: DeviceAddressBindingFlagBitsEXT -> Int
Storable, DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT
-> Zero DeviceAddressBindingFlagBitsEXT
forall a. a -> Zero a
zero :: DeviceAddressBindingFlagBitsEXT
$czero :: DeviceAddressBindingFlagBitsEXT
Zero, Eq DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT
Eq DeviceAddressBindingFlagBitsEXT
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> DeviceAddressBindingFlagBitsEXT
-> (Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT -> Int -> Bool)
-> (DeviceAddressBindingFlagBitsEXT -> Maybe Int)
-> (DeviceAddressBindingFlagBitsEXT -> Int)
-> (DeviceAddressBindingFlagBitsEXT -> Bool)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT)
-> (DeviceAddressBindingFlagBitsEXT -> Int)
-> Bits DeviceAddressBindingFlagBitsEXT
Int -> DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT -> Bool
DeviceAddressBindingFlagBitsEXT -> Int
DeviceAddressBindingFlagBitsEXT -> Maybe Int
DeviceAddressBindingFlagBitsEXT -> DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT -> Int -> Bool
DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
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 :: DeviceAddressBindingFlagBitsEXT -> Int
$cpopCount :: DeviceAddressBindingFlagBitsEXT -> Int
rotateR :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$crotateR :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
rotateL :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$crotateL :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
unsafeShiftR :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$cunsafeShiftR :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
shiftR :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$cshiftR :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
unsafeShiftL :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$cunsafeShiftL :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
shiftL :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$cshiftL :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
isSigned :: DeviceAddressBindingFlagBitsEXT -> Bool
$cisSigned :: DeviceAddressBindingFlagBitsEXT -> Bool
bitSize :: DeviceAddressBindingFlagBitsEXT -> Int
$cbitSize :: DeviceAddressBindingFlagBitsEXT -> Int
bitSizeMaybe :: DeviceAddressBindingFlagBitsEXT -> Maybe Int
$cbitSizeMaybe :: DeviceAddressBindingFlagBitsEXT -> Maybe Int
testBit :: DeviceAddressBindingFlagBitsEXT -> Int -> Bool
$ctestBit :: DeviceAddressBindingFlagBitsEXT -> Int -> Bool
complementBit :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$ccomplementBit :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
clearBit :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$cclearBit :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
setBit :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$csetBit :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
bit :: Int -> DeviceAddressBindingFlagBitsEXT
$cbit :: Int -> DeviceAddressBindingFlagBitsEXT
zeroBits :: DeviceAddressBindingFlagBitsEXT
$czeroBits :: DeviceAddressBindingFlagBitsEXT
rotate :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$crotate :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
shift :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
$cshift :: DeviceAddressBindingFlagBitsEXT
-> Int -> DeviceAddressBindingFlagBitsEXT
complement :: DeviceAddressBindingFlagBitsEXT -> DeviceAddressBindingFlagBitsEXT
$ccomplement :: DeviceAddressBindingFlagBitsEXT -> DeviceAddressBindingFlagBitsEXT
xor :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
$cxor :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
.|. :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
$c.|. :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
.&. :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
$c.&. :: DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
-> DeviceAddressBindingFlagBitsEXT
Bits, Bits DeviceAddressBindingFlagBitsEXT
Bits DeviceAddressBindingFlagBitsEXT
-> (DeviceAddressBindingFlagBitsEXT -> Int)
-> (DeviceAddressBindingFlagBitsEXT -> Int)
-> (DeviceAddressBindingFlagBitsEXT -> Int)
-> FiniteBits DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: DeviceAddressBindingFlagBitsEXT -> Int
$ccountTrailingZeros :: DeviceAddressBindingFlagBitsEXT -> Int
countLeadingZeros :: DeviceAddressBindingFlagBitsEXT -> Int
$ccountLeadingZeros :: DeviceAddressBindingFlagBitsEXT -> Int
finiteBitSize :: DeviceAddressBindingFlagBitsEXT -> Int
$cfiniteBitSize :: DeviceAddressBindingFlagBitsEXT -> Int
FiniteBits)
pattern $bDEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT :: DeviceAddressBindingFlagBitsEXT
$mDEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT :: forall {r}.
DeviceAddressBindingFlagBitsEXT
-> (Void# -> r) -> (Void# -> r) -> r
DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT = DeviceAddressBindingFlagBitsEXT 0x00000001
conNameDeviceAddressBindingFlagBitsEXT :: String
conNameDeviceAddressBindingFlagBitsEXT :: String
conNameDeviceAddressBindingFlagBitsEXT = String
"DeviceAddressBindingFlagBitsEXT"
enumPrefixDeviceAddressBindingFlagBitsEXT :: String
enumPrefixDeviceAddressBindingFlagBitsEXT :: String
enumPrefixDeviceAddressBindingFlagBitsEXT = String
"DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT"
showTableDeviceAddressBindingFlagBitsEXT :: [(DeviceAddressBindingFlagBitsEXT, String)]
showTableDeviceAddressBindingFlagBitsEXT :: [(DeviceAddressBindingFlagBitsEXT, String)]
showTableDeviceAddressBindingFlagBitsEXT =
[
( DeviceAddressBindingFlagBitsEXT
DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT
, String
""
)
]
instance Show DeviceAddressBindingFlagBitsEXT where
showsPrec :: Int -> DeviceAddressBindingFlagBitsEXT -> ShowS
showsPrec =
String
-> [(DeviceAddressBindingFlagBitsEXT, String)]
-> String
-> (DeviceAddressBindingFlagBitsEXT -> Flags)
-> (Flags -> ShowS)
-> Int
-> DeviceAddressBindingFlagBitsEXT
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDeviceAddressBindingFlagBitsEXT
[(DeviceAddressBindingFlagBitsEXT, String)]
showTableDeviceAddressBindingFlagBitsEXT
String
conNameDeviceAddressBindingFlagBitsEXT
(\(DeviceAddressBindingFlagBitsEXT 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, Show a) => a -> ShowS
showHex Flags
x)
instance Read DeviceAddressBindingFlagBitsEXT where
readPrec :: ReadPrec DeviceAddressBindingFlagBitsEXT
readPrec =
String
-> [(DeviceAddressBindingFlagBitsEXT, String)]
-> String
-> (Flags -> DeviceAddressBindingFlagBitsEXT)
-> ReadPrec DeviceAddressBindingFlagBitsEXT
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDeviceAddressBindingFlagBitsEXT
[(DeviceAddressBindingFlagBitsEXT, String)]
showTableDeviceAddressBindingFlagBitsEXT
String
conNameDeviceAddressBindingFlagBitsEXT
Flags -> DeviceAddressBindingFlagBitsEXT
DeviceAddressBindingFlagBitsEXT
newtype DeviceAddressBindingTypeEXT = DeviceAddressBindingTypeEXT Int32
deriving newtype (DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
(DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Bool)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Bool)
-> Eq DeviceAddressBindingTypeEXT
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
$c/= :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
== :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
$c== :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
Eq, Eq DeviceAddressBindingTypeEXT
Eq DeviceAddressBindingTypeEXT
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Ordering)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Bool)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Bool)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Bool)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Bool)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT)
-> (DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT)
-> Ord DeviceAddressBindingTypeEXT
DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Ordering
DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT
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 :: DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT
$cmin :: DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT
max :: DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT
$cmax :: DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT
>= :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
$c>= :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
> :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
$c> :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
<= :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
$c<= :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
< :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
$c< :: DeviceAddressBindingTypeEXT -> DeviceAddressBindingTypeEXT -> Bool
compare :: DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Ordering
$ccompare :: DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> Ordering
Ord, Ptr DeviceAddressBindingTypeEXT -> IO DeviceAddressBindingTypeEXT
Ptr DeviceAddressBindingTypeEXT
-> Int -> IO DeviceAddressBindingTypeEXT
Ptr DeviceAddressBindingTypeEXT
-> Int -> DeviceAddressBindingTypeEXT -> IO ()
Ptr DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> IO ()
DeviceAddressBindingTypeEXT -> Int
(DeviceAddressBindingTypeEXT -> Int)
-> (DeviceAddressBindingTypeEXT -> Int)
-> (Ptr DeviceAddressBindingTypeEXT
-> Int -> IO DeviceAddressBindingTypeEXT)
-> (Ptr DeviceAddressBindingTypeEXT
-> Int -> DeviceAddressBindingTypeEXT -> IO ())
-> (forall b. Ptr b -> Int -> IO DeviceAddressBindingTypeEXT)
-> (forall b. Ptr b -> Int -> DeviceAddressBindingTypeEXT -> IO ())
-> (Ptr DeviceAddressBindingTypeEXT
-> IO DeviceAddressBindingTypeEXT)
-> (Ptr DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> IO ())
-> Storable DeviceAddressBindingTypeEXT
forall b. Ptr b -> Int -> IO DeviceAddressBindingTypeEXT
forall b. Ptr b -> Int -> DeviceAddressBindingTypeEXT -> 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 DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> IO ()
$cpoke :: Ptr DeviceAddressBindingTypeEXT
-> DeviceAddressBindingTypeEXT -> IO ()
peek :: Ptr DeviceAddressBindingTypeEXT -> IO DeviceAddressBindingTypeEXT
$cpeek :: Ptr DeviceAddressBindingTypeEXT -> IO DeviceAddressBindingTypeEXT
pokeByteOff :: forall b. Ptr b -> Int -> DeviceAddressBindingTypeEXT -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> DeviceAddressBindingTypeEXT -> IO ()
peekByteOff :: forall b. Ptr b -> Int -> IO DeviceAddressBindingTypeEXT
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DeviceAddressBindingTypeEXT
pokeElemOff :: Ptr DeviceAddressBindingTypeEXT
-> Int -> DeviceAddressBindingTypeEXT -> IO ()
$cpokeElemOff :: Ptr DeviceAddressBindingTypeEXT
-> Int -> DeviceAddressBindingTypeEXT -> IO ()
peekElemOff :: Ptr DeviceAddressBindingTypeEXT
-> Int -> IO DeviceAddressBindingTypeEXT
$cpeekElemOff :: Ptr DeviceAddressBindingTypeEXT
-> Int -> IO DeviceAddressBindingTypeEXT
alignment :: DeviceAddressBindingTypeEXT -> Int
$calignment :: DeviceAddressBindingTypeEXT -> Int
sizeOf :: DeviceAddressBindingTypeEXT -> Int
$csizeOf :: DeviceAddressBindingTypeEXT -> Int
Storable, DeviceAddressBindingTypeEXT
DeviceAddressBindingTypeEXT -> Zero DeviceAddressBindingTypeEXT
forall a. a -> Zero a
zero :: DeviceAddressBindingTypeEXT
$czero :: DeviceAddressBindingTypeEXT
Zero)
pattern $bDEVICE_ADDRESS_BINDING_TYPE_BIND_EXT :: DeviceAddressBindingTypeEXT
$mDEVICE_ADDRESS_BINDING_TYPE_BIND_EXT :: forall {r}.
DeviceAddressBindingTypeEXT -> (Void# -> r) -> (Void# -> r) -> r
DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT = DeviceAddressBindingTypeEXT 0
pattern $bDEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT :: DeviceAddressBindingTypeEXT
$mDEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT :: forall {r}.
DeviceAddressBindingTypeEXT -> (Void# -> r) -> (Void# -> r) -> r
DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT = DeviceAddressBindingTypeEXT 1
{-# COMPLETE
DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT
, DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT ::
DeviceAddressBindingTypeEXT
#-}
conNameDeviceAddressBindingTypeEXT :: String
conNameDeviceAddressBindingTypeEXT :: String
conNameDeviceAddressBindingTypeEXT = String
"DeviceAddressBindingTypeEXT"
enumPrefixDeviceAddressBindingTypeEXT :: String
enumPrefixDeviceAddressBindingTypeEXT :: String
enumPrefixDeviceAddressBindingTypeEXT = String
"DEVICE_ADDRESS_BINDING_TYPE_"
showTableDeviceAddressBindingTypeEXT :: [(DeviceAddressBindingTypeEXT, String)]
showTableDeviceAddressBindingTypeEXT :: [(DeviceAddressBindingTypeEXT, String)]
showTableDeviceAddressBindingTypeEXT =
[
( DeviceAddressBindingTypeEXT
DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT
, String
"BIND_EXT"
)
,
( DeviceAddressBindingTypeEXT
DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT
, String
"UNBIND_EXT"
)
]
instance Show DeviceAddressBindingTypeEXT where
showsPrec :: Int -> DeviceAddressBindingTypeEXT -> ShowS
showsPrec =
String
-> [(DeviceAddressBindingTypeEXT, String)]
-> String
-> (DeviceAddressBindingTypeEXT -> Int32)
-> (Int32 -> ShowS)
-> Int
-> DeviceAddressBindingTypeEXT
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDeviceAddressBindingTypeEXT
[(DeviceAddressBindingTypeEXT, String)]
showTableDeviceAddressBindingTypeEXT
String
conNameDeviceAddressBindingTypeEXT
(\(DeviceAddressBindingTypeEXT Int32
x) -> Int32
x)
(Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read DeviceAddressBindingTypeEXT where
readPrec :: ReadPrec DeviceAddressBindingTypeEXT
readPrec =
String
-> [(DeviceAddressBindingTypeEXT, String)]
-> String
-> (Int32 -> DeviceAddressBindingTypeEXT)
-> ReadPrec DeviceAddressBindingTypeEXT
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDeviceAddressBindingTypeEXT
[(DeviceAddressBindingTypeEXT, String)]
showTableDeviceAddressBindingTypeEXT
String
conNameDeviceAddressBindingTypeEXT
Int32 -> DeviceAddressBindingTypeEXT
DeviceAddressBindingTypeEXT
type EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION = 1
pattern EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION :: forall a . Integral a => a
pattern $bEXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION :: forall a. Integral a => a
$mEXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> (Void# -> r) -> (Void# -> r) -> r
EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION = 1
type EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME = "VK_EXT_device_address_binding_report"
pattern EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $bEXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
$mEXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> (Void# -> r) -> (Void# -> r) -> r
EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME = "VK_EXT_device_address_binding_report"