{-# language CPP #-}
module Vulkan.Extensions.VK_EXT_shader_atomic_float2 ( PhysicalDeviceShaderAtomicFloat2FeaturesEXT(..)
, EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION
, pattern EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION
, EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME
, pattern EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME
) where
import Foreign.Marshal.Alloc (allocaBytes)
import Foreign.Ptr (nullPtr)
import Foreign.Ptr (plusPtr)
import Vulkan.CStruct (FromCStruct)
import Vulkan.CStruct (FromCStruct(..))
import Vulkan.CStruct (ToCStruct)
import Vulkan.CStruct (ToCStruct(..))
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 Data.Kind (Type)
import Vulkan.Core10.FundamentalTypes (bool32ToBool)
import Vulkan.Core10.FundamentalTypes (boolToBool32)
import Vulkan.Core10.FundamentalTypes (Bool32)
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT))
data PhysicalDeviceShaderAtomicFloat2FeaturesEXT = PhysicalDeviceShaderAtomicFloat2FeaturesEXT
{
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderBufferFloat16Atomics :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderBufferFloat16AtomicAdd :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderBufferFloat16AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderBufferFloat32AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderBufferFloat64AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderSharedFloat16Atomics :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderSharedFloat16AtomicAdd :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderSharedFloat16AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderSharedFloat32AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderSharedFloat64AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
shaderImageFloat32AtomicMinMax :: Bool
,
PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
sparseImageFloat32AtomicMinMax :: Bool
}
deriving (Typeable, PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$c/= :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
== :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$c== :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceShaderAtomicFloat2FeaturesEXT)
#endif
deriving instance Show PhysicalDeviceShaderAtomicFloat2FeaturesEXT
instance ToCStruct PhysicalDeviceShaderAtomicFloat2FeaturesEXT where
withCStruct :: forall b.
PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> (Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> IO b)
-> IO b
withCStruct PhysicalDeviceShaderAtomicFloat2FeaturesEXT
x Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> IO b
f = forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
64 forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p -> forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p PhysicalDeviceShaderAtomicFloat2FeaturesEXT
x (Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> IO b
f Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p PhysicalDeviceShaderAtomicFloat2FeaturesEXT{Bool
sparseImageFloat32AtomicMinMax :: Bool
shaderImageFloat32AtomicMinMax :: Bool
shaderSharedFloat64AtomicMinMax :: Bool
shaderSharedFloat32AtomicMinMax :: Bool
shaderSharedFloat16AtomicMinMax :: Bool
shaderSharedFloat16AtomicAdd :: Bool
shaderSharedFloat16Atomics :: Bool
shaderBufferFloat64AtomicMinMax :: Bool
shaderBufferFloat32AtomicMinMax :: Bool
shaderBufferFloat16AtomicMinMax :: Bool
shaderBufferFloat16AtomicAdd :: Bool
shaderBufferFloat16Atomics :: Bool
$sel:sparseImageFloat32AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderImageFloat32AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderSharedFloat64AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderSharedFloat32AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderSharedFloat16AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderSharedFloat16AtomicAdd:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderSharedFloat16Atomics:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderBufferFloat64AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderBufferFloat32AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderBufferFloat16AtomicMinMax:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderBufferFloat16AtomicAdd:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
$sel:shaderBufferFloat16Atomics:PhysicalDeviceShaderAtomicFloat2FeaturesEXT :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Bool
..} IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
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 PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderBufferFloat16Atomics))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderBufferFloat16AtomicAdd))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderBufferFloat16AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderBufferFloat32AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderBufferFloat64AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSharedFloat16Atomics))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSharedFloat16AtomicAdd))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSharedFloat16AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSharedFloat32AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSharedFloat64AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderImageFloat32AtomicMinMax))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
sparseImageFloat32AtomicMinMax))
IO b
f
cStructSize :: Int
cStructSize = Int
64
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p IO b
f = do
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT)
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
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 PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceShaderAtomicFloat2FeaturesEXT where
peekCStruct :: Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> IO PhysicalDeviceShaderAtomicFloat2FeaturesEXT
peekCStruct Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p = do
Bool32
shaderBufferFloat16Atomics <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32))
Bool32
shaderBufferFloat16AtomicAdd <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32))
Bool32
shaderBufferFloat16AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32))
Bool32
shaderBufferFloat32AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Bool32))
Bool32
shaderBufferFloat64AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32))
Bool32
shaderSharedFloat16Atomics <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32))
Bool32
shaderSharedFloat16AtomicAdd <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32))
Bool32
shaderSharedFloat16AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32))
Bool32
shaderSharedFloat32AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32))
Bool32
shaderSharedFloat64AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32))
Bool32
shaderImageFloat32AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32))
Bool32
sparseImageFloat32AtomicMinMax <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
p forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32))
forall (f :: * -> *) a. Applicative f => a -> f a
pure forall a b. (a -> b) -> a -> b
$ Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT
PhysicalDeviceShaderAtomicFloat2FeaturesEXT
(Bool32 -> Bool
bool32ToBool Bool32
shaderBufferFloat16Atomics)
(Bool32 -> Bool
bool32ToBool Bool32
shaderBufferFloat16AtomicAdd)
(Bool32 -> Bool
bool32ToBool Bool32
shaderBufferFloat16AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
shaderBufferFloat32AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
shaderBufferFloat64AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
shaderSharedFloat16Atomics)
(Bool32 -> Bool
bool32ToBool Bool32
shaderSharedFloat16AtomicAdd)
(Bool32 -> Bool
bool32ToBool Bool32
shaderSharedFloat16AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
shaderSharedFloat32AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
shaderSharedFloat64AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
shaderImageFloat32AtomicMinMax)
(Bool32 -> Bool
bool32ToBool Bool32
sparseImageFloat32AtomicMinMax)
instance Storable PhysicalDeviceShaderAtomicFloat2FeaturesEXT where
sizeOf :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Int
sizeOf ~PhysicalDeviceShaderAtomicFloat2FeaturesEXT
_ = Int
64
alignment :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> Int
alignment ~PhysicalDeviceShaderAtomicFloat2FeaturesEXT
_ = Int
8
peek :: Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> IO PhysicalDeviceShaderAtomicFloat2FeaturesEXT
peek = forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT -> IO ()
poke Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
poked = forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
ptr PhysicalDeviceShaderAtomicFloat2FeaturesEXT
poked (forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceShaderAtomicFloat2FeaturesEXT where
zero :: PhysicalDeviceShaderAtomicFloat2FeaturesEXT
zero = Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> PhysicalDeviceShaderAtomicFloat2FeaturesEXT
PhysicalDeviceShaderAtomicFloat2FeaturesEXT
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
forall a. Zero a => a
zero
type EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION = 1
pattern EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION :: forall a . Integral a => a
pattern $bEXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION :: forall a. Integral a => a
$mEXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION = 1
type EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME = "VK_EXT_shader_atomic_float2"
pattern EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $bEXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
$mEXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME = "VK_EXT_shader_atomic_float2"