{-# language CPP #-}
module Vulkan.Core14 ( pattern API_VERSION_1_4
, PhysicalDeviceVulkan14Features(..)
, PhysicalDeviceVulkan14Properties(..)
, StructureType(..)
, module Vulkan.Core14.Enums
, module Vulkan.Core14.PromotedStreamingTransfers'
, module Vulkan.Core14.Promoted_From_VK_EXT_pipeline_protected_accessAdditionalFunctionality'
, module Vulkan.Core14.Promoted_From_VK_EXT_pipeline_robustnessAdditionalFunctionality'
, module Vulkan.Core14.Promoted_From_VK_KHR_dynamic_rendering_local_readRoadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_global_priority
, module Vulkan.Core14.Promoted_From_VK_KHR_index_type_uint8Roadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_line_rasterizationRoadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_maintenance5Roadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_maintenance6AdditionalFunctionality'
, module Vulkan.Core14.Promoted_From_VK_KHR_map_memory2Roadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_push_descriptorRoadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_shader_expect_assumeRoadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_shader_float_controls2Roadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_shader_subgroup_rotateRoadmap
, module Vulkan.Core14.Promoted_From_VK_KHR_vertex_attribute_divisorRoadmap
) where
import Vulkan.Core14.Enums
import Vulkan.Core14.PromotedStreamingTransfers'
import Vulkan.Core14.Promoted_From_VK_EXT_pipeline_protected_accessAdditionalFunctionality'
import Vulkan.Core14.Promoted_From_VK_EXT_pipeline_robustnessAdditionalFunctionality'
import Vulkan.Core14.Promoted_From_VK_KHR_dynamic_rendering_local_readRoadmap
import Vulkan.Core14.Promoted_From_VK_KHR_global_priority
import Vulkan.Core14.Promoted_From_VK_KHR_index_type_uint8Roadmap
import Vulkan.Core14.Promoted_From_VK_KHR_line_rasterizationRoadmap
import Vulkan.Core14.Promoted_From_VK_KHR_maintenance5Roadmap
import Vulkan.Core14.Promoted_From_VK_KHR_maintenance6AdditionalFunctionality'
import Vulkan.Core14.Promoted_From_VK_KHR_map_memory2Roadmap
import Vulkan.Core14.Promoted_From_VK_KHR_push_descriptorRoadmap
import Vulkan.Core14.Promoted_From_VK_KHR_shader_expect_assumeRoadmap
import Vulkan.Core14.Promoted_From_VK_KHR_shader_float_controls2Roadmap
import Vulkan.Core14.Promoted_From_VK_KHR_shader_subgroup_rotateRoadmap
import Vulkan.Core14.Promoted_From_VK_KHR_vertex_attribute_divisorRoadmap
import Vulkan.CStruct.Utils (FixedArray)
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.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.Word (Word32)
import Data.Word (Word8)
import Data.ByteString (ByteString)
import Data.Kind (Type)
import Vulkan.Core10.FundamentalTypes (bool32ToBool)
import Vulkan.Core10.FundamentalTypes (boolToBool32)
import Vulkan.CStruct.Utils (peekByteStringFromSizedVectorPtr)
import Vulkan.CStruct.Utils (pokeFixedLengthByteString)
import Vulkan.Core10.FundamentalTypes (Bool32)
import Vulkan.Core10.Enums.ImageLayout (ImageLayout)
import Vulkan.Core14.Enums.PipelineRobustnessBufferBehavior (PipelineRobustnessBufferBehavior)
import Vulkan.Core14.Enums.PipelineRobustnessImageBehavior (PipelineRobustnessImageBehavior)
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.Core10.APIConstants (UUID_SIZE)
import Vulkan.Version (pattern MAKE_API_VERSION)
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES))
import Vulkan.Core10.Enums.StructureType (StructureType(..))
pattern API_VERSION_1_4 :: Word32
pattern $mAPI_VERSION_1_4 :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
$bAPI_VERSION_1_4 :: Word32
API_VERSION_1_4 = MAKE_API_VERSION 1 4 0
data PhysicalDeviceVulkan14Features = PhysicalDeviceVulkan14Features
{
PhysicalDeviceVulkan14Features -> Bool
globalPriorityQuery :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
shaderSubgroupRotate :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
shaderSubgroupRotateClustered :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
shaderFloatControls2 :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
shaderExpectAssume :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
rectangularLines :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
bresenhamLines :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
smoothLines :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
stippledRectangularLines :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
stippledBresenhamLines :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
stippledSmoothLines :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
vertexAttributeInstanceRateDivisor :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
vertexAttributeInstanceRateZeroDivisor :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
indexTypeUint8 :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
dynamicRenderingLocalRead :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
maintenance5 :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
maintenance6 :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
pipelineProtectedAccess :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
pipelineRobustness :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
hostImageCopy :: Bool
,
PhysicalDeviceVulkan14Features -> Bool
pushDescriptor :: Bool
}
deriving (Typeable, PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool
(PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool)
-> (PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool)
-> Eq PhysicalDeviceVulkan14Features
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool
== :: PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool
$c/= :: PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool
/= :: PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceVulkan14Features)
#endif
deriving instance Show PhysicalDeviceVulkan14Features
instance ToCStruct PhysicalDeviceVulkan14Features where
withCStruct :: forall b.
PhysicalDeviceVulkan14Features
-> (Ptr PhysicalDeviceVulkan14Features -> IO b) -> IO b
withCStruct PhysicalDeviceVulkan14Features
x Ptr PhysicalDeviceVulkan14Features -> IO b
f = Int -> (Ptr PhysicalDeviceVulkan14Features -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
104 ((Ptr PhysicalDeviceVulkan14Features -> IO b) -> IO b)
-> (Ptr PhysicalDeviceVulkan14Features -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceVulkan14Features
p -> Ptr PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> IO b -> IO b
forall b.
Ptr PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceVulkan14Features
p PhysicalDeviceVulkan14Features
x (Ptr PhysicalDeviceVulkan14Features -> IO b
f Ptr PhysicalDeviceVulkan14Features
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceVulkan14Features
p PhysicalDeviceVulkan14Features{Bool
globalPriorityQuery :: PhysicalDeviceVulkan14Features -> Bool
shaderSubgroupRotate :: PhysicalDeviceVulkan14Features -> Bool
shaderSubgroupRotateClustered :: PhysicalDeviceVulkan14Features -> Bool
shaderFloatControls2 :: PhysicalDeviceVulkan14Features -> Bool
shaderExpectAssume :: PhysicalDeviceVulkan14Features -> Bool
rectangularLines :: PhysicalDeviceVulkan14Features -> Bool
bresenhamLines :: PhysicalDeviceVulkan14Features -> Bool
smoothLines :: PhysicalDeviceVulkan14Features -> Bool
stippledRectangularLines :: PhysicalDeviceVulkan14Features -> Bool
stippledBresenhamLines :: PhysicalDeviceVulkan14Features -> Bool
stippledSmoothLines :: PhysicalDeviceVulkan14Features -> Bool
vertexAttributeInstanceRateDivisor :: PhysicalDeviceVulkan14Features -> Bool
vertexAttributeInstanceRateZeroDivisor :: PhysicalDeviceVulkan14Features -> Bool
indexTypeUint8 :: PhysicalDeviceVulkan14Features -> Bool
dynamicRenderingLocalRead :: PhysicalDeviceVulkan14Features -> Bool
maintenance5 :: PhysicalDeviceVulkan14Features -> Bool
maintenance6 :: PhysicalDeviceVulkan14Features -> Bool
pipelineProtectedAccess :: PhysicalDeviceVulkan14Features -> Bool
pipelineRobustness :: PhysicalDeviceVulkan14Features -> Bool
hostImageCopy :: PhysicalDeviceVulkan14Features -> Bool
pushDescriptor :: PhysicalDeviceVulkan14Features -> Bool
globalPriorityQuery :: Bool
shaderSubgroupRotate :: Bool
shaderSubgroupRotateClustered :: Bool
shaderFloatControls2 :: Bool
shaderExpectAssume :: Bool
rectangularLines :: Bool
bresenhamLines :: Bool
smoothLines :: Bool
stippledRectangularLines :: Bool
stippledBresenhamLines :: Bool
stippledSmoothLines :: Bool
vertexAttributeInstanceRateDivisor :: Bool
vertexAttributeInstanceRateZeroDivisor :: Bool
indexTypeUint8 :: Bool
dynamicRenderingLocalRead :: Bool
maintenance5 :: Bool
maintenance6 :: Bool
pipelineProtectedAccess :: Bool
pipelineRobustness :: Bool
hostImageCopy :: Bool
pushDescriptor :: Bool
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> 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 PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
globalPriorityQuery))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSubgroupRotate))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderSubgroupRotateClustered))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderFloatControls2))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
shaderExpectAssume))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
rectangularLines))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
bresenhamLines))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
smoothLines))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
stippledRectangularLines))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
stippledBresenhamLines))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
stippledSmoothLines))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
vertexAttributeInstanceRateDivisor))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
64 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
vertexAttributeInstanceRateZeroDivisor))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
68 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
indexTypeUint8))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
72 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dynamicRenderingLocalRead))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
76 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
maintenance5))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
80 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
maintenance6))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
84 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
pipelineProtectedAccess))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
88 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
pipelineRobustness))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
92 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
hostImageCopy))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
96 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
pushDescriptor))
IO b
f
cStructSize :: Int
cStructSize = Int
104
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr PhysicalDeviceVulkan14Features -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceVulkan14Features
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> 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 PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> 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))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
64 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
68 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
72 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
76 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
80 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
84 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
88 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
92 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
96 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceVulkan14Features where
peekCStruct :: Ptr PhysicalDeviceVulkan14Features
-> IO PhysicalDeviceVulkan14Features
peekCStruct Ptr PhysicalDeviceVulkan14Features
p = do
globalPriorityQuery <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceVulkan14Features
p Ptr PhysicalDeviceVulkan14Features -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32))
shaderSubgroupRotate <- peek @Bool32 ((p `plusPtr` 20 :: Ptr Bool32))
shaderSubgroupRotateClustered <- peek @Bool32 ((p `plusPtr` 24 :: Ptr Bool32))
shaderFloatControls2 <- peek @Bool32 ((p `plusPtr` 28 :: Ptr Bool32))
shaderExpectAssume <- peek @Bool32 ((p `plusPtr` 32 :: Ptr Bool32))
rectangularLines <- peek @Bool32 ((p `plusPtr` 36 :: Ptr Bool32))
bresenhamLines <- peek @Bool32 ((p `plusPtr` 40 :: Ptr Bool32))
smoothLines <- peek @Bool32 ((p `plusPtr` 44 :: Ptr Bool32))
stippledRectangularLines <- peek @Bool32 ((p `plusPtr` 48 :: Ptr Bool32))
stippledBresenhamLines <- peek @Bool32 ((p `plusPtr` 52 :: Ptr Bool32))
stippledSmoothLines <- peek @Bool32 ((p `plusPtr` 56 :: Ptr Bool32))
vertexAttributeInstanceRateDivisor <- peek @Bool32 ((p `plusPtr` 60 :: Ptr Bool32))
vertexAttributeInstanceRateZeroDivisor <- peek @Bool32 ((p `plusPtr` 64 :: Ptr Bool32))
indexTypeUint8 <- peek @Bool32 ((p `plusPtr` 68 :: Ptr Bool32))
dynamicRenderingLocalRead <- peek @Bool32 ((p `plusPtr` 72 :: Ptr Bool32))
maintenance5 <- peek @Bool32 ((p `plusPtr` 76 :: Ptr Bool32))
maintenance6 <- peek @Bool32 ((p `plusPtr` 80 :: Ptr Bool32))
pipelineProtectedAccess <- peek @Bool32 ((p `plusPtr` 84 :: Ptr Bool32))
pipelineRobustness <- peek @Bool32 ((p `plusPtr` 88 :: Ptr Bool32))
hostImageCopy <- peek @Bool32 ((p `plusPtr` 92 :: Ptr Bool32))
pushDescriptor <- peek @Bool32 ((p `plusPtr` 96 :: Ptr Bool32))
pure $ PhysicalDeviceVulkan14Features
(bool32ToBool globalPriorityQuery)
(bool32ToBool shaderSubgroupRotate)
(bool32ToBool shaderSubgroupRotateClustered)
(bool32ToBool shaderFloatControls2)
(bool32ToBool shaderExpectAssume)
(bool32ToBool rectangularLines)
(bool32ToBool bresenhamLines)
(bool32ToBool smoothLines)
(bool32ToBool stippledRectangularLines)
(bool32ToBool stippledBresenhamLines)
(bool32ToBool stippledSmoothLines)
(bool32ToBool vertexAttributeInstanceRateDivisor)
(bool32ToBool vertexAttributeInstanceRateZeroDivisor)
(bool32ToBool indexTypeUint8)
(bool32ToBool dynamicRenderingLocalRead)
(bool32ToBool maintenance5)
(bool32ToBool maintenance6)
(bool32ToBool pipelineProtectedAccess)
(bool32ToBool pipelineRobustness)
(bool32ToBool hostImageCopy)
(bool32ToBool pushDescriptor)
instance Storable PhysicalDeviceVulkan14Features where
sizeOf :: PhysicalDeviceVulkan14Features -> Int
sizeOf ~PhysicalDeviceVulkan14Features
_ = Int
104
alignment :: PhysicalDeviceVulkan14Features -> Int
alignment ~PhysicalDeviceVulkan14Features
_ = Int
8
peek :: Ptr PhysicalDeviceVulkan14Features
-> IO PhysicalDeviceVulkan14Features
peek = Ptr PhysicalDeviceVulkan14Features
-> IO PhysicalDeviceVulkan14Features
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> IO ()
poke Ptr PhysicalDeviceVulkan14Features
ptr PhysicalDeviceVulkan14Features
poked = Ptr PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> IO () -> IO ()
forall b.
Ptr PhysicalDeviceVulkan14Features
-> PhysicalDeviceVulkan14Features -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceVulkan14Features
ptr PhysicalDeviceVulkan14Features
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceVulkan14Features where
zero :: PhysicalDeviceVulkan14Features
zero = Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> PhysicalDeviceVulkan14Features
PhysicalDeviceVulkan14Features
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
data PhysicalDeviceVulkan14Properties = PhysicalDeviceVulkan14Properties
{
PhysicalDeviceVulkan14Properties -> Word32
lineSubPixelPrecisionBits :: Word32
,
PhysicalDeviceVulkan14Properties -> Word32
maxVertexAttribDivisor :: Word32
,
PhysicalDeviceVulkan14Properties -> Bool
supportsNonZeroFirstInstance :: Bool
,
PhysicalDeviceVulkan14Properties -> Word32
maxPushDescriptors :: Word32
,
PhysicalDeviceVulkan14Properties -> Bool
dynamicRenderingLocalReadDepthStencilAttachments :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
dynamicRenderingLocalReadMultisampledAttachments :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
earlyFragmentMultisampleCoverageAfterSampleCounting :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
earlyFragmentSampleMaskTestBeforeSampleCounting :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
depthStencilSwizzleOneSupport :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
polygonModePointSize :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
nonStrictSinglePixelWideLinesUseParallelogram :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
nonStrictWideLinesUseParallelogram :: Bool
,
PhysicalDeviceVulkan14Properties -> Bool
blockTexelViewCompatibleMultipleLayers :: Bool
,
PhysicalDeviceVulkan14Properties -> Word32
maxCombinedImageSamplerDescriptorCount :: Word32
,
PhysicalDeviceVulkan14Properties -> Bool
fragmentShadingRateClampCombinerInputs :: Bool
,
PhysicalDeviceVulkan14Properties
-> PipelineRobustnessBufferBehavior
defaultRobustnessStorageBuffers :: PipelineRobustnessBufferBehavior
,
PhysicalDeviceVulkan14Properties
-> PipelineRobustnessBufferBehavior
defaultRobustnessUniformBuffers :: PipelineRobustnessBufferBehavior
,
PhysicalDeviceVulkan14Properties
-> PipelineRobustnessBufferBehavior
defaultRobustnessVertexInputs :: PipelineRobustnessBufferBehavior
,
PhysicalDeviceVulkan14Properties -> PipelineRobustnessImageBehavior
defaultRobustnessImages :: PipelineRobustnessImageBehavior
,
PhysicalDeviceVulkan14Properties -> Word32
copySrcLayoutCount :: Word32
,
PhysicalDeviceVulkan14Properties -> Ptr ImageLayout
copySrcLayouts :: Ptr ImageLayout
,
PhysicalDeviceVulkan14Properties -> Word32
copyDstLayoutCount :: Word32
,
PhysicalDeviceVulkan14Properties -> Ptr ImageLayout
copyDstLayouts :: Ptr ImageLayout
,
PhysicalDeviceVulkan14Properties -> ByteString
optimalTilingLayoutUUID :: ByteString
,
PhysicalDeviceVulkan14Properties -> Bool
identicalMemoryTypeRequirements :: Bool
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceVulkan14Properties)
#endif
deriving instance Show PhysicalDeviceVulkan14Properties
instance ToCStruct PhysicalDeviceVulkan14Properties where
withCStruct :: forall b.
PhysicalDeviceVulkan14Properties
-> (Ptr PhysicalDeviceVulkan14Properties -> IO b) -> IO b
withCStruct PhysicalDeviceVulkan14Properties
x Ptr PhysicalDeviceVulkan14Properties -> IO b
f = Int -> (Ptr PhysicalDeviceVulkan14Properties -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
144 ((Ptr PhysicalDeviceVulkan14Properties -> IO b) -> IO b)
-> (Ptr PhysicalDeviceVulkan14Properties -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceVulkan14Properties
p -> Ptr PhysicalDeviceVulkan14Properties
-> PhysicalDeviceVulkan14Properties -> IO b -> IO b
forall b.
Ptr PhysicalDeviceVulkan14Properties
-> PhysicalDeviceVulkan14Properties -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceVulkan14Properties
p PhysicalDeviceVulkan14Properties
x (Ptr PhysicalDeviceVulkan14Properties -> IO b
f Ptr PhysicalDeviceVulkan14Properties
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceVulkan14Properties
-> PhysicalDeviceVulkan14Properties -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceVulkan14Properties
p PhysicalDeviceVulkan14Properties{Bool
Word32
Ptr ImageLayout
ByteString
PipelineRobustnessImageBehavior
PipelineRobustnessBufferBehavior
lineSubPixelPrecisionBits :: PhysicalDeviceVulkan14Properties -> Word32
maxVertexAttribDivisor :: PhysicalDeviceVulkan14Properties -> Word32
supportsNonZeroFirstInstance :: PhysicalDeviceVulkan14Properties -> Bool
maxPushDescriptors :: PhysicalDeviceVulkan14Properties -> Word32
dynamicRenderingLocalReadDepthStencilAttachments :: PhysicalDeviceVulkan14Properties -> Bool
dynamicRenderingLocalReadMultisampledAttachments :: PhysicalDeviceVulkan14Properties -> Bool
earlyFragmentMultisampleCoverageAfterSampleCounting :: PhysicalDeviceVulkan14Properties -> Bool
earlyFragmentSampleMaskTestBeforeSampleCounting :: PhysicalDeviceVulkan14Properties -> Bool
depthStencilSwizzleOneSupport :: PhysicalDeviceVulkan14Properties -> Bool
polygonModePointSize :: PhysicalDeviceVulkan14Properties -> Bool
nonStrictSinglePixelWideLinesUseParallelogram :: PhysicalDeviceVulkan14Properties -> Bool
nonStrictWideLinesUseParallelogram :: PhysicalDeviceVulkan14Properties -> Bool
blockTexelViewCompatibleMultipleLayers :: PhysicalDeviceVulkan14Properties -> Bool
maxCombinedImageSamplerDescriptorCount :: PhysicalDeviceVulkan14Properties -> Word32
fragmentShadingRateClampCombinerInputs :: PhysicalDeviceVulkan14Properties -> Bool
defaultRobustnessStorageBuffers :: PhysicalDeviceVulkan14Properties
-> PipelineRobustnessBufferBehavior
defaultRobustnessUniformBuffers :: PhysicalDeviceVulkan14Properties
-> PipelineRobustnessBufferBehavior
defaultRobustnessVertexInputs :: PhysicalDeviceVulkan14Properties
-> PipelineRobustnessBufferBehavior
defaultRobustnessImages :: PhysicalDeviceVulkan14Properties -> PipelineRobustnessImageBehavior
copySrcLayoutCount :: PhysicalDeviceVulkan14Properties -> Word32
copySrcLayouts :: PhysicalDeviceVulkan14Properties -> Ptr ImageLayout
copyDstLayoutCount :: PhysicalDeviceVulkan14Properties -> Word32
copyDstLayouts :: PhysicalDeviceVulkan14Properties -> Ptr ImageLayout
optimalTilingLayoutUUID :: PhysicalDeviceVulkan14Properties -> ByteString
identicalMemoryTypeRequirements :: PhysicalDeviceVulkan14Properties -> Bool
lineSubPixelPrecisionBits :: Word32
maxVertexAttribDivisor :: Word32
supportsNonZeroFirstInstance :: Bool
maxPushDescriptors :: Word32
dynamicRenderingLocalReadDepthStencilAttachments :: Bool
dynamicRenderingLocalReadMultisampledAttachments :: Bool
earlyFragmentMultisampleCoverageAfterSampleCounting :: Bool
earlyFragmentSampleMaskTestBeforeSampleCounting :: Bool
depthStencilSwizzleOneSupport :: Bool
polygonModePointSize :: Bool
nonStrictSinglePixelWideLinesUseParallelogram :: Bool
nonStrictWideLinesUseParallelogram :: Bool
blockTexelViewCompatibleMultipleLayers :: Bool
maxCombinedImageSamplerDescriptorCount :: Word32
fragmentShadingRateClampCombinerInputs :: Bool
defaultRobustnessStorageBuffers :: PipelineRobustnessBufferBehavior
defaultRobustnessUniformBuffers :: PipelineRobustnessBufferBehavior
defaultRobustnessVertexInputs :: PipelineRobustnessBufferBehavior
defaultRobustnessImages :: PipelineRobustnessImageBehavior
copySrcLayoutCount :: Word32
copySrcLayouts :: Ptr ImageLayout
copyDstLayoutCount :: Word32
copyDstLayouts :: Ptr ImageLayout
optimalTilingLayoutUUID :: ByteString
identicalMemoryTypeRequirements :: Bool
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
lineSubPixelPrecisionBits)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Word32)) (Word32
maxVertexAttribDivisor)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
supportsNonZeroFirstInstance))
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Word32)) (Word32
maxPushDescriptors)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dynamicRenderingLocalReadDepthStencilAttachments))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dynamicRenderingLocalReadMultisampledAttachments))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
earlyFragmentMultisampleCoverageAfterSampleCounting))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
earlyFragmentSampleMaskTestBeforeSampleCounting))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
depthStencilSwizzleOneSupport))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
polygonModePointSize))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
nonStrictSinglePixelWideLinesUseParallelogram))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
nonStrictWideLinesUseParallelogram))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
64 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
blockTexelViewCompatibleMultipleLayers))
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
68 :: Ptr Word32)) (Word32
maxCombinedImageSamplerDescriptorCount)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
72 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
fragmentShadingRateClampCombinerInputs))
Ptr PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessBufferBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
76 :: Ptr PipelineRobustnessBufferBehavior)) (PipelineRobustnessBufferBehavior
defaultRobustnessStorageBuffers)
Ptr PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessBufferBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
80 :: Ptr PipelineRobustnessBufferBehavior)) (PipelineRobustnessBufferBehavior
defaultRobustnessUniformBuffers)
Ptr PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessBufferBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
84 :: Ptr PipelineRobustnessBufferBehavior)) (PipelineRobustnessBufferBehavior
defaultRobustnessVertexInputs)
Ptr PipelineRobustnessImageBehavior
-> PipelineRobustnessImageBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessImageBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
88 :: Ptr PipelineRobustnessImageBehavior)) (PipelineRobustnessImageBehavior
defaultRobustnessImages)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
92 :: Ptr Word32)) (Word32
copySrcLayoutCount)
Ptr (Ptr ImageLayout) -> Ptr ImageLayout -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr (Ptr ImageLayout)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
96 :: Ptr (Ptr ImageLayout))) (Ptr ImageLayout
copySrcLayouts)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
104 :: Ptr Word32)) (Word32
copyDstLayoutCount)
Ptr (Ptr ImageLayout) -> Ptr ImageLayout -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr (Ptr ImageLayout)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
112 :: Ptr (Ptr ImageLayout))) (Ptr ImageLayout
copyDstLayouts)
Ptr (FixedArray UUID_SIZE Word8) -> ByteString -> IO ()
forall (n :: Nat).
KnownNat n =>
Ptr (FixedArray n Word8) -> ByteString -> IO ()
pokeFixedLengthByteString ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr (FixedArray UUID_SIZE Word8)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
120 :: Ptr (FixedArray UUID_SIZE Word8))) (ByteString
optimalTilingLayoutUUID)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
136 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
identicalMemoryTypeRequirements))
IO b
f
cStructSize :: Int
cStructSize = Int
144
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr PhysicalDeviceVulkan14Properties -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceVulkan14Properties
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
36 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
44 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
48 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
52 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
56 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
60 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
64 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
68 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
72 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
Ptr PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessBufferBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
76 :: Ptr PipelineRobustnessBufferBehavior)) (PipelineRobustnessBufferBehavior
forall a. Zero a => a
zero)
Ptr PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessBufferBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
80 :: Ptr PipelineRobustnessBufferBehavior)) (PipelineRobustnessBufferBehavior
forall a. Zero a => a
zero)
Ptr PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessBufferBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
84 :: Ptr PipelineRobustnessBufferBehavior)) (PipelineRobustnessBufferBehavior
forall a. Zero a => a
zero)
Ptr PipelineRobustnessImageBehavior
-> PipelineRobustnessImageBehavior -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties
-> Int -> Ptr PipelineRobustnessImageBehavior
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
88 :: Ptr PipelineRobustnessImageBehavior)) (PipelineRobustnessImageBehavior
forall a. Zero a => a
zero)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
136 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceVulkan14Properties where
peekCStruct :: Ptr PhysicalDeviceVulkan14Properties
-> IO PhysicalDeviceVulkan14Properties
peekCStruct Ptr PhysicalDeviceVulkan14Properties
p = do
lineSubPixelPrecisionBits <- forall a. Storable a => Ptr a -> IO a
peek @Word32 ((Ptr PhysicalDeviceVulkan14Properties
p Ptr PhysicalDeviceVulkan14Properties -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32))
maxVertexAttribDivisor <- peek @Word32 ((p `plusPtr` 20 :: Ptr Word32))
supportsNonZeroFirstInstance <- peek @Bool32 ((p `plusPtr` 24 :: Ptr Bool32))
maxPushDescriptors <- peek @Word32 ((p `plusPtr` 28 :: Ptr Word32))
dynamicRenderingLocalReadDepthStencilAttachments <- peek @Bool32 ((p `plusPtr` 32 :: Ptr Bool32))
dynamicRenderingLocalReadMultisampledAttachments <- peek @Bool32 ((p `plusPtr` 36 :: Ptr Bool32))
earlyFragmentMultisampleCoverageAfterSampleCounting <- peek @Bool32 ((p `plusPtr` 40 :: Ptr Bool32))
earlyFragmentSampleMaskTestBeforeSampleCounting <- peek @Bool32 ((p `plusPtr` 44 :: Ptr Bool32))
depthStencilSwizzleOneSupport <- peek @Bool32 ((p `plusPtr` 48 :: Ptr Bool32))
polygonModePointSize <- peek @Bool32 ((p `plusPtr` 52 :: Ptr Bool32))
nonStrictSinglePixelWideLinesUseParallelogram <- peek @Bool32 ((p `plusPtr` 56 :: Ptr Bool32))
nonStrictWideLinesUseParallelogram <- peek @Bool32 ((p `plusPtr` 60 :: Ptr Bool32))
blockTexelViewCompatibleMultipleLayers <- peek @Bool32 ((p `plusPtr` 64 :: Ptr Bool32))
maxCombinedImageSamplerDescriptorCount <- peek @Word32 ((p `plusPtr` 68 :: Ptr Word32))
fragmentShadingRateClampCombinerInputs <- peek @Bool32 ((p `plusPtr` 72 :: Ptr Bool32))
defaultRobustnessStorageBuffers <- peek @PipelineRobustnessBufferBehavior ((p `plusPtr` 76 :: Ptr PipelineRobustnessBufferBehavior))
defaultRobustnessUniformBuffers <- peek @PipelineRobustnessBufferBehavior ((p `plusPtr` 80 :: Ptr PipelineRobustnessBufferBehavior))
defaultRobustnessVertexInputs <- peek @PipelineRobustnessBufferBehavior ((p `plusPtr` 84 :: Ptr PipelineRobustnessBufferBehavior))
defaultRobustnessImages <- peek @PipelineRobustnessImageBehavior ((p `plusPtr` 88 :: Ptr PipelineRobustnessImageBehavior))
copySrcLayoutCount <- peek @Word32 ((p `plusPtr` 92 :: Ptr Word32))
pCopySrcLayouts <- peek @(Ptr ImageLayout) ((p `plusPtr` 96 :: Ptr (Ptr ImageLayout)))
copyDstLayoutCount <- peek @Word32 ((p `plusPtr` 104 :: Ptr Word32))
pCopyDstLayouts <- peek @(Ptr ImageLayout) ((p `plusPtr` 112 :: Ptr (Ptr ImageLayout)))
optimalTilingLayoutUUID <- peekByteStringFromSizedVectorPtr ((p `plusPtr` 120 :: Ptr (FixedArray UUID_SIZE Word8)))
identicalMemoryTypeRequirements <- peek @Bool32 ((p `plusPtr` 136 :: Ptr Bool32))
pure $ PhysicalDeviceVulkan14Properties
lineSubPixelPrecisionBits
maxVertexAttribDivisor
(bool32ToBool supportsNonZeroFirstInstance)
maxPushDescriptors
(bool32ToBool dynamicRenderingLocalReadDepthStencilAttachments)
(bool32ToBool dynamicRenderingLocalReadMultisampledAttachments)
(bool32ToBool earlyFragmentMultisampleCoverageAfterSampleCounting)
(bool32ToBool earlyFragmentSampleMaskTestBeforeSampleCounting)
(bool32ToBool depthStencilSwizzleOneSupport)
(bool32ToBool polygonModePointSize)
(bool32ToBool nonStrictSinglePixelWideLinesUseParallelogram)
(bool32ToBool nonStrictWideLinesUseParallelogram)
(bool32ToBool blockTexelViewCompatibleMultipleLayers)
maxCombinedImageSamplerDescriptorCount
(bool32ToBool fragmentShadingRateClampCombinerInputs)
defaultRobustnessStorageBuffers
defaultRobustnessUniformBuffers
defaultRobustnessVertexInputs
defaultRobustnessImages
copySrcLayoutCount
pCopySrcLayouts
copyDstLayoutCount
pCopyDstLayouts
optimalTilingLayoutUUID
(bool32ToBool identicalMemoryTypeRequirements)
instance Storable PhysicalDeviceVulkan14Properties where
sizeOf :: PhysicalDeviceVulkan14Properties -> Int
sizeOf ~PhysicalDeviceVulkan14Properties
_ = Int
144
alignment :: PhysicalDeviceVulkan14Properties -> Int
alignment ~PhysicalDeviceVulkan14Properties
_ = Int
8
peek :: Ptr PhysicalDeviceVulkan14Properties
-> IO PhysicalDeviceVulkan14Properties
peek = Ptr PhysicalDeviceVulkan14Properties
-> IO PhysicalDeviceVulkan14Properties
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceVulkan14Properties
-> PhysicalDeviceVulkan14Properties -> IO ()
poke Ptr PhysicalDeviceVulkan14Properties
ptr PhysicalDeviceVulkan14Properties
poked = Ptr PhysicalDeviceVulkan14Properties
-> PhysicalDeviceVulkan14Properties -> IO () -> IO ()
forall b.
Ptr PhysicalDeviceVulkan14Properties
-> PhysicalDeviceVulkan14Properties -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceVulkan14Properties
ptr PhysicalDeviceVulkan14Properties
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceVulkan14Properties where
zero :: PhysicalDeviceVulkan14Properties
zero = Word32
-> Word32
-> Bool
-> Word32
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Word32
-> Bool
-> PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior
-> PipelineRobustnessBufferBehavior
-> PipelineRobustnessImageBehavior
-> Word32
-> Ptr ImageLayout
-> Word32
-> Ptr ImageLayout
-> ByteString
-> Bool
-> PhysicalDeviceVulkan14Properties
PhysicalDeviceVulkan14Properties
Word32
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
PipelineRobustnessBufferBehavior
forall a. Zero a => a
zero
PipelineRobustnessBufferBehavior
forall a. Zero a => a
zero
PipelineRobustnessBufferBehavior
forall a. Zero a => a
zero
PipelineRobustnessImageBehavior
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Ptr ImageLayout
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Ptr ImageLayout
forall a. Zero a => a
zero
ByteString
forall a. Monoid a => a
mempty
Bool
forall a. Zero a => a
zero