{-# language CPP #-}
module Vulkan.Extensions.VK_ARM_data_graph ( createDataGraphPipelinesARM
, createDataGraphPipelineSessionARM
, withDataGraphPipelineSessionARM
, getDataGraphPipelineSessionBindPointRequirementsARM
, getDataGraphPipelineSessionMemoryRequirementsARM
, bindDataGraphPipelineSessionMemoryARM
, destroyDataGraphPipelineSessionARM
, cmdDispatchDataGraphARM
, getDataGraphPipelineAvailablePropertiesARM
, getDataGraphPipelinePropertiesARM
, getPhysicalDeviceQueueFamilyDataGraphPropertiesARM
, getPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM
, PhysicalDeviceDataGraphFeaturesARM(..)
, DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM(..)
, DataGraphPipelineConstantARM(..)
, DataGraphPipelineResourceInfoARM(..)
, DataGraphPipelineCompilerControlCreateInfoARM(..)
, DataGraphPipelineCreateInfoARM(..)
, DataGraphPipelineShaderModuleCreateInfoARM(..)
, DataGraphPipelineSessionCreateInfoARM(..)
, DataGraphPipelineSessionBindPointRequirementsInfoARM(..)
, DataGraphPipelineSessionBindPointRequirementARM(..)
, DataGraphPipelineSessionMemoryRequirementsInfoARM(..)
, BindDataGraphPipelineSessionMemoryInfoARM(..)
, DataGraphPipelineInfoARM(..)
, DataGraphPipelinePropertyQueryResultARM(..)
, DataGraphPipelineIdentifierCreateInfoARM(..)
, DataGraphPipelineDispatchInfoARM(..)
, PhysicalDeviceDataGraphProcessingEngineARM(..)
, PhysicalDeviceDataGraphOperationSupportARM(..)
, QueueFamilyDataGraphPropertiesARM(..)
, PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM(..)
, QueueFamilyDataGraphProcessingEnginePropertiesARM(..)
, DataGraphProcessingEngineCreateInfoARM(..)
, DataGraphPipelineSessionCreateFlagsARM
, DataGraphPipelineSessionCreateFlagBitsARM( DATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM
, ..
)
, DataGraphPipelineSessionBindPointARM( DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM
, ..
)
, DataGraphPipelineSessionBindPointTypeARM( DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM
, ..
)
, DataGraphPipelinePropertyARM( DATA_GRAPH_PIPELINE_PROPERTY_CREATION_LOG_ARM
, DATA_GRAPH_PIPELINE_PROPERTY_IDENTIFIER_ARM
, ..
)
, DataGraphPipelineDispatchFlagsARM
, DataGraphPipelineDispatchFlagBitsARM(..)
, PhysicalDeviceDataGraphProcessingEngineTypeARM( PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM
, PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM
, PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM
, ..
)
, PhysicalDeviceDataGraphOperationTypeARM( PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM
, PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM
, PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM
, ..
)
, ARM_DATA_GRAPH_SPEC_VERSION
, pattern ARM_DATA_GRAPH_SPEC_VERSION
, ARM_DATA_GRAPH_EXTENSION_NAME
, pattern ARM_DATA_GRAPH_EXTENSION_NAME
, DeferredOperationKHR(..)
, DataGraphPipelineSessionARM(..)
, TensorUsageFlagBitsARM(..)
, TensorUsageFlagsARM
, PipelineCreateFlags2KHR
, MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM
, pattern MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM
) where
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Vulkan.CStruct.Utils (FixedArray)
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import Vulkan.Internal.Utils (traceAroundEvent)
import Control.Exception.Base (bracket)
import Control.Monad (unless)
import Control.Monad.IO.Class (liftIO)
import Data.Typeable (eqT)
import Foreign.Marshal.Alloc (allocaBytes)
import Foreign.Marshal.Alloc (callocBytes)
import Foreign.Marshal.Alloc (free)
import Foreign.Marshal.Utils (maybePeek)
import GHC.Base (when)
import GHC.IO (throwIO)
import GHC.Ptr (castPtr)
import GHC.Ptr (nullFunPtr)
import Foreign.Ptr (nullPtr)
import Foreign.Ptr (plusPtr)
import GHC.Show (showString)
import GHC.Show (showsPrec)
import Numeric (showHex)
import Data.ByteString (packCString)
import Data.ByteString (useAsCString)
import Data.Coerce (coerce)
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Cont (evalContT)
import Data.Vector (generateM)
import qualified Data.Vector (imapM_)
import qualified Data.Vector (length)
import qualified Data.Vector (null)
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 Control.Monad.IO.Class (MonadIO)
import Data.String (IsString)
import Data.Type.Equality ((:~:)(Refl))
import Data.Typeable (Typeable)
import Foreign.C.Types (CChar)
import Foreign.C.Types (CSize)
import Foreign.C.Types (CSize(..))
import Foreign.C.Types (CSize(CSize))
import Foreign.Storable (Storable)
import Foreign.Storable (Storable(peek))
import Foreign.Storable (Storable(poke))
import qualified Foreign.Storable (Storable(..))
import GHC.Generics (Generic)
import GHC.IO.Exception (IOErrorType(..))
import GHC.IO.Exception (IOException(..))
import Data.Int (Int32)
import Foreign.Ptr (FunPtr)
import Foreign.Ptr (Ptr)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Data.Word (Word32)
import Data.Word (Word64)
import Data.Word (Word8)
import Data.ByteString (ByteString)
import Data.Kind (Type)
import Control.Monad.Trans.Cont (ContT(..))
import Data.Vector (Vector)
import Vulkan.CStruct.Utils (advancePtrBytes)
import Vulkan.Core10.FundamentalTypes (bool32ToBool)
import Vulkan.Core10.FundamentalTypes (boolToBool32)
import Vulkan.CStruct.Extends (forgetExtensions)
import Vulkan.CStruct.Utils (lowerArrayPtr)
import Vulkan.CStruct.Extends (peekSomeCStruct)
import Vulkan.CStruct.Utils (pokeFixedLengthNullTerminatedByteString)
import Vulkan.CStruct.Extends (pokeSomeCStruct)
import Vulkan.NamedType ((:::))
import Vulkan.Core10.AllocationCallbacks (AllocationCallbacks)
import Vulkan.Core10.FundamentalTypes (Bool32)
import Vulkan.CStruct.Extends (Chain)
import Vulkan.Core10.Handles (CommandBuffer)
import Vulkan.Core10.Handles (CommandBuffer(..))
import Vulkan.Core10.Handles (CommandBuffer(CommandBuffer))
import Vulkan.Core10.Handles (CommandBuffer_T)
import {-# SOURCE #-} Vulkan.Extensions.VK_QCOM_data_graph_model (DataGraphPipelineBuiltinModelCreateInfoQCOM)
import Vulkan.Extensions.Handles (DataGraphPipelineSessionARM)
import Vulkan.Extensions.Handles (DataGraphPipelineSessionARM(..))
import Vulkan.Extensions.Handles (DeferredOperationKHR)
import Vulkan.Extensions.Handles (DeferredOperationKHR(..))
import Vulkan.Core10.Handles (Device)
import Vulkan.Core10.Handles (Device(..))
import Vulkan.Core10.Handles (Device(Device))
import Vulkan.Dynamic (DeviceCmds(pVkBindDataGraphPipelineSessionMemoryARM))
import Vulkan.Dynamic (DeviceCmds(pVkCmdDispatchDataGraphARM))
import Vulkan.Dynamic (DeviceCmds(pVkCreateDataGraphPipelineSessionARM))
import Vulkan.Dynamic (DeviceCmds(pVkCreateDataGraphPipelinesARM))
import Vulkan.Dynamic (DeviceCmds(pVkDestroyDataGraphPipelineSessionARM))
import Vulkan.Dynamic (DeviceCmds(pVkGetDataGraphPipelineAvailablePropertiesARM))
import Vulkan.Dynamic (DeviceCmds(pVkGetDataGraphPipelinePropertiesARM))
import Vulkan.Dynamic (DeviceCmds(pVkGetDataGraphPipelineSessionBindPointRequirementsARM))
import Vulkan.Dynamic (DeviceCmds(pVkGetDataGraphPipelineSessionMemoryRequirementsARM))
import Vulkan.Core10.Handles (DeviceMemory)
import Vulkan.Core10.FundamentalTypes (DeviceSize)
import Vulkan.Core10.Handles (Device_T)
import Vulkan.CStruct.Extends (Extends)
import Vulkan.CStruct.Extends (Extendss)
import Vulkan.CStruct.Extends (Extensible(..))
import Vulkan.Core11.Enums.ExternalMemoryHandleTypeFlagBits (ExternalMemoryHandleTypeFlags)
import Vulkan.Core11.Enums.ExternalSemaphoreHandleTypeFlagBits (ExternalSemaphoreHandleTypeFlags)
import Vulkan.Core10.FundamentalTypes (Flags64)
import Vulkan.Dynamic (InstanceCmds(pVkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM))
import Vulkan.Dynamic (InstanceCmds(pVkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM))
import Vulkan.Core10.APIConstants (MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM)
import Vulkan.Core11.Promoted_From_VK_KHR_get_memory_requirements2 (MemoryRequirements2)
import Vulkan.CStruct.Extends (PeekChain)
import Vulkan.CStruct.Extends (PeekChain(..))
import Vulkan.Core10.Handles (PhysicalDevice)
import Vulkan.Core10.Handles (PhysicalDevice(..))
import Vulkan.Core10.Handles (PhysicalDevice(PhysicalDevice))
import Vulkan.Core10.Handles (PhysicalDevice_T)
import Vulkan.Core10.Handles (Pipeline)
import Vulkan.Core10.Handles (Pipeline(..))
import Vulkan.Core10.Handles (PipelineCache)
import Vulkan.Core10.Handles (PipelineCache(..))
import Vulkan.Extensions.VK_KHR_maintenance5 (PipelineCreateFlags2KHR)
import {-# SOURCE #-} Vulkan.Core13.Promoted_From_VK_EXT_pipeline_creation_feedback (PipelineCreationFeedbackCreateInfo)
import Vulkan.Core10.Handles (PipelineLayout)
import Vulkan.CStruct.Extends (PokeChain)
import Vulkan.CStruct.Extends (PokeChain(..))
import Vulkan.Core10.Enums.Result (Result)
import Vulkan.Core10.Enums.Result (Result(..))
import Vulkan.Core10.Handles (ShaderModule)
import {-# SOURCE #-} Vulkan.Core10.Shader (ShaderModuleCreateInfo)
import Vulkan.CStruct.Extends (SomeStruct)
import Vulkan.Core10.ComputePipeline (SpecializationInfo)
import Vulkan.Core10.Enums.StructureType (StructureType)
import {-# SOURCE #-} Vulkan.Extensions.VK_ARM_tensors (TensorDescriptionARM)
import Vulkan.Exception (VulkanException(..))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_BIND_DATA_GRAPH_PIPELINE_SESSION_MEMORY_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_COMPILER_CONTROL_CREATE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_TENSOR_SEMI_STRUCTURED_SPARSITY_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CREATE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_DISPATCH_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_IDENTIFIER_CREATE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_PROPERTY_QUERY_RESULT_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_RESOURCE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_REQUIREMENTS_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_REQUIREMENT_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_CREATE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_MEMORY_REQUIREMENTS_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SHADER_MODULE_CREATE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_DATA_GRAPH_PROCESSING_ENGINE_CREATE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_FEATURES_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PHYSICAL_DEVICE_QUEUE_FAMILY_DATA_GRAPH_PROCESSING_ENGINE_INFO_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_PROCESSING_ENGINE_PROPERTIES_ARM))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_PROPERTIES_ARM))
import Vulkan.Core10.Enums.Result (Result(SUCCESS))
import Vulkan.Extensions.Handles (DataGraphPipelineSessionARM(..))
import Vulkan.Extensions.Handles (DeferredOperationKHR(..))
import Vulkan.Core10.APIConstants (MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM)
import Vulkan.Extensions.VK_KHR_maintenance5 (PipelineCreateFlags2KHR)
import Vulkan.Extensions.VK_ARM_tensors (TensorUsageFlagBitsARM(..))
import Vulkan.Extensions.VK_ARM_tensors (TensorUsageFlagsARM)
import Vulkan.Core10.APIConstants (pattern MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCreateDataGraphPipelinesARM
:: FunPtr (Ptr Device_T -> DeferredOperationKHR -> PipelineCache -> Word32 -> Ptr (SomeStruct DataGraphPipelineCreateInfoARM) -> Ptr AllocationCallbacks -> Ptr Pipeline -> IO Result) -> Ptr Device_T -> DeferredOperationKHR -> PipelineCache -> Word32 -> Ptr (SomeStruct DataGraphPipelineCreateInfoARM) -> Ptr AllocationCallbacks -> Ptr Pipeline -> IO Result
createDataGraphPipelinesARM :: forall io
. (MonadIO io)
=>
Device
->
DeferredOperationKHR
->
PipelineCache
->
("createInfos" ::: Vector (SomeStruct DataGraphPipelineCreateInfoARM))
->
("allocator" ::: Maybe AllocationCallbacks)
-> io (Result, ("pipelines" ::: Vector Pipeline))
createDataGraphPipelinesARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> DeferredOperationKHR
-> PipelineCache
-> ("createInfos"
::: Vector (SomeStruct DataGraphPipelineCreateInfoARM))
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io (Result, "pipelines" ::: Vector Pipeline)
createDataGraphPipelinesARM Device
device
DeferredOperationKHR
deferredOperation
PipelineCache
pipelineCache
"createInfos"
::: Vector (SomeStruct DataGraphPipelineCreateInfoARM)
createInfos
"allocator" ::: Maybe AllocationCallbacks
allocator = IO (Result, "pipelines" ::: Vector Pipeline)
-> io (Result, "pipelines" ::: Vector Pipeline)
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Result, "pipelines" ::: Vector Pipeline)
-> io (Result, "pipelines" ::: Vector Pipeline))
-> (ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Result, "pipelines" ::: Vector Pipeline)
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Result, "pipelines" ::: Vector Pipeline)
-> io (Result, "pipelines" ::: Vector Pipeline)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Result, "pipelines" ::: Vector Pipeline)
-> IO (Result, "pipelines" ::: Vector Pipeline)
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Result, "pipelines" ::: Vector Pipeline)
-> io (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Result, "pipelines" ::: Vector Pipeline)
-> io (Result, "pipelines" ::: Vector Pipeline)
forall a b. (a -> b) -> a -> b
$ do
let vkCreateDataGraphPipelinesARMPtr :: FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
vkCreateDataGraphPipelinesARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
pVkCreateDataGraphPipelinesARM (case Device
device of Device{DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT (Result, "pipelines" ::: Vector Pipeline) IO ()
forall (m :: * -> *) a.
Monad m =>
m a -> ContT (Result, "pipelines" ::: Vector Pipeline) m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT (Result, "pipelines" ::: Vector Pipeline) IO ())
-> IO () -> ContT (Result, "pipelines" ::: Vector Pipeline) IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
vkCreateDataGraphPipelinesARMPtr FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
-> FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCreateDataGraphPipelinesARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCreateDataGraphPipelinesARM' :: Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result
vkCreateDataGraphPipelinesARM' = FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
-> Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result
mkVkCreateDataGraphPipelinesARM FunPtr
(Ptr Device_T
-> DeferredOperationKHR
-> PipelineCache
-> Word32
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> Ptr AllocationCallbacks
-> Ptr Pipeline
-> IO Result)
vkCreateDataGraphPipelinesARMPtr
pPCreateInfos <- ((Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0)))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0))))
-> ((Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0)))
forall a b. (a -> b) -> a -> b
$ forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes @(DataGraphPipelineCreateInfoARM _) ((("createInfos"
::: Vector (SomeStruct DataGraphPipelineCreateInfoARM))
-> Int
forall a. Vector a -> Int
Data.Vector.length ("createInfos"
::: Vector (SomeStruct DataGraphPipelineCreateInfoARM)
createInfos)) Int -> Int -> Int
forall a. Num a => a -> a -> a
* Int
48)
Data.Vector.imapM_ (\Int
i SomeStruct DataGraphPipelineCreateInfoARM
e -> ((() -> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT (Result, "pipelines" ::: Vector Pipeline) IO ()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((() -> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT (Result, "pipelines" ::: Vector Pipeline) IO ())
-> ((() -> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT (Result, "pipelines" ::: Vector Pipeline) IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
-> SomeStruct DataGraphPipelineCreateInfoARM
-> IO (Result, "pipelines" ::: Vector Pipeline)
-> IO (Result, "pipelines" ::: Vector Pipeline)
forall (a :: [*] -> *) b.
(forall (es :: [*]).
(Extendss a es, PokeChain es) =>
ToCStruct (a es)) =>
Ptr (SomeStruct a) -> SomeStruct a -> IO b -> IO b
pokeSomeCStruct (Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 1))
-> Ptr (SomeStruct DataGraphPipelineCreateInfoARM)
forall (a :: [*] -> *) (es :: [*]).
Ptr (a es) -> Ptr (SomeStruct a)
forgetExtensions (Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0))
pPCreateInfos Ptr (DataGraphPipelineCreateInfoARM (ZonkAny 0))
-> Int -> Ptr (DataGraphPipelineCreateInfoARM w)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
48 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr (DataGraphPipelineCreateInfoARM _))) (SomeStruct DataGraphPipelineCreateInfoARM
e) (IO (Result, "pipelines" ::: Vector Pipeline)
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ((() -> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> (() -> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((() -> IO (Result, "pipelines" ::: Vector Pipeline))
-> () -> IO (Result, "pipelines" ::: Vector Pipeline)
forall a b. (a -> b) -> a -> b
$ ())) (createInfos)
pAllocator <- case (allocator) of
"allocator" ::: Maybe AllocationCallbacks
Nothing -> Ptr AllocationCallbacks
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr AllocationCallbacks)
forall a. a -> ContT (Result, "pipelines" ::: Vector Pipeline) IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr AllocationCallbacks
forall a. Ptr a
nullPtr
Just AllocationCallbacks
j -> ((Ptr AllocationCallbacks
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr AllocationCallbacks)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr AllocationCallbacks
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr AllocationCallbacks))
-> ((Ptr AllocationCallbacks
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> ContT
(Result, "pipelines" ::: Vector Pipeline)
IO
(Ptr AllocationCallbacks)
forall a b. (a -> b) -> a -> b
$ AllocationCallbacks
-> (Ptr AllocationCallbacks
-> IO (Result, "pipelines" ::: Vector Pipeline))
-> IO (Result, "pipelines" ::: Vector Pipeline)
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
AllocationCallbacks -> (Ptr AllocationCallbacks -> IO b) -> IO b
withCStruct (AllocationCallbacks
j)
pPPipelines <- ContT $ bracket (callocBytes @Pipeline ((fromIntegral ((fromIntegral (Data.Vector.length $ (createInfos)) :: Word32))) * 8)) free
r <- lift $ traceAroundEvent "vkCreateDataGraphPipelinesARM" (vkCreateDataGraphPipelinesARM'
(deviceHandle (device))
(deferredOperation)
(pipelineCache)
((fromIntegral (Data.Vector.length $ (createInfos)) :: Word32))
(forgetExtensions (pPCreateInfos))
pAllocator
(pPPipelines))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pPipelines <- lift $ generateM (fromIntegral ((fromIntegral (Data.Vector.length $ (createInfos)) :: Word32))) (\Int
i -> forall a. Storable a => Ptr a -> IO a
peek @Pipeline ((Ptr Pipeline
pPPipelines Ptr Pipeline -> Int -> Ptr Pipeline
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
8 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr Pipeline)))
pure $ (r, pPipelines)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCreateDataGraphPipelineSessionARM
:: FunPtr (Ptr Device_T -> Ptr DataGraphPipelineSessionCreateInfoARM -> Ptr AllocationCallbacks -> Ptr DataGraphPipelineSessionARM -> IO Result) -> Ptr Device_T -> Ptr DataGraphPipelineSessionCreateInfoARM -> Ptr AllocationCallbacks -> Ptr DataGraphPipelineSessionARM -> IO Result
createDataGraphPipelineSessionARM :: forall io
. (MonadIO io)
=>
Device
->
DataGraphPipelineSessionCreateInfoARM
->
("allocator" ::: Maybe AllocationCallbacks)
-> io (DataGraphPipelineSessionARM)
createDataGraphPipelineSessionARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineSessionCreateInfoARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io DataGraphPipelineSessionARM
createDataGraphPipelineSessionARM Device
device
DataGraphPipelineSessionCreateInfoARM
createInfo
"allocator" ::: Maybe AllocationCallbacks
allocator = IO DataGraphPipelineSessionARM -> io DataGraphPipelineSessionARM
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DataGraphPipelineSessionARM -> io DataGraphPipelineSessionARM)
-> (ContT
DataGraphPipelineSessionARM IO DataGraphPipelineSessionARM
-> IO DataGraphPipelineSessionARM)
-> ContT DataGraphPipelineSessionARM IO DataGraphPipelineSessionARM
-> io DataGraphPipelineSessionARM
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT DataGraphPipelineSessionARM IO DataGraphPipelineSessionARM
-> IO DataGraphPipelineSessionARM
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT DataGraphPipelineSessionARM IO DataGraphPipelineSessionARM
-> io DataGraphPipelineSessionARM)
-> ContT DataGraphPipelineSessionARM IO DataGraphPipelineSessionARM
-> io DataGraphPipelineSessionARM
forall a b. (a -> b) -> a -> b
$ do
let vkCreateDataGraphPipelineSessionARMPtr :: FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
vkCreateDataGraphPipelineSessionARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
pVkCreateDataGraphPipelineSessionARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT DataGraphPipelineSessionARM IO ()
forall (m :: * -> *) a.
Monad m =>
m a -> ContT DataGraphPipelineSessionARM m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT DataGraphPipelineSessionARM IO ())
-> IO () -> ContT DataGraphPipelineSessionARM IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
vkCreateDataGraphPipelineSessionARMPtr FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCreateDataGraphPipelineSessionARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCreateDataGraphPipelineSessionARM' :: Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result
vkCreateDataGraphPipelineSessionARM' = FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
-> Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result
mkVkCreateDataGraphPipelineSessionARM FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionCreateInfoARM
-> Ptr AllocationCallbacks
-> Ptr DataGraphPipelineSessionARM
-> IO Result)
vkCreateDataGraphPipelineSessionARMPtr
pCreateInfo <- ((Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM)
-> ContT
DataGraphPipelineSessionARM
IO
(Ptr DataGraphPipelineSessionCreateInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM)
-> ContT
DataGraphPipelineSessionARM
IO
(Ptr DataGraphPipelineSessionCreateInfoARM))
-> ((Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM)
-> ContT
DataGraphPipelineSessionARM
IO
(Ptr DataGraphPipelineSessionCreateInfoARM)
forall a b. (a -> b) -> a -> b
$ DataGraphPipelineSessionCreateInfoARM
-> (Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DataGraphPipelineSessionCreateInfoARM
-> (Ptr DataGraphPipelineSessionCreateInfoARM -> IO b) -> IO b
withCStruct (DataGraphPipelineSessionCreateInfoARM
createInfo)
pAllocator <- case (allocator) of
"allocator" ::: Maybe AllocationCallbacks
Nothing -> Ptr AllocationCallbacks
-> ContT DataGraphPipelineSessionARM IO (Ptr AllocationCallbacks)
forall a. a -> ContT DataGraphPipelineSessionARM IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr AllocationCallbacks
forall a. Ptr a
nullPtr
Just AllocationCallbacks
j -> ((Ptr AllocationCallbacks -> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM)
-> ContT DataGraphPipelineSessionARM IO (Ptr AllocationCallbacks)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr AllocationCallbacks -> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM)
-> ContT DataGraphPipelineSessionARM IO (Ptr AllocationCallbacks))
-> ((Ptr AllocationCallbacks -> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM)
-> ContT DataGraphPipelineSessionARM IO (Ptr AllocationCallbacks)
forall a b. (a -> b) -> a -> b
$ AllocationCallbacks
-> (Ptr AllocationCallbacks -> IO DataGraphPipelineSessionARM)
-> IO DataGraphPipelineSessionARM
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
AllocationCallbacks -> (Ptr AllocationCallbacks -> IO b) -> IO b
withCStruct (AllocationCallbacks
j)
pPSession <- ContT $ bracket (callocBytes @DataGraphPipelineSessionARM 8) free
r <- lift $ traceAroundEvent "vkCreateDataGraphPipelineSessionARM" (vkCreateDataGraphPipelineSessionARM'
(deviceHandle (device))
pCreateInfo
pAllocator
(pPSession))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pSession <- lift $ peek @DataGraphPipelineSessionARM pPSession
pure $ (pSession)
withDataGraphPipelineSessionARM :: forall io r . MonadIO io => Device -> DataGraphPipelineSessionCreateInfoARM -> Maybe AllocationCallbacks -> (io DataGraphPipelineSessionARM -> (DataGraphPipelineSessionARM -> io ()) -> r) -> r
withDataGraphPipelineSessionARM :: forall (io :: * -> *) r.
MonadIO io =>
Device
-> DataGraphPipelineSessionCreateInfoARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> (io DataGraphPipelineSessionARM
-> (DataGraphPipelineSessionARM -> io ()) -> r)
-> r
withDataGraphPipelineSessionARM Device
device DataGraphPipelineSessionCreateInfoARM
pCreateInfo "allocator" ::: Maybe AllocationCallbacks
pAllocator io DataGraphPipelineSessionARM
-> (DataGraphPipelineSessionARM -> io ()) -> r
b =
io DataGraphPipelineSessionARM
-> (DataGraphPipelineSessionARM -> io ()) -> r
b (Device
-> DataGraphPipelineSessionCreateInfoARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io DataGraphPipelineSessionARM
forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineSessionCreateInfoARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io DataGraphPipelineSessionARM
createDataGraphPipelineSessionARM Device
device DataGraphPipelineSessionCreateInfoARM
pCreateInfo "allocator" ::: Maybe AllocationCallbacks
pAllocator)
(\(DataGraphPipelineSessionARM
o0) -> Device
-> DataGraphPipelineSessionARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io ()
forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineSessionARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io ()
destroyDataGraphPipelineSessionARM Device
device DataGraphPipelineSessionARM
o0 "allocator" ::: Maybe AllocationCallbacks
pAllocator)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkGetDataGraphPipelineSessionBindPointRequirementsARM
:: FunPtr (Ptr Device_T -> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM -> Ptr Word32 -> Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO Result) -> Ptr Device_T -> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM -> Ptr Word32 -> Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO Result
getDataGraphPipelineSessionBindPointRequirementsARM :: forall io
. (MonadIO io)
=>
Device
->
DataGraphPipelineSessionBindPointRequirementsInfoARM
-> io (Result, ("bindPointRequirements" ::: Vector DataGraphPipelineSessionBindPointRequirementARM))
getDataGraphPipelineSessionBindPointRequirementsARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
-> io
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
getDataGraphPipelineSessionBindPointRequirementsARM Device
device
DataGraphPipelineSessionBindPointRequirementsInfoARM
info = IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> io
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> io
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> (ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> io
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> io
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> io
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall a b. (a -> b) -> a -> b
$ do
let vkGetDataGraphPipelineSessionBindPointRequirementsARMPtr :: FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
vkGetDataGraphPipelineSessionBindPointRequirementsARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
pVkGetDataGraphPipelineSessionBindPointRequirementsARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO ()
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
()
forall (m :: * -> *) a.
Monad m =>
m a
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
m
a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO ()
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
())
-> IO ()
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
vkGetDataGraphPipelineSessionBindPointRequirementsARMPtr FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkGetDataGraphPipelineSessionBindPointRequirementsARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkGetDataGraphPipelineSessionBindPointRequirementsARM' :: Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result
vkGetDataGraphPipelineSessionBindPointRequirementsARM' = FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
-> Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result
mkVkGetDataGraphPipelineSessionBindPointRequirementsARM FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO Result)
vkGetDataGraphPipelineSessionBindPointRequirementsARMPtr
let device' :: Ptr Device_T
device' = Device -> Ptr Device_T
deviceHandle (Device
device)
pInfo <- ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM))
-> ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
(Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM)
forall a b. (a -> b) -> a -> b
$ DataGraphPipelineSessionBindPointRequirementsInfoARM
-> (Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DataGraphPipelineSessionBindPointRequirementsInfoARM
-> (Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b)
-> IO b
withCStruct (DataGraphPipelineSessionBindPointRequirementsInfoARM
info)
pPBindPointRequirementCount <- ContT $ bracket (callocBytes @Word32 4) free
r <- lift $ traceAroundEvent "vkGetDataGraphPipelineSessionBindPointRequirementsARM" (vkGetDataGraphPipelineSessionBindPointRequirementsARM'
device'
pInfo
(pPBindPointRequirementCount)
(nullPtr))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pBindPointRequirementCount <- lift $ peek @Word32 pPBindPointRequirementCount
pPBindPointRequirements <- ContT $ bracket (callocBytes @DataGraphPipelineSessionBindPointRequirementARM ((fromIntegral (pBindPointRequirementCount)) * 32)) free
_ <- traverse (\Int
i -> ((()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
())
-> ((()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ContT
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall b.
Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> IO b -> IO b
pokeZeroCStruct (Ptr DataGraphPipelineSessionBindPointRequirementARM
pPBindPointRequirements Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointRequirementARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
i Int -> Int -> Int
forall a. Num a => a -> a -> a
* Int
32) :: Ptr DataGraphPipelineSessionBindPointRequirementARM) (IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ((()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> (()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM))
-> ()
-> IO
(Result,
"bindPointRequirements"
::: Vector DataGraphPipelineSessionBindPointRequirementARM)
forall a b. (a -> b) -> a -> b
$ ())) [0..(fromIntegral (pBindPointRequirementCount)) - 1]
r' <- lift $ traceAroundEvent "vkGetDataGraphPipelineSessionBindPointRequirementsARM" (vkGetDataGraphPipelineSessionBindPointRequirementsARM'
device'
pInfo
(pPBindPointRequirementCount)
((pPBindPointRequirements)))
lift $ when (r' < SUCCESS) (throwIO (VulkanException r'))
pBindPointRequirementCount' <- lift $ peek @Word32 pPBindPointRequirementCount
pBindPointRequirements' <- lift $ generateM (fromIntegral (pBindPointRequirementCount')) (\Int
i -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @DataGraphPipelineSessionBindPointRequirementARM (((Ptr DataGraphPipelineSessionBindPointRequirementARM
pPBindPointRequirements) Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointRequirementARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
32 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DataGraphPipelineSessionBindPointRequirementARM)))
pure $ ((r'), pBindPointRequirements')
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkGetDataGraphPipelineSessionMemoryRequirementsARM
:: FunPtr (Ptr Device_T -> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> Ptr (SomeStruct MemoryRequirements2) -> IO ()) -> Ptr Device_T -> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> Ptr (SomeStruct MemoryRequirements2) -> IO ()
getDataGraphPipelineSessionMemoryRequirementsARM :: forall a io
. ( Extendss MemoryRequirements2 a
, PokeChain a
, PeekChain a
, MonadIO io )
=>
Device
->
DataGraphPipelineSessionMemoryRequirementsInfoARM
-> io (MemoryRequirements2 a)
getDataGraphPipelineSessionMemoryRequirementsARM :: forall (a :: [*]) (io :: * -> *).
(Extendss MemoryRequirements2 a, PokeChain a, PeekChain a,
MonadIO io) =>
Device
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
-> io (MemoryRequirements2 a)
getDataGraphPipelineSessionMemoryRequirementsARM Device
device
DataGraphPipelineSessionMemoryRequirementsInfoARM
info = IO (MemoryRequirements2 a) -> io (MemoryRequirements2 a)
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (MemoryRequirements2 a) -> io (MemoryRequirements2 a))
-> (ContT (MemoryRequirements2 a) IO (MemoryRequirements2 a)
-> IO (MemoryRequirements2 a))
-> ContT (MemoryRequirements2 a) IO (MemoryRequirements2 a)
-> io (MemoryRequirements2 a)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT (MemoryRequirements2 a) IO (MemoryRequirements2 a)
-> IO (MemoryRequirements2 a)
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT (MemoryRequirements2 a) IO (MemoryRequirements2 a)
-> io (MemoryRequirements2 a))
-> ContT (MemoryRequirements2 a) IO (MemoryRequirements2 a)
-> io (MemoryRequirements2 a)
forall a b. (a -> b) -> a -> b
$ do
let vkGetDataGraphPipelineSessionMemoryRequirementsARMPtr :: FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
vkGetDataGraphPipelineSessionMemoryRequirementsARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
pVkGetDataGraphPipelineSessionMemoryRequirementsARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT (MemoryRequirements2 a) IO ()
forall (m :: * -> *) a.
Monad m =>
m a -> ContT (MemoryRequirements2 a) m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT (MemoryRequirements2 a) IO ())
-> IO () -> ContT (MemoryRequirements2 a) IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
vkGetDataGraphPipelineSessionMemoryRequirementsARMPtr FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkGetDataGraphPipelineSessionMemoryRequirementsARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkGetDataGraphPipelineSessionMemoryRequirementsARM' :: Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ()
vkGetDataGraphPipelineSessionMemoryRequirementsARM' = FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
-> Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ()
mkVkGetDataGraphPipelineSessionMemoryRequirementsARM FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Ptr (SomeStruct MemoryRequirements2)
-> IO ())
vkGetDataGraphPipelineSessionMemoryRequirementsARMPtr
pInfo <- ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO (MemoryRequirements2 a))
-> IO (MemoryRequirements2 a))
-> ContT
(MemoryRequirements2 a)
IO
(Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO (MemoryRequirements2 a))
-> IO (MemoryRequirements2 a))
-> ContT
(MemoryRequirements2 a)
IO
(Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM))
-> ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO (MemoryRequirements2 a))
-> IO (MemoryRequirements2 a))
-> ContT
(MemoryRequirements2 a)
IO
(Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM)
forall a b. (a -> b) -> a -> b
$ DataGraphPipelineSessionMemoryRequirementsInfoARM
-> (Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO (MemoryRequirements2 a))
-> IO (MemoryRequirements2 a)
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DataGraphPipelineSessionMemoryRequirementsInfoARM
-> (Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b)
-> IO b
withCStruct (DataGraphPipelineSessionMemoryRequirementsInfoARM
info)
pPMemoryRequirements <- ContT (withZeroCStruct @(MemoryRequirements2 _))
lift $ traceAroundEvent "vkGetDataGraphPipelineSessionMemoryRequirementsARM" (vkGetDataGraphPipelineSessionMemoryRequirementsARM'
(deviceHandle (device))
pInfo
(forgetExtensions (pPMemoryRequirements)))
pMemoryRequirements <- lift $ peekCStruct @(MemoryRequirements2 _) pPMemoryRequirements
pure $ (pMemoryRequirements)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkBindDataGraphPipelineSessionMemoryARM
:: FunPtr (Ptr Device_T -> Word32 -> Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO Result) -> Ptr Device_T -> Word32 -> Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO Result
bindDataGraphPipelineSessionMemoryARM :: forall io
. (MonadIO io)
=>
Device
->
("bindInfos" ::: Vector BindDataGraphPipelineSessionMemoryInfoARM)
-> io ()
bindDataGraphPipelineSessionMemoryARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> ("bindInfos"
::: Vector BindDataGraphPipelineSessionMemoryInfoARM)
-> io ()
bindDataGraphPipelineSessionMemoryARM Device
device "bindInfos" ::: Vector BindDataGraphPipelineSessionMemoryInfoARM
bindInfos = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkBindDataGraphPipelineSessionMemoryARMPtr :: FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
vkBindDataGraphPipelineSessionMemoryARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
pVkBindDataGraphPipelineSessionMemoryARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
vkBindDataGraphPipelineSessionMemoryARMPtr FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
-> FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkBindDataGraphPipelineSessionMemoryARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkBindDataGraphPipelineSessionMemoryARM' :: Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result
vkBindDataGraphPipelineSessionMemoryARM' = FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
-> Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result
mkVkBindDataGraphPipelineSessionMemoryARM FunPtr
(Ptr Device_T
-> Word32
-> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO Result)
vkBindDataGraphPipelineSessionMemoryARMPtr
pPBindInfos <- ((Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO ()) -> IO ())
-> ContT () IO (Ptr BindDataGraphPipelineSessionMemoryInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO ())
-> IO ())
-> ContT () IO (Ptr BindDataGraphPipelineSessionMemoryInfoARM))
-> ((Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO ())
-> IO ())
-> ContT () IO (Ptr BindDataGraphPipelineSessionMemoryInfoARM)
forall a b. (a -> b) -> a -> b
$ forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes @BindDataGraphPipelineSessionMemoryInfoARM ((("bindInfos" ::: Vector BindDataGraphPipelineSessionMemoryInfoARM)
-> Int
forall a. Vector a -> Int
Data.Vector.length ("bindInfos" ::: Vector BindDataGraphPipelineSessionMemoryInfoARM
bindInfos)) Int -> Int -> Int
forall a. Num a => a -> a -> a
* Int
48)
lift $ Data.Vector.imapM_ (\Int
i BindDataGraphPipelineSessionMemoryInfoARM
e -> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr BindDataGraphPipelineSessionMemoryInfoARM
pPBindInfos Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr BindDataGraphPipelineSessionMemoryInfoARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
48 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr BindDataGraphPipelineSessionMemoryInfoARM) (BindDataGraphPipelineSessionMemoryInfoARM
e)) (bindInfos)
r <- lift $ traceAroundEvent "vkBindDataGraphPipelineSessionMemoryARM" (vkBindDataGraphPipelineSessionMemoryARM'
(deviceHandle (device))
((fromIntegral (Data.Vector.length $ (bindInfos)) :: Word32))
(pPBindInfos))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkDestroyDataGraphPipelineSessionARM
:: FunPtr (Ptr Device_T -> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ()) -> Ptr Device_T -> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ()
destroyDataGraphPipelineSessionARM :: forall io
. (MonadIO io)
=>
Device
->
DataGraphPipelineSessionARM
->
("allocator" ::: Maybe AllocationCallbacks)
-> io ()
destroyDataGraphPipelineSessionARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineSessionARM
-> ("allocator" ::: Maybe AllocationCallbacks)
-> io ()
destroyDataGraphPipelineSessionARM Device
device
DataGraphPipelineSessionARM
session
"allocator" ::: Maybe AllocationCallbacks
allocator = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkDestroyDataGraphPipelineSessionARMPtr :: FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
vkDestroyDataGraphPipelineSessionARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
pVkDestroyDataGraphPipelineSessionARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
vkDestroyDataGraphPipelineSessionARMPtr FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
-> FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkDestroyDataGraphPipelineSessionARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkDestroyDataGraphPipelineSessionARM' :: Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ()
vkDestroyDataGraphPipelineSessionARM' = FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
-> Ptr Device_T
-> DataGraphPipelineSessionARM
-> Ptr AllocationCallbacks
-> IO ()
mkVkDestroyDataGraphPipelineSessionARM FunPtr
(Ptr Device_T
-> DataGraphPipelineSessionARM -> Ptr AllocationCallbacks -> IO ())
vkDestroyDataGraphPipelineSessionARMPtr
pAllocator <- case ("allocator" ::: Maybe AllocationCallbacks
allocator) of
"allocator" ::: Maybe AllocationCallbacks
Nothing -> Ptr AllocationCallbacks -> ContT () IO (Ptr AllocationCallbacks)
forall a. a -> ContT () IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr AllocationCallbacks
forall a. Ptr a
nullPtr
Just AllocationCallbacks
j -> ((Ptr AllocationCallbacks -> IO ()) -> IO ())
-> ContT () IO (Ptr AllocationCallbacks)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr AllocationCallbacks -> IO ()) -> IO ())
-> ContT () IO (Ptr AllocationCallbacks))
-> ((Ptr AllocationCallbacks -> IO ()) -> IO ())
-> ContT () IO (Ptr AllocationCallbacks)
forall a b. (a -> b) -> a -> b
$ AllocationCallbacks -> (Ptr AllocationCallbacks -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
AllocationCallbacks -> (Ptr AllocationCallbacks -> IO b) -> IO b
withCStruct (AllocationCallbacks
j)
lift $ traceAroundEvent "vkDestroyDataGraphPipelineSessionARM" (vkDestroyDataGraphPipelineSessionARM'
(deviceHandle (device))
(session)
pAllocator)
pure $ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkCmdDispatchDataGraphARM
:: FunPtr (Ptr CommandBuffer_T -> DataGraphPipelineSessionARM -> Ptr DataGraphPipelineDispatchInfoARM -> IO ()) -> Ptr CommandBuffer_T -> DataGraphPipelineSessionARM -> Ptr DataGraphPipelineDispatchInfoARM -> IO ()
cmdDispatchDataGraphARM :: forall io
. (MonadIO io)
=>
CommandBuffer
->
DataGraphPipelineSessionARM
->
("info" ::: Maybe DataGraphPipelineDispatchInfoARM)
-> io ()
cmdDispatchDataGraphARM :: forall (io :: * -> *).
MonadIO io =>
CommandBuffer
-> DataGraphPipelineSessionARM
-> ("info" ::: Maybe DataGraphPipelineDispatchInfoARM)
-> io ()
cmdDispatchDataGraphARM CommandBuffer
commandBuffer DataGraphPipelineSessionARM
session "info" ::: Maybe DataGraphPipelineDispatchInfoARM
info = IO () -> io ()
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> io ())
-> (ContT () IO () -> IO ()) -> ContT () IO () -> io ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT () IO () -> IO ()
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT () IO () -> io ()) -> ContT () IO () -> io ()
forall a b. (a -> b) -> a -> b
$ do
let vkCmdDispatchDataGraphARMPtr :: FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
vkCmdDispatchDataGraphARMPtr = DeviceCmds
-> FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
pVkCmdDispatchDataGraphARM (case CommandBuffer
commandBuffer of CommandBuffer{DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds :: CommandBuffer -> DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO () -> ContT () IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT () m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT () IO ()) -> IO () -> ContT () IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
vkCmdDispatchDataGraphARMPtr FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
-> FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkCmdDispatchDataGraphARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkCmdDispatchDataGraphARM' :: Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ()
vkCmdDispatchDataGraphARM' = FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
-> Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ()
mkVkCmdDispatchDataGraphARM FunPtr
(Ptr CommandBuffer_T
-> DataGraphPipelineSessionARM
-> Ptr DataGraphPipelineDispatchInfoARM
-> IO ())
vkCmdDispatchDataGraphARMPtr
pInfo <- case ("info" ::: Maybe DataGraphPipelineDispatchInfoARM
info) of
"info" ::: Maybe DataGraphPipelineDispatchInfoARM
Nothing -> Ptr DataGraphPipelineDispatchInfoARM
-> ContT () IO (Ptr DataGraphPipelineDispatchInfoARM)
forall a. a -> ContT () IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr DataGraphPipelineDispatchInfoARM
forall a. Ptr a
nullPtr
Just DataGraphPipelineDispatchInfoARM
j -> ((Ptr DataGraphPipelineDispatchInfoARM -> IO ()) -> IO ())
-> ContT () IO (Ptr DataGraphPipelineDispatchInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DataGraphPipelineDispatchInfoARM -> IO ()) -> IO ())
-> ContT () IO (Ptr DataGraphPipelineDispatchInfoARM))
-> ((Ptr DataGraphPipelineDispatchInfoARM -> IO ()) -> IO ())
-> ContT () IO (Ptr DataGraphPipelineDispatchInfoARM)
forall a b. (a -> b) -> a -> b
$ DataGraphPipelineDispatchInfoARM
-> (Ptr DataGraphPipelineDispatchInfoARM -> IO ()) -> IO ()
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DataGraphPipelineDispatchInfoARM
-> (Ptr DataGraphPipelineDispatchInfoARM -> IO b) -> IO b
withCStruct (DataGraphPipelineDispatchInfoARM
j)
lift $ traceAroundEvent "vkCmdDispatchDataGraphARM" (vkCmdDispatchDataGraphARM'
(commandBufferHandle (commandBuffer))
(session)
pInfo)
pure $ ()
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkGetDataGraphPipelineAvailablePropertiesARM
:: FunPtr (Ptr Device_T -> Ptr DataGraphPipelineInfoARM -> Ptr Word32 -> Ptr DataGraphPipelinePropertyARM -> IO Result) -> Ptr Device_T -> Ptr DataGraphPipelineInfoARM -> Ptr Word32 -> Ptr DataGraphPipelinePropertyARM -> IO Result
getDataGraphPipelineAvailablePropertiesARM :: forall io
. (MonadIO io)
=>
Device
->
DataGraphPipelineInfoARM
-> io (Result, ("properties" ::: Vector DataGraphPipelinePropertyARM))
getDataGraphPipelineAvailablePropertiesARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineInfoARM
-> io
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
getDataGraphPipelineAvailablePropertiesARM Device
device
DataGraphPipelineInfoARM
pipelineInfo = IO (Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> io
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> io
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> (ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> io
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> io
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
-> io
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
forall a b. (a -> b) -> a -> b
$ do
let vkGetDataGraphPipelineAvailablePropertiesARMPtr :: FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
vkGetDataGraphPipelineAvailablePropertiesARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
pVkGetDataGraphPipelineAvailablePropertiesARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO ()
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
()
forall (m :: * -> *) a.
Monad m =>
m a
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM) m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO ()
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
())
-> IO ()
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
vkGetDataGraphPipelineAvailablePropertiesARMPtr FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkGetDataGraphPipelineAvailablePropertiesARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkGetDataGraphPipelineAvailablePropertiesARM' :: Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result
vkGetDataGraphPipelineAvailablePropertiesARM' = FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
-> Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result
mkVkGetDataGraphPipelineAvailablePropertiesARM FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Ptr Word32
-> Ptr DataGraphPipelinePropertyARM
-> IO Result)
vkGetDataGraphPipelineAvailablePropertiesARMPtr
let device' :: Ptr Device_T
device' = Device -> Ptr Device_T
deviceHandle (Device
device)
pPipelineInfo <- ((Ptr DataGraphPipelineInfoARM
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Ptr DataGraphPipelineInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DataGraphPipelineInfoARM
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Ptr DataGraphPipelineInfoARM))
-> ((Ptr DataGraphPipelineInfoARM
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> ContT
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
IO
(Ptr DataGraphPipelineInfoARM)
forall a b. (a -> b) -> a -> b
$ DataGraphPipelineInfoARM
-> (Ptr DataGraphPipelineInfoARM
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM))
-> IO
(Result, "properties" ::: Vector DataGraphPipelinePropertyARM)
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DataGraphPipelineInfoARM
-> (Ptr DataGraphPipelineInfoARM -> IO b) -> IO b
withCStruct (DataGraphPipelineInfoARM
pipelineInfo)
pPPropertiesCount <- ContT $ bracket (callocBytes @Word32 4) free
r <- lift $ traceAroundEvent "vkGetDataGraphPipelineAvailablePropertiesARM" (vkGetDataGraphPipelineAvailablePropertiesARM'
device'
pPipelineInfo
(pPPropertiesCount)
(nullPtr))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pPropertiesCount <- lift $ peek @Word32 pPPropertiesCount
pPProperties <- ContT $ bracket (callocBytes @DataGraphPipelinePropertyARM ((fromIntegral (pPropertiesCount)) * 4)) free
r' <- lift $ traceAroundEvent "vkGetDataGraphPipelineAvailablePropertiesARM" (vkGetDataGraphPipelineAvailablePropertiesARM'
device'
pPipelineInfo
(pPPropertiesCount)
(pPProperties))
lift $ when (r' < SUCCESS) (throwIO (VulkanException r'))
pPropertiesCount' <- lift $ peek @Word32 pPPropertiesCount
pProperties' <- lift $ generateM (fromIntegral (pPropertiesCount')) (\Int
i -> forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelinePropertyARM ((Ptr DataGraphPipelinePropertyARM
pPProperties Ptr DataGraphPipelinePropertyARM
-> Int -> Ptr DataGraphPipelinePropertyARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
4 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DataGraphPipelinePropertyARM)))
pure $ ((r'), pProperties')
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkGetDataGraphPipelinePropertiesARM
:: FunPtr (Ptr Device_T -> Ptr DataGraphPipelineInfoARM -> Word32 -> Ptr DataGraphPipelinePropertyQueryResultARM -> IO Result) -> Ptr Device_T -> Ptr DataGraphPipelineInfoARM -> Word32 -> Ptr DataGraphPipelinePropertyQueryResultARM -> IO Result
getDataGraphPipelinePropertiesARM :: forall io
. (MonadIO io)
=>
Device
->
DataGraphPipelineInfoARM
->
("propertiesCount" ::: Word32)
-> io (Result, ("properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
getDataGraphPipelinePropertiesARM :: forall (io :: * -> *).
MonadIO io =>
Device
-> DataGraphPipelineInfoARM
-> Word32
-> io
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
getDataGraphPipelinePropertiesARM Device
device
DataGraphPipelineInfoARM
pipelineInfo
Word32
propertiesCount = IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> io
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> io
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> (ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> io
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> io
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> io
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall a b. (a -> b) -> a -> b
$ do
let vkGetDataGraphPipelinePropertiesARMPtr :: FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
vkGetDataGraphPipelinePropertiesARMPtr = DeviceCmds
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
pVkGetDataGraphPipelinePropertiesARM (case Device
device of Device{DeviceCmds
deviceCmds :: Device -> DeviceCmds
deviceCmds :: DeviceCmds
deviceCmds} -> DeviceCmds
deviceCmds)
IO ()
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
()
forall (m :: * -> *) a.
Monad m =>
m a
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
m
a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO ()
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
())
-> IO ()
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
vkGetDataGraphPipelinePropertiesARMPtr FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
-> FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkGetDataGraphPipelinePropertiesARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkGetDataGraphPipelinePropertiesARM' :: Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result
vkGetDataGraphPipelinePropertiesARM' = FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
-> Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result
mkVkGetDataGraphPipelinePropertiesARM FunPtr
(Ptr Device_T
-> Ptr DataGraphPipelineInfoARM
-> Word32
-> Ptr DataGraphPipelinePropertyQueryResultARM
-> IO Result)
vkGetDataGraphPipelinePropertiesARMPtr
pPipelineInfo <- ((Ptr DataGraphPipelineInfoARM
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Ptr DataGraphPipelineInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr DataGraphPipelineInfoARM
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Ptr DataGraphPipelineInfoARM))
-> ((Ptr DataGraphPipelineInfoARM
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
(Ptr DataGraphPipelineInfoARM)
forall a b. (a -> b) -> a -> b
$ DataGraphPipelineInfoARM
-> (Ptr DataGraphPipelineInfoARM
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
DataGraphPipelineInfoARM
-> (Ptr DataGraphPipelineInfoARM -> IO b) -> IO b
withCStruct (DataGraphPipelineInfoARM
pipelineInfo)
pPProperties <- ContT $ bracket (callocBytes @DataGraphPipelinePropertyQueryResultARM ((fromIntegral (propertiesCount)) * 40)) free
_ <- traverse (\Int
i -> ((()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
())
-> ((()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ContT
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Ptr DataGraphPipelinePropertyQueryResultARM
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall b.
Ptr DataGraphPipelinePropertyQueryResultARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> IO b -> IO b
pokeZeroCStruct (Ptr DataGraphPipelinePropertyQueryResultARM
pPProperties Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr DataGraphPipelinePropertyQueryResultARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
i Int -> Int -> Int
forall a. Num a => a -> a -> a
* Int
40) :: Ptr DataGraphPipelinePropertyQueryResultARM) (IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ((()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> (()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM))
-> ()
-> IO
(Result,
"properties" ::: Vector DataGraphPipelinePropertyQueryResultARM)
forall a b. (a -> b) -> a -> b
$ ())) [0..(fromIntegral (propertiesCount)) - 1]
r <- lift $ traceAroundEvent "vkGetDataGraphPipelinePropertiesARM" (vkGetDataGraphPipelinePropertiesARM'
(deviceHandle (device))
pPipelineInfo
(propertiesCount)
((pPProperties)))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pProperties <- lift $ generateM (fromIntegral (propertiesCount)) (\Int
i -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @DataGraphPipelinePropertyQueryResultARM (((Ptr DataGraphPipelinePropertyQueryResultARM
pPProperties) Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr DataGraphPipelinePropertyQueryResultARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
40 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr DataGraphPipelinePropertyQueryResultARM)))
pure $ (r, pProperties)
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM
:: FunPtr (Ptr PhysicalDevice_T -> Word32 -> Ptr Word32 -> Ptr QueueFamilyDataGraphPropertiesARM -> IO Result) -> Ptr PhysicalDevice_T -> Word32 -> Ptr Word32 -> Ptr QueueFamilyDataGraphPropertiesARM -> IO Result
getPhysicalDeviceQueueFamilyDataGraphPropertiesARM :: forall io
. (MonadIO io)
=>
PhysicalDevice
->
("queueFamilyIndex" ::: Word32)
-> io (Result, ("queueFamilyDataGraphProperties" ::: Vector QueueFamilyDataGraphPropertiesARM))
getPhysicalDeviceQueueFamilyDataGraphPropertiesARM :: forall (io :: * -> *).
MonadIO io =>
PhysicalDevice
-> Word32
-> io
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
getPhysicalDeviceQueueFamilyDataGraphPropertiesARM PhysicalDevice
physicalDevice
Word32
queueFamilyIndex = IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> io
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> io
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> (ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> io
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> io
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> io
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall a b. (a -> b) -> a -> b
$ do
let vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARMPtr :: FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARMPtr = InstanceCmds
-> FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
pVkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM (case PhysicalDevice
physicalDevice of PhysicalDevice{InstanceCmds
instanceCmds :: InstanceCmds
instanceCmds :: PhysicalDevice -> InstanceCmds
instanceCmds} -> InstanceCmds
instanceCmds)
IO ()
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
()
forall (m :: * -> *) a.
Monad m =>
m a
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
m
a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO ()
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
())
-> IO ()
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARMPtr FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
-> FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM' :: Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result
vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM' = FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
-> Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result
mkVkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM FunPtr
(Ptr PhysicalDevice_T
-> Word32
-> Ptr Word32
-> Ptr QueueFamilyDataGraphPropertiesARM
-> IO Result)
vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARMPtr
let physicalDevice' :: Ptr PhysicalDevice_T
physicalDevice' = PhysicalDevice -> Ptr PhysicalDevice_T
physicalDeviceHandle (PhysicalDevice
physicalDevice)
pPQueueFamilyDataGraphPropertyCount <- ((Ptr Word32
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Ptr Word32)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr Word32
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Ptr Word32))
-> ((Ptr Word32
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
(Ptr Word32)
forall a b. (a -> b) -> a -> b
$ IO (Ptr Word32)
-> (Ptr Word32 -> IO ())
-> (Ptr Word32
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall a b c. IO a -> (a -> IO b) -> (a -> IO c) -> IO c
bracket (forall a. Int -> IO (Ptr a)
callocBytes @Word32 Int
4) Ptr Word32 -> IO ()
forall a. Ptr a -> IO ()
free
r <- lift $ traceAroundEvent "vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM" (vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM'
physicalDevice'
(queueFamilyIndex)
(pPQueueFamilyDataGraphPropertyCount)
(nullPtr))
lift $ when (r < SUCCESS) (throwIO (VulkanException r))
pQueueFamilyDataGraphPropertyCount <- lift $ peek @Word32 pPQueueFamilyDataGraphPropertyCount
pPQueueFamilyDataGraphProperties <- ContT $ bracket (callocBytes @QueueFamilyDataGraphPropertiesARM ((fromIntegral (pQueueFamilyDataGraphPropertyCount)) * 160)) free
_ <- traverse (\Int
i -> ((()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
())
-> ((()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ContT
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
IO
()
forall a b. (a -> b) -> a -> b
$ Ptr QueueFamilyDataGraphPropertiesARM
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall b. Ptr QueueFamilyDataGraphPropertiesARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> IO b -> IO b
pokeZeroCStruct (Ptr QueueFamilyDataGraphPropertiesARM
pPQueueFamilyDataGraphProperties Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr QueueFamilyDataGraphPropertiesARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
i Int -> Int -> Int
forall a. Num a => a -> a -> a
* Int
160) :: Ptr QueueFamilyDataGraphPropertiesARM) (IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ((()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> (()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM))
-> ()
-> IO
(Result,
"queueFamilyDataGraphProperties"
::: Vector QueueFamilyDataGraphPropertiesARM)
forall a b. (a -> b) -> a -> b
$ ())) [0..(fromIntegral (pQueueFamilyDataGraphPropertyCount)) - 1]
r' <- lift $ traceAroundEvent "vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM" (vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM'
physicalDevice'
(queueFamilyIndex)
(pPQueueFamilyDataGraphPropertyCount)
((pPQueueFamilyDataGraphProperties)))
lift $ when (r' < SUCCESS) (throwIO (VulkanException r'))
pQueueFamilyDataGraphPropertyCount' <- lift $ peek @Word32 pPQueueFamilyDataGraphPropertyCount
pQueueFamilyDataGraphProperties' <- lift $ generateM (fromIntegral (pQueueFamilyDataGraphPropertyCount')) (\Int
i -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @QueueFamilyDataGraphPropertiesARM (((Ptr QueueFamilyDataGraphPropertiesARM
pPQueueFamilyDataGraphProperties) Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr QueueFamilyDataGraphPropertiesARM
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
160 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr QueueFamilyDataGraphPropertiesARM)))
pure $ ((r'), pQueueFamilyDataGraphProperties')
foreign import ccall
#if !defined(SAFE_FOREIGN_CALLS)
unsafe
#endif
"dynamic" mkVkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM
:: FunPtr (Ptr PhysicalDevice_T -> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM -> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO ()) -> Ptr PhysicalDevice_T -> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM -> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO ()
getPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM :: forall io
. ( MonadIO io )
=>
PhysicalDevice
->
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> io (QueueFamilyDataGraphProcessingEnginePropertiesARM)
getPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM :: forall (io :: * -> *).
MonadIO io =>
PhysicalDevice
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> io QueueFamilyDataGraphProcessingEnginePropertiesARM
getPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM PhysicalDevice
physicalDevice
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
queueFamilyDataGraphProcessingEngineInfo = IO QueueFamilyDataGraphProcessingEnginePropertiesARM
-> io QueueFamilyDataGraphProcessingEnginePropertiesARM
forall a. IO a -> io a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO QueueFamilyDataGraphProcessingEnginePropertiesARM
-> io QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> (ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> io QueueFamilyDataGraphProcessingEnginePropertiesARM
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> io QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> io QueueFamilyDataGraphProcessingEnginePropertiesARM
forall a b. (a -> b) -> a -> b
$ do
let vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARMPtr :: FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARMPtr = InstanceCmds
-> FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
pVkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM (case PhysicalDevice
physicalDevice of PhysicalDevice{InstanceCmds
instanceCmds :: PhysicalDevice -> InstanceCmds
instanceCmds :: InstanceCmds
instanceCmds} -> InstanceCmds
instanceCmds)
IO ()
-> ContT QueueFamilyDataGraphProcessingEnginePropertiesARM IO ()
forall (m :: * -> *) a.
Monad m =>
m a -> ContT QueueFamilyDataGraphProcessingEnginePropertiesARM m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO ()
-> ContT QueueFamilyDataGraphProcessingEnginePropertiesARM IO ())
-> IO ()
-> ContT QueueFamilyDataGraphProcessingEnginePropertiesARM IO ()
forall a b. (a -> b) -> a -> b
$ Bool -> IO () -> IO ()
forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
unless (FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARMPtr FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
-> FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
-> Bool
forall a. Eq a => a -> a -> Bool
/= FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
forall a. FunPtr a
nullFunPtr) (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$
IOException -> IO ()
forall e a. (HasCallStack, Exception e) => e -> IO a
throwIO (IOException -> IO ()) -> IOException -> IO ()
forall a b. (a -> b) -> a -> b
$ Maybe Handle
-> IOErrorType
-> String
-> String
-> Maybe CInt
-> Maybe String
-> IOException
IOError Maybe Handle
forall a. Maybe a
Nothing IOErrorType
InvalidArgument String
"" String
"The function pointer for vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM is null" Maybe CInt
forall a. Maybe a
Nothing Maybe String
forall a. Maybe a
Nothing
let vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM' :: Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ()
vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM' = FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
-> Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ()
mkVkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM FunPtr
(Ptr PhysicalDevice_T
-> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ())
vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARMPtr
pQueueFamilyDataGraphProcessingEngineInfo <- ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
(Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
(Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM))
-> ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> ContT
QueueFamilyDataGraphProcessingEnginePropertiesARM
IO
(Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM)
forall a b. (a -> b) -> a -> b
$ PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> (Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM)
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> (Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b)
-> IO b
withCStruct (PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
queueFamilyDataGraphProcessingEngineInfo)
pPQueueFamilyDataGraphProcessingEngineProperties <- ContT (withZeroCStruct @QueueFamilyDataGraphProcessingEnginePropertiesARM)
lift $ traceAroundEvent "vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM" (vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM'
(physicalDeviceHandle (physicalDevice))
pQueueFamilyDataGraphProcessingEngineInfo
(pPQueueFamilyDataGraphProcessingEngineProperties))
pQueueFamilyDataGraphProcessingEngineProperties <- lift $ peekCStruct @QueueFamilyDataGraphProcessingEnginePropertiesARM pPQueueFamilyDataGraphProcessingEngineProperties
pure $ (pQueueFamilyDataGraphProcessingEngineProperties)
data PhysicalDeviceDataGraphFeaturesARM = PhysicalDeviceDataGraphFeaturesARM
{
PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraph :: Bool
,
PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphUpdateAfterBind :: Bool
,
PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphSpecializationConstants :: Bool
,
PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphDescriptorBuffer :: Bool
,
PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphShaderModule :: Bool
}
deriving (Typeable, PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool
(PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool)
-> (PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool)
-> Eq PhysicalDeviceDataGraphFeaturesARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool
== :: PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool
$c/= :: PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool
/= :: PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceDataGraphFeaturesARM)
#endif
deriving instance Show PhysicalDeviceDataGraphFeaturesARM
instance ToCStruct PhysicalDeviceDataGraphFeaturesARM where
withCStruct :: forall b.
PhysicalDeviceDataGraphFeaturesARM
-> (Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b) -> IO b
withCStruct PhysicalDeviceDataGraphFeaturesARM
x Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b
f = Int -> (Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
40 ((Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b) -> IO b)
-> (Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceDataGraphFeaturesARM
p -> Ptr PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> IO b -> IO b
forall b.
Ptr PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphFeaturesARM
p PhysicalDeviceDataGraphFeaturesARM
x (Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b
f Ptr PhysicalDeviceDataGraphFeaturesARM
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphFeaturesARM
p PhysicalDeviceDataGraphFeaturesARM{Bool
dataGraph :: PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphUpdateAfterBind :: PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphSpecializationConstants :: PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphDescriptorBuffer :: PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraphShaderModule :: PhysicalDeviceDataGraphFeaturesARM -> Bool
dataGraph :: Bool
dataGraphUpdateAfterBind :: Bool
dataGraphSpecializationConstants :: Bool
dataGraphDescriptorBuffer :: Bool
dataGraphShaderModule :: Bool
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_FEATURES_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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 PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dataGraph))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dataGraphUpdateAfterBind))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dataGraphSpecializationConstants))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dataGraphDescriptorBuffer))
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
dataGraphShaderModule))
IO b
f
cStructSize :: Int
cStructSize = Int
40
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr PhysicalDeviceDataGraphFeaturesARM -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceDataGraphFeaturesARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_FEATURES_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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 PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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 PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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 PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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 PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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 PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> 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))
IO b
f
instance FromCStruct PhysicalDeviceDataGraphFeaturesARM where
peekCStruct :: Ptr PhysicalDeviceDataGraphFeaturesARM
-> IO PhysicalDeviceDataGraphFeaturesARM
peekCStruct Ptr PhysicalDeviceDataGraphFeaturesARM
p = do
dataGraph <- forall a. Storable a => Ptr a -> IO a
peek @Bool32 ((Ptr PhysicalDeviceDataGraphFeaturesARM
p Ptr PhysicalDeviceDataGraphFeaturesARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Bool32))
dataGraphUpdateAfterBind <- peek @Bool32 ((p `plusPtr` 20 :: Ptr Bool32))
dataGraphSpecializationConstants <- peek @Bool32 ((p `plusPtr` 24 :: Ptr Bool32))
dataGraphDescriptorBuffer <- peek @Bool32 ((p `plusPtr` 28 :: Ptr Bool32))
dataGraphShaderModule <- peek @Bool32 ((p `plusPtr` 32 :: Ptr Bool32))
pure $ PhysicalDeviceDataGraphFeaturesARM
(bool32ToBool dataGraph)
(bool32ToBool dataGraphUpdateAfterBind)
(bool32ToBool dataGraphSpecializationConstants)
(bool32ToBool dataGraphDescriptorBuffer)
(bool32ToBool dataGraphShaderModule)
instance Storable PhysicalDeviceDataGraphFeaturesARM where
sizeOf :: PhysicalDeviceDataGraphFeaturesARM -> Int
sizeOf ~PhysicalDeviceDataGraphFeaturesARM
_ = Int
40
alignment :: PhysicalDeviceDataGraphFeaturesARM -> Int
alignment ~PhysicalDeviceDataGraphFeaturesARM
_ = Int
8
peek :: Ptr PhysicalDeviceDataGraphFeaturesARM
-> IO PhysicalDeviceDataGraphFeaturesARM
peek = Ptr PhysicalDeviceDataGraphFeaturesARM
-> IO PhysicalDeviceDataGraphFeaturesARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> IO ()
poke Ptr PhysicalDeviceDataGraphFeaturesARM
ptr PhysicalDeviceDataGraphFeaturesARM
poked = Ptr PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> IO () -> IO ()
forall b.
Ptr PhysicalDeviceDataGraphFeaturesARM
-> PhysicalDeviceDataGraphFeaturesARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphFeaturesARM
ptr PhysicalDeviceDataGraphFeaturesARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceDataGraphFeaturesARM where
zero :: PhysicalDeviceDataGraphFeaturesARM
zero = Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> PhysicalDeviceDataGraphFeaturesARM
PhysicalDeviceDataGraphFeaturesARM
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 DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM = DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
{
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Word32
dimension :: Word32
,
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Word32
zeroCount :: Word32
,
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Word32
groupSize :: Word32
}
deriving (Typeable, DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool
(DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool)
-> (DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool)
-> Eq DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool
== :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool
$c/= :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool
/= :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM)
#endif
deriving instance Show DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
instance ToCStruct DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM where
withCStruct :: forall b.
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> (Ptr
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b)
-> IO b
withCStruct DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
x Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b
f = Int
-> (Ptr
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b)
-> IO b)
-> (Ptr
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p -> Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b
-> IO b
forall b.
Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
x (Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b
f Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b
-> IO b
pokeCStruct Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM{Word32
dimension :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Word32
zeroCount :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Word32
groupSize :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Word32
dimension :: Word32
zeroCount :: Word32
groupSize :: Word32
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_TENSOR_SEMI_STRUCTURED_SPARSITY_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> 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 DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
dimension)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Word32)) (Word32
zeroCount)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word32)) (Word32
groupSize)
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_TENSOR_SEMI_STRUCTURED_SPARSITY_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> 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 DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> 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 DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM where
peekCStruct :: Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
peekCStruct Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p = do
dimension <- forall a. Storable a => Ptr a -> IO a
peek @Word32 ((Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
p Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32))
zeroCount <- peek @Word32 ((p `plusPtr` 20 :: Ptr Word32))
groupSize <- peek @Word32 ((p `plusPtr` 24 :: Ptr Word32))
pure $ DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
dimension zeroCount groupSize
instance Storable DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM where
sizeOf :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM -> Int
sizeOf ~DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
_ = Int
32
alignment :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM -> Int
alignment ~DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
_ = Int
8
peek :: Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
peek = Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO ()
poke Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
poked = Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO ()
-> IO ()
forall b.
Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
ptr DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM where
zero :: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
zero = Word32
-> Word32
-> Word32
-> DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
Word32
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
data DataGraphPipelineConstantARM (es :: [Type]) = DataGraphPipelineConstantARM
{
forall (es :: [*]). DataGraphPipelineConstantARM es -> Chain es
next :: Chain es
,
forall (es :: [*]). DataGraphPipelineConstantARM es -> Word32
id' :: Word32
,
forall (es :: [*]). DataGraphPipelineConstantARM es -> Ptr ()
constantData :: Ptr ()
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineConstantARM (es :: [Type]))
#endif
deriving instance Show (Chain es) => Show (DataGraphPipelineConstantARM es)
instance Extensible DataGraphPipelineConstantARM where
extensibleTypeName :: String
extensibleTypeName = String
"DataGraphPipelineConstantARM"
setNext :: forall (ds :: [*]) (es :: [*]).
DataGraphPipelineConstantARM ds
-> Chain es -> DataGraphPipelineConstantARM es
setNext DataGraphPipelineConstantARM{Word32
Ptr ()
Chain ds
next :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Chain es
id' :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Word32
constantData :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Ptr ()
next :: Chain ds
id' :: Word32
constantData :: Ptr ()
..} Chain es
next' = DataGraphPipelineConstantARM{next :: Chain es
next = Chain es
next', Word32
Ptr ()
id' :: Word32
constantData :: Ptr ()
id' :: Word32
constantData :: Ptr ()
..}
getNext :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Chain es
getNext DataGraphPipelineConstantARM{Word32
Ptr ()
Chain es
next :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Chain es
id' :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Word32
constantData :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Ptr ()
next :: Chain es
id' :: Word32
constantData :: Ptr ()
..} = Chain es
next
extends :: forall e b proxy. Typeable e => proxy e -> (Extends DataGraphPipelineConstantARM e => b) -> Maybe b
extends :: forall e b (proxy :: * -> *).
Typeable e =>
proxy e -> (Extends DataGraphPipelineConstantARM e => b) -> Maybe b
extends proxy e
_ Extends DataGraphPipelineConstantARM e => b
f
| Just e :~: DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineConstantARM e => b
f
| Just e :~: TensorDescriptionARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @TensorDescriptionARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineConstantARM e => b
f
| Bool
otherwise = Maybe b
forall a. Maybe a
Nothing
instance ( Extendss DataGraphPipelineConstantARM es
, PokeChain es ) => ToCStruct (DataGraphPipelineConstantARM es) where
withCStruct :: forall b.
DataGraphPipelineConstantARM es
-> (Ptr (DataGraphPipelineConstantARM es) -> IO b) -> IO b
withCStruct DataGraphPipelineConstantARM es
x Ptr (DataGraphPipelineConstantARM es) -> IO b
f = Int -> (Ptr (DataGraphPipelineConstantARM es) -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr (DataGraphPipelineConstantARM es) -> IO b) -> IO b)
-> (Ptr (DataGraphPipelineConstantARM es) -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr (DataGraphPipelineConstantARM es)
p -> Ptr (DataGraphPipelineConstantARM es)
-> DataGraphPipelineConstantARM es -> IO b -> IO b
forall b.
Ptr (DataGraphPipelineConstantARM es)
-> DataGraphPipelineConstantARM es -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr (DataGraphPipelineConstantARM es)
p DataGraphPipelineConstantARM es
x (Ptr (DataGraphPipelineConstantARM es) -> IO b
f Ptr (DataGraphPipelineConstantARM es)
p)
pokeCStruct :: forall b.
Ptr (DataGraphPipelineConstantARM es)
-> DataGraphPipelineConstantARM es -> IO b -> IO b
pokeCStruct Ptr (DataGraphPipelineConstantARM es)
p DataGraphPipelineConstantARM{Word32
Ptr ()
Chain es
next :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Chain es
id' :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Word32
constantData :: forall (es :: [*]). DataGraphPipelineConstantARM es -> Ptr ()
next :: Chain es
id' :: Word32
constantData :: Ptr ()
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DataGraphPipelineConstantARM es)
p Ptr (DataGraphPipelineConstantARM es) -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_ARM)
pNext'' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ Chain es -> (Ptr (Chain es) -> IO b) -> IO b
forall (es :: [*]) a.
PokeChain es =>
Chain es -> (Ptr (Chain es) -> IO a) -> IO a
forall a. Chain es -> (Ptr (Chain es) -> IO a) -> IO a
withChain (Chain es
next)
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext''
lift $ poke ((p `plusPtr` 16 :: Ptr Word32)) (id')
lift $ poke ((p `plusPtr` 24 :: Ptr (Ptr ()))) (constantData)
lift $ f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr (DataGraphPipelineConstantARM es) -> IO b -> IO b
pokeZeroCStruct Ptr (DataGraphPipelineConstantARM es)
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DataGraphPipelineConstantARM es)
p Ptr (DataGraphPipelineConstantARM es) -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_ARM)
pNext' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ forall (es :: [*]) a.
PokeChain es =>
(Ptr (Chain es) -> IO a) -> IO a
withZeroChain @es
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext'
lift $ poke ((p `plusPtr` 16 :: Ptr Word32)) (zero)
lift $ poke ((p `plusPtr` 24 :: Ptr (Ptr ()))) (zero)
lift $ f
instance ( Extendss DataGraphPipelineConstantARM es
, PeekChain es ) => FromCStruct (DataGraphPipelineConstantARM es) where
peekCStruct :: Ptr (DataGraphPipelineConstantARM es)
-> IO (DataGraphPipelineConstantARM es)
peekCStruct Ptr (DataGraphPipelineConstantARM es)
p = do
pNext <- forall a. Storable a => Ptr a -> IO a
peek @(Ptr ()) ((Ptr (DataGraphPipelineConstantARM es)
p Ptr (DataGraphPipelineConstantARM es) -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ())))
next <- peekChain (castPtr pNext)
id' <- peek @Word32 ((p `plusPtr` 16 :: Ptr Word32))
pConstantData <- peek @(Ptr ()) ((p `plusPtr` 24 :: Ptr (Ptr ())))
pure $ DataGraphPipelineConstantARM
next id' pConstantData
instance es ~ '[] => Zero (DataGraphPipelineConstantARM es) where
zero :: DataGraphPipelineConstantARM es
zero = Chain es -> Word32 -> Ptr () -> DataGraphPipelineConstantARM es
forall (es :: [*]).
Chain es -> Word32 -> Ptr () -> DataGraphPipelineConstantARM es
DataGraphPipelineConstantARM
()
Word32
forall a. Zero a => a
zero
Ptr ()
forall a. Zero a => a
zero
data DataGraphPipelineResourceInfoARM (es :: [Type]) = DataGraphPipelineResourceInfoARM
{
forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Chain es
next :: Chain es
,
forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
descriptorSet :: Word32
,
forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
binding :: Word32
,
forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
arrayElement :: Word32
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineResourceInfoARM (es :: [Type]))
#endif
deriving instance Show (Chain es) => Show (DataGraphPipelineResourceInfoARM es)
instance Extensible DataGraphPipelineResourceInfoARM where
extensibleTypeName :: String
extensibleTypeName = String
"DataGraphPipelineResourceInfoARM"
setNext :: forall (ds :: [*]) (es :: [*]).
DataGraphPipelineResourceInfoARM ds
-> Chain es -> DataGraphPipelineResourceInfoARM es
setNext DataGraphPipelineResourceInfoARM{Word32
Chain ds
next :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Chain es
descriptorSet :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
binding :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
arrayElement :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
next :: Chain ds
descriptorSet :: Word32
binding :: Word32
arrayElement :: Word32
..} Chain es
next' = DataGraphPipelineResourceInfoARM{next :: Chain es
next = Chain es
next', Word32
descriptorSet :: Word32
binding :: Word32
arrayElement :: Word32
descriptorSet :: Word32
binding :: Word32
arrayElement :: Word32
..}
getNext :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Chain es
getNext DataGraphPipelineResourceInfoARM{Word32
Chain es
next :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Chain es
descriptorSet :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
binding :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
arrayElement :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
next :: Chain es
descriptorSet :: Word32
binding :: Word32
arrayElement :: Word32
..} = Chain es
next
extends :: forall e b proxy. Typeable e => proxy e -> (Extends DataGraphPipelineResourceInfoARM e => b) -> Maybe b
extends :: forall e b (proxy :: * -> *).
Typeable e =>
proxy e
-> (Extends DataGraphPipelineResourceInfoARM e => b) -> Maybe b
extends proxy e
_ Extends DataGraphPipelineResourceInfoARM e => b
f
| Just e :~: TensorDescriptionARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @TensorDescriptionARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineResourceInfoARM e => b
f
| Bool
otherwise = Maybe b
forall a. Maybe a
Nothing
instance ( Extendss DataGraphPipelineResourceInfoARM es
, PokeChain es ) => ToCStruct (DataGraphPipelineResourceInfoARM es) where
withCStruct :: forall b.
DataGraphPipelineResourceInfoARM es
-> (Ptr (DataGraphPipelineResourceInfoARM es) -> IO b) -> IO b
withCStruct DataGraphPipelineResourceInfoARM es
x Ptr (DataGraphPipelineResourceInfoARM es) -> IO b
f = Int -> (Ptr (DataGraphPipelineResourceInfoARM es) -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr (DataGraphPipelineResourceInfoARM es) -> IO b) -> IO b)
-> (Ptr (DataGraphPipelineResourceInfoARM es) -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr (DataGraphPipelineResourceInfoARM es)
p -> Ptr (DataGraphPipelineResourceInfoARM es)
-> DataGraphPipelineResourceInfoARM es -> IO b -> IO b
forall b.
Ptr (DataGraphPipelineResourceInfoARM es)
-> DataGraphPipelineResourceInfoARM es -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr (DataGraphPipelineResourceInfoARM es)
p DataGraphPipelineResourceInfoARM es
x (Ptr (DataGraphPipelineResourceInfoARM es) -> IO b
f Ptr (DataGraphPipelineResourceInfoARM es)
p)
pokeCStruct :: forall b.
Ptr (DataGraphPipelineResourceInfoARM es)
-> DataGraphPipelineResourceInfoARM es -> IO b -> IO b
pokeCStruct Ptr (DataGraphPipelineResourceInfoARM es)
p DataGraphPipelineResourceInfoARM{Word32
Chain es
next :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Chain es
descriptorSet :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
binding :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
arrayElement :: forall (es :: [*]). DataGraphPipelineResourceInfoARM es -> Word32
next :: Chain es
descriptorSet :: Word32
binding :: Word32
arrayElement :: Word32
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DataGraphPipelineResourceInfoARM es)
p Ptr (DataGraphPipelineResourceInfoARM es)
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_RESOURCE_INFO_ARM)
pNext'' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ Chain es -> (Ptr (Chain es) -> IO b) -> IO b
forall (es :: [*]) a.
PokeChain es =>
Chain es -> (Ptr (Chain es) -> IO a) -> IO a
forall a. Chain es -> (Ptr (Chain es) -> IO a) -> IO a
withChain (Chain es
next)
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext''
lift $ poke ((p `plusPtr` 16 :: Ptr Word32)) (descriptorSet)
lift $ poke ((p `plusPtr` 20 :: Ptr Word32)) (binding)
lift $ poke ((p `plusPtr` 24 :: Ptr Word32)) (arrayElement)
lift $ f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr (DataGraphPipelineResourceInfoARM es) -> IO b -> IO b
pokeZeroCStruct Ptr (DataGraphPipelineResourceInfoARM es)
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DataGraphPipelineResourceInfoARM es)
p Ptr (DataGraphPipelineResourceInfoARM es)
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_RESOURCE_INFO_ARM)
pNext' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ forall (es :: [*]) a.
PokeChain es =>
(Ptr (Chain es) -> IO a) -> IO a
withZeroChain @es
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext'
lift $ poke ((p `plusPtr` 16 :: Ptr Word32)) (zero)
lift $ poke ((p `plusPtr` 20 :: Ptr Word32)) (zero)
lift $ f
instance ( Extendss DataGraphPipelineResourceInfoARM es
, PeekChain es ) => FromCStruct (DataGraphPipelineResourceInfoARM es) where
peekCStruct :: Ptr (DataGraphPipelineResourceInfoARM es)
-> IO (DataGraphPipelineResourceInfoARM es)
peekCStruct Ptr (DataGraphPipelineResourceInfoARM es)
p = do
pNext <- forall a. Storable a => Ptr a -> IO a
peek @(Ptr ()) ((Ptr (DataGraphPipelineResourceInfoARM es)
p Ptr (DataGraphPipelineResourceInfoARM es) -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ())))
next <- peekChain (castPtr pNext)
descriptorSet <- peek @Word32 ((p `plusPtr` 16 :: Ptr Word32))
binding <- peek @Word32 ((p `plusPtr` 20 :: Ptr Word32))
arrayElement <- peek @Word32 ((p `plusPtr` 24 :: Ptr Word32))
pure $ DataGraphPipelineResourceInfoARM
next descriptorSet binding arrayElement
instance es ~ '[] => Zero (DataGraphPipelineResourceInfoARM es) where
zero :: DataGraphPipelineResourceInfoARM es
zero = Chain es
-> Word32
-> Word32
-> Word32
-> DataGraphPipelineResourceInfoARM es
forall (es :: [*]).
Chain es
-> Word32
-> Word32
-> Word32
-> DataGraphPipelineResourceInfoARM es
DataGraphPipelineResourceInfoARM
()
Word32
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
data DataGraphPipelineCompilerControlCreateInfoARM = DataGraphPipelineCompilerControlCreateInfoARM
{
DataGraphPipelineCompilerControlCreateInfoARM -> ByteString
vendorOptions :: ByteString }
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineCompilerControlCreateInfoARM)
#endif
deriving instance Show DataGraphPipelineCompilerControlCreateInfoARM
instance ToCStruct DataGraphPipelineCompilerControlCreateInfoARM where
withCStruct :: forall b.
DataGraphPipelineCompilerControlCreateInfoARM
-> (Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b)
-> IO b
withCStruct DataGraphPipelineCompilerControlCreateInfoARM
x Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b
f = Int
-> (Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b)
-> IO b)
-> (Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineCompilerControlCreateInfoARM
p -> Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> DataGraphPipelineCompilerControlCreateInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> DataGraphPipelineCompilerControlCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineCompilerControlCreateInfoARM
p DataGraphPipelineCompilerControlCreateInfoARM
x (Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b
f Ptr DataGraphPipelineCompilerControlCreateInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> DataGraphPipelineCompilerControlCreateInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineCompilerControlCreateInfoARM
p DataGraphPipelineCompilerControlCreateInfoARM{ByteString
vendorOptions :: DataGraphPipelineCompilerControlCreateInfoARM -> ByteString
vendorOptions :: ByteString
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineCompilerControlCreateInfoARM
p Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_COMPILER_CONTROL_CREATE_INFO_ARM)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineCompilerControlCreateInfoARM
p Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
pVendorOptions'' <- ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
vendorOptions)
lift $ poke ((p `plusPtr` 16 :: Ptr (Ptr CChar))) pVendorOptions''
lift $ f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineCompilerControlCreateInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineCompilerControlCreateInfoARM
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineCompilerControlCreateInfoARM
p Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_COMPILER_CONTROL_CREATE_INFO_ARM)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineCompilerControlCreateInfoARM
p Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
pVendorOptions'' <- ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
forall a. Monoid a => a
mempty)
lift $ poke ((p `plusPtr` 16 :: Ptr (Ptr CChar))) pVendorOptions''
lift $ f
instance FromCStruct DataGraphPipelineCompilerControlCreateInfoARM where
peekCStruct :: Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> IO DataGraphPipelineCompilerControlCreateInfoARM
peekCStruct Ptr DataGraphPipelineCompilerControlCreateInfoARM
p = do
pVendorOptions <- Ptr CChar -> IO ByteString
packCString (Ptr CChar -> IO ByteString) -> IO (Ptr CChar) -> IO ByteString
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Ptr (Ptr CChar) -> IO (Ptr CChar)
forall a. Storable a => Ptr a -> IO a
peek ((Ptr DataGraphPipelineCompilerControlCreateInfoARM
p Ptr DataGraphPipelineCompilerControlCreateInfoARM
-> Int -> Ptr (Ptr CChar)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr (Ptr CChar)))
pure $ DataGraphPipelineCompilerControlCreateInfoARM
pVendorOptions
instance Zero DataGraphPipelineCompilerControlCreateInfoARM where
zero :: DataGraphPipelineCompilerControlCreateInfoARM
zero = ByteString -> DataGraphPipelineCompilerControlCreateInfoARM
DataGraphPipelineCompilerControlCreateInfoARM
ByteString
forall a. Monoid a => a
mempty
data DataGraphPipelineCreateInfoARM (es :: [Type]) = DataGraphPipelineCreateInfoARM
{
forall (es :: [*]). DataGraphPipelineCreateInfoARM es -> Chain es
next :: Chain es
,
forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineCreateFlags2KHR
flags :: PipelineCreateFlags2KHR
,
forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineLayout
layout :: PipelineLayout
,
forall (es :: [*]).
DataGraphPipelineCreateInfoARM es
-> Vector (SomeStruct DataGraphPipelineResourceInfoARM)
resourceInfos :: Vector (SomeStruct DataGraphPipelineResourceInfoARM)
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineCreateInfoARM (es :: [Type]))
#endif
deriving instance Show (Chain es) => Show (DataGraphPipelineCreateInfoARM es)
instance Extensible DataGraphPipelineCreateInfoARM where
extensibleTypeName :: String
extensibleTypeName = String
"DataGraphPipelineCreateInfoARM"
setNext :: forall (ds :: [*]) (es :: [*]).
DataGraphPipelineCreateInfoARM ds
-> Chain es -> DataGraphPipelineCreateInfoARM es
setNext DataGraphPipelineCreateInfoARM{Vector (SomeStruct DataGraphPipelineResourceInfoARM)
PipelineCreateFlags2KHR
PipelineLayout
Chain ds
next :: forall (es :: [*]). DataGraphPipelineCreateInfoARM es -> Chain es
flags :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineCreateFlags2KHR
layout :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineLayout
resourceInfos :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es
-> Vector (SomeStruct DataGraphPipelineResourceInfoARM)
next :: Chain ds
flags :: PipelineCreateFlags2KHR
layout :: PipelineLayout
resourceInfos :: Vector (SomeStruct DataGraphPipelineResourceInfoARM)
..} Chain es
next' = DataGraphPipelineCreateInfoARM{next :: Chain es
next = Chain es
next', Vector (SomeStruct DataGraphPipelineResourceInfoARM)
PipelineCreateFlags2KHR
PipelineLayout
flags :: PipelineCreateFlags2KHR
layout :: PipelineLayout
resourceInfos :: Vector (SomeStruct DataGraphPipelineResourceInfoARM)
flags :: PipelineCreateFlags2KHR
layout :: PipelineLayout
resourceInfos :: Vector (SomeStruct DataGraphPipelineResourceInfoARM)
..}
getNext :: forall (es :: [*]). DataGraphPipelineCreateInfoARM es -> Chain es
getNext DataGraphPipelineCreateInfoARM{Vector (SomeStruct DataGraphPipelineResourceInfoARM)
PipelineCreateFlags2KHR
PipelineLayout
Chain es
next :: forall (es :: [*]). DataGraphPipelineCreateInfoARM es -> Chain es
flags :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineCreateFlags2KHR
layout :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineLayout
resourceInfos :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es
-> Vector (SomeStruct DataGraphPipelineResourceInfoARM)
next :: Chain es
flags :: PipelineCreateFlags2KHR
layout :: PipelineLayout
resourceInfos :: Vector (SomeStruct DataGraphPipelineResourceInfoARM)
..} = Chain es
next
extends :: forall e b proxy. Typeable e => proxy e -> (Extends DataGraphPipelineCreateInfoARM e => b) -> Maybe b
extends :: forall e b (proxy :: * -> *).
Typeable e =>
proxy e
-> (Extends DataGraphPipelineCreateInfoARM e => b) -> Maybe b
extends proxy e
_ Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: DataGraphPipelineBuiltinModelCreateInfoQCOM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DataGraphPipelineBuiltinModelCreateInfoQCOM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: DataGraphProcessingEngineCreateInfoARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DataGraphProcessingEngineCreateInfoARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: DataGraphPipelineIdentifierCreateInfoARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DataGraphPipelineIdentifierCreateInfoARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: DataGraphPipelineShaderModuleCreateInfoARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DataGraphPipelineShaderModuleCreateInfoARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: DataGraphPipelineCompilerControlCreateInfoARM
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @DataGraphPipelineCompilerControlCreateInfoARM = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: PipelineCreationFeedbackCreateInfo
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @PipelineCreationFeedbackCreateInfo = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Just e :~: ShaderModuleCreateInfo '[]
Refl <- forall {k} (a :: k) (b :: k).
(Typeable a, Typeable b) =>
Maybe (a :~: b)
forall a b. (Typeable a, Typeable b) => Maybe (a :~: b)
eqT @e @(ShaderModuleCreateInfo '[]) = b -> Maybe b
forall a. a -> Maybe a
Just b
Extends DataGraphPipelineCreateInfoARM e => b
f
| Bool
otherwise = Maybe b
forall a. Maybe a
Nothing
instance ( Extendss DataGraphPipelineCreateInfoARM es
, PokeChain es ) => ToCStruct (DataGraphPipelineCreateInfoARM es) where
withCStruct :: forall b.
DataGraphPipelineCreateInfoARM es
-> (Ptr (DataGraphPipelineCreateInfoARM es) -> IO b) -> IO b
withCStruct DataGraphPipelineCreateInfoARM es
x Ptr (DataGraphPipelineCreateInfoARM es) -> IO b
f = Int -> (Ptr (DataGraphPipelineCreateInfoARM es) -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
48 ((Ptr (DataGraphPipelineCreateInfoARM es) -> IO b) -> IO b)
-> (Ptr (DataGraphPipelineCreateInfoARM es) -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr (DataGraphPipelineCreateInfoARM es)
p -> Ptr (DataGraphPipelineCreateInfoARM es)
-> DataGraphPipelineCreateInfoARM es -> IO b -> IO b
forall b.
Ptr (DataGraphPipelineCreateInfoARM es)
-> DataGraphPipelineCreateInfoARM es -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr (DataGraphPipelineCreateInfoARM es)
p DataGraphPipelineCreateInfoARM es
x (Ptr (DataGraphPipelineCreateInfoARM es) -> IO b
f Ptr (DataGraphPipelineCreateInfoARM es)
p)
pokeCStruct :: forall b.
Ptr (DataGraphPipelineCreateInfoARM es)
-> DataGraphPipelineCreateInfoARM es -> IO b -> IO b
pokeCStruct Ptr (DataGraphPipelineCreateInfoARM es)
p DataGraphPipelineCreateInfoARM{Vector (SomeStruct DataGraphPipelineResourceInfoARM)
PipelineCreateFlags2KHR
PipelineLayout
Chain es
next :: forall (es :: [*]). DataGraphPipelineCreateInfoARM es -> Chain es
flags :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineCreateFlags2KHR
layout :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es -> PipelineLayout
resourceInfos :: forall (es :: [*]).
DataGraphPipelineCreateInfoARM es
-> Vector (SomeStruct DataGraphPipelineResourceInfoARM)
next :: Chain es
flags :: PipelineCreateFlags2KHR
layout :: PipelineLayout
resourceInfos :: Vector (SomeStruct DataGraphPipelineResourceInfoARM)
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DataGraphPipelineCreateInfoARM es)
p Ptr (DataGraphPipelineCreateInfoARM es) -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CREATE_INFO_ARM)
pNext'' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ Chain es -> (Ptr (Chain es) -> IO b) -> IO b
forall (es :: [*]) a.
PokeChain es =>
Chain es -> (Ptr (Chain es) -> IO a) -> IO a
forall a. Chain es -> (Ptr (Chain es) -> IO a) -> IO a
withChain (Chain es
next)
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext''
lift $ poke ((p `plusPtr` 16 :: Ptr PipelineCreateFlags2KHR)) (flags)
lift $ poke ((p `plusPtr` 24 :: Ptr PipelineLayout)) (layout)
lift $ poke ((p `plusPtr` 32 :: Ptr Word32)) ((fromIntegral (Data.Vector.length $ (resourceInfos)) :: Word32))
pPResourceInfos' <- ContT $ allocaBytes @(DataGraphPipelineResourceInfoARM _) ((Data.Vector.length (resourceInfos)) * 32)
Data.Vector.imapM_ (\Int
i SomeStruct DataGraphPipelineResourceInfoARM
e -> ((() -> IO b) -> IO b) -> ContT b IO ()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((() -> IO b) -> IO b) -> ContT b IO ())
-> ((() -> IO b) -> IO b) -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (SomeStruct DataGraphPipelineResourceInfoARM)
-> SomeStruct DataGraphPipelineResourceInfoARM -> IO b -> IO b
forall (a :: [*] -> *) b.
(forall (es :: [*]).
(Extendss a es, PokeChain es) =>
ToCStruct (a es)) =>
Ptr (SomeStruct a) -> SomeStruct a -> IO b -> IO b
pokeSomeCStruct (Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 3))
-> Ptr (SomeStruct DataGraphPipelineResourceInfoARM)
forall (a :: [*] -> *) (es :: [*]).
Ptr (a es) -> Ptr (SomeStruct a)
forgetExtensions (Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 2))
pPResourceInfos' Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 2))
-> Int -> Ptr (DataGraphPipelineResourceInfoARM w)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
32 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr (DataGraphPipelineResourceInfoARM _))) (SomeStruct DataGraphPipelineResourceInfoARM
e) (IO b -> IO b) -> ((() -> IO b) -> IO b) -> (() -> IO b) -> IO b
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((() -> IO b) -> () -> IO b
forall a b. (a -> b) -> a -> b
$ ())) (resourceInfos)
lift $ poke ((p `plusPtr` 40 :: Ptr (Ptr (DataGraphPipelineResourceInfoARM _)))) (pPResourceInfos')
lift $ f
cStructSize :: Int
cStructSize = Int
48
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr (DataGraphPipelineCreateInfoARM es) -> IO b -> IO b
pokeZeroCStruct Ptr (DataGraphPipelineCreateInfoARM es)
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr (DataGraphPipelineCreateInfoARM es)
p Ptr (DataGraphPipelineCreateInfoARM es) -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CREATE_INFO_ARM)
pNext' <- (Ptr (Chain es) -> Ptr ())
-> ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> ContT b IO a -> ContT b IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ptr (Chain es) -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr (ContT b IO (Ptr (Chain es)) -> ContT b IO (Ptr ()))
-> (((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr (Chain es)))
-> ((Ptr (Chain es) -> IO b) -> IO b)
-> ContT b IO (Ptr ())
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr (Chain es))
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ()))
-> ((Ptr (Chain es) -> IO b) -> IO b) -> ContT b IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ forall (es :: [*]) a.
PokeChain es =>
(Ptr (Chain es) -> IO a) -> IO a
withZeroChain @es
lift $ poke ((p `plusPtr` 8 :: Ptr (Ptr ()))) pNext'
lift $ poke ((p `plusPtr` 24 :: Ptr PipelineLayout)) (zero)
lift $ f
instance ( Extendss DataGraphPipelineCreateInfoARM es
, PeekChain es ) => FromCStruct (DataGraphPipelineCreateInfoARM es) where
peekCStruct :: Ptr (DataGraphPipelineCreateInfoARM es)
-> IO (DataGraphPipelineCreateInfoARM es)
peekCStruct Ptr (DataGraphPipelineCreateInfoARM es)
p = do
pNext <- forall a. Storable a => Ptr a -> IO a
peek @(Ptr ()) ((Ptr (DataGraphPipelineCreateInfoARM es)
p Ptr (DataGraphPipelineCreateInfoARM es) -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ())))
next <- peekChain (castPtr pNext)
flags <- peek @PipelineCreateFlags2KHR ((p `plusPtr` 16 :: Ptr PipelineCreateFlags2KHR))
layout <- peek @PipelineLayout ((p `plusPtr` 24 :: Ptr PipelineLayout))
resourceInfoCount <- peek @Word32 ((p `plusPtr` 32 :: Ptr Word32))
pResourceInfos <- peek @(Ptr (DataGraphPipelineResourceInfoARM _)) ((p `plusPtr` 40 :: Ptr (Ptr (DataGraphPipelineResourceInfoARM _))))
pResourceInfos' <- generateM (fromIntegral resourceInfoCount) (\Int
i -> Ptr (SomeStruct DataGraphPipelineResourceInfoARM)
-> IO (SomeStruct DataGraphPipelineResourceInfoARM)
forall (a :: [*] -> *).
(Extensible a,
forall (es :: [*]).
(Extendss a es, PeekChain es) =>
FromCStruct (a es)) =>
Ptr (SomeStruct a) -> IO (SomeStruct a)
peekSomeCStruct (Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 4))
-> Ptr (SomeStruct DataGraphPipelineResourceInfoARM)
forall (a :: [*] -> *) (es :: [*]).
Ptr (a es) -> Ptr (SomeStruct a)
forgetExtensions ((Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 4))
pResourceInfos Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 4))
-> Int -> Ptr (DataGraphPipelineResourceInfoARM (ZonkAny 4))
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
32 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr (DataGraphPipelineResourceInfoARM _)))))
pure $ DataGraphPipelineCreateInfoARM
next flags layout pResourceInfos'
instance es ~ '[] => Zero (DataGraphPipelineCreateInfoARM es) where
zero :: DataGraphPipelineCreateInfoARM es
zero = Chain es
-> PipelineCreateFlags2KHR
-> PipelineLayout
-> Vector (SomeStruct DataGraphPipelineResourceInfoARM)
-> DataGraphPipelineCreateInfoARM es
forall (es :: [*]).
Chain es
-> PipelineCreateFlags2KHR
-> PipelineLayout
-> Vector (SomeStruct DataGraphPipelineResourceInfoARM)
-> DataGraphPipelineCreateInfoARM es
DataGraphPipelineCreateInfoARM
()
PipelineCreateFlags2KHR
forall a. Zero a => a
zero
PipelineLayout
forall a. Zero a => a
zero
Vector (SomeStruct DataGraphPipelineResourceInfoARM)
forall a. Monoid a => a
mempty
data DataGraphPipelineShaderModuleCreateInfoARM = DataGraphPipelineShaderModuleCreateInfoARM
{
DataGraphPipelineShaderModuleCreateInfoARM -> ShaderModule
module' :: ShaderModule
,
DataGraphPipelineShaderModuleCreateInfoARM -> ByteString
name :: ByteString
,
DataGraphPipelineShaderModuleCreateInfoARM
-> Maybe SpecializationInfo
specializationInfo :: Maybe SpecializationInfo
,
DataGraphPipelineShaderModuleCreateInfoARM -> Word32
constantCount :: Word32
,
DataGraphPipelineShaderModuleCreateInfoARM
-> Vector (SomeStruct DataGraphPipelineConstantARM)
constants :: Vector (SomeStruct DataGraphPipelineConstantARM)
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineShaderModuleCreateInfoARM)
#endif
deriving instance Show DataGraphPipelineShaderModuleCreateInfoARM
instance ToCStruct DataGraphPipelineShaderModuleCreateInfoARM where
withCStruct :: forall b.
DataGraphPipelineShaderModuleCreateInfoARM
-> (Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b) -> IO b
withCStruct DataGraphPipelineShaderModuleCreateInfoARM
x Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b
f = Int
-> (Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
56 ((Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b) -> IO b)
-> (Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineShaderModuleCreateInfoARM
p -> Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> DataGraphPipelineShaderModuleCreateInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> DataGraphPipelineShaderModuleCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineShaderModuleCreateInfoARM
p DataGraphPipelineShaderModuleCreateInfoARM
x (Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b
f Ptr DataGraphPipelineShaderModuleCreateInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> DataGraphPipelineShaderModuleCreateInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineShaderModuleCreateInfoARM
p DataGraphPipelineShaderModuleCreateInfoARM{Maybe SpecializationInfo
Word32
ByteString
Vector (SomeStruct DataGraphPipelineConstantARM)
ShaderModule
module' :: DataGraphPipelineShaderModuleCreateInfoARM -> ShaderModule
name :: DataGraphPipelineShaderModuleCreateInfoARM -> ByteString
specializationInfo :: DataGraphPipelineShaderModuleCreateInfoARM
-> Maybe SpecializationInfo
constantCount :: DataGraphPipelineShaderModuleCreateInfoARM -> Word32
constants :: DataGraphPipelineShaderModuleCreateInfoARM
-> Vector (SomeStruct DataGraphPipelineConstantARM)
module' :: ShaderModule
name :: ByteString
specializationInfo :: Maybe SpecializationInfo
constantCount :: Word32
constants :: Vector (SomeStruct DataGraphPipelineConstantARM)
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineShaderModuleCreateInfoARM
p Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SHADER_MODULE_CREATE_INFO_ARM)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineShaderModuleCreateInfoARM
p Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr ShaderModule -> ShaderModule -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineShaderModuleCreateInfoARM
p Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> Int -> Ptr ShaderModule
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ShaderModule)) (ShaderModule
module')
pName'' <- ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
name)
lift $ poke ((p `plusPtr` 24 :: Ptr (Ptr CChar))) pName''
pSpecializationInfo'' <- case (specializationInfo) of
Maybe SpecializationInfo
Nothing -> Ptr SpecializationInfo -> ContT b IO (Ptr SpecializationInfo)
forall a. a -> ContT b IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Ptr SpecializationInfo
forall a. Ptr a
nullPtr
Just SpecializationInfo
j -> ((Ptr SpecializationInfo -> IO b) -> IO b)
-> ContT b IO (Ptr SpecializationInfo)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr SpecializationInfo -> IO b) -> IO b)
-> ContT b IO (Ptr SpecializationInfo))
-> ((Ptr SpecializationInfo -> IO b) -> IO b)
-> ContT b IO (Ptr SpecializationInfo)
forall a b. (a -> b) -> a -> b
$ SpecializationInfo -> (Ptr SpecializationInfo -> IO b) -> IO b
forall a b. ToCStruct a => a -> (Ptr a -> IO b) -> IO b
forall b.
SpecializationInfo -> (Ptr SpecializationInfo -> IO b) -> IO b
withCStruct (SpecializationInfo
j)
lift $ poke ((p `plusPtr` 32 :: Ptr (Ptr SpecializationInfo))) pSpecializationInfo''
let pConstantsLength = Vector (SomeStruct DataGraphPipelineConstantARM) -> Int
forall a. Vector a -> Int
Data.Vector.length (Vector (SomeStruct DataGraphPipelineConstantARM) -> Int)
-> Vector (SomeStruct DataGraphPipelineConstantARM) -> Int
forall a b. (a -> b) -> a -> b
$ (Vector (SomeStruct DataGraphPipelineConstantARM)
constants)
constantCount'' <- lift $ if (constantCount) == 0
then pure $ fromIntegral pConstantsLength
else do
unless (fromIntegral pConstantsLength == (constantCount) || pConstantsLength == 0) $
throwIO $ IOError Nothing InvalidArgument "" "pConstants must be empty or have 'constantCount' elements" Nothing Nothing
pure (constantCount)
lift $ poke ((p `plusPtr` 40 :: Ptr Word32)) (constantCount'')
pConstants'' <- if Data.Vector.null (constants)
then pure nullPtr
else do
pPConstants <- ContT $ allocaBytes @(DataGraphPipelineConstantARM _) (((Data.Vector.length (constants))) * 32)
Data.Vector.imapM_ (\Int
i SomeStruct DataGraphPipelineConstantARM
e -> ((() -> IO b) -> IO b) -> ContT b IO ()
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((() -> IO b) -> IO b) -> ContT b IO ())
-> ((() -> IO b) -> IO b) -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (SomeStruct DataGraphPipelineConstantARM)
-> SomeStruct DataGraphPipelineConstantARM -> IO b -> IO b
forall (a :: [*] -> *) b.
(forall (es :: [*]).
(Extendss a es, PokeChain es) =>
ToCStruct (a es)) =>
Ptr (SomeStruct a) -> SomeStruct a -> IO b -> IO b
pokeSomeCStruct (Ptr (DataGraphPipelineConstantARM (ZonkAny 6))
-> Ptr (SomeStruct DataGraphPipelineConstantARM)
forall (a :: [*] -> *) (es :: [*]).
Ptr (a es) -> Ptr (SomeStruct a)
forgetExtensions (Ptr (DataGraphPipelineConstantARM (ZonkAny 5))
pPConstants Ptr (DataGraphPipelineConstantARM (ZonkAny 5))
-> Int -> Ptr (DataGraphPipelineConstantARM w)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
32 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr (DataGraphPipelineConstantARM _))) (SomeStruct DataGraphPipelineConstantARM
e) (IO b -> IO b) -> ((() -> IO b) -> IO b) -> (() -> IO b) -> IO b
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((() -> IO b) -> () -> IO b
forall a b. (a -> b) -> a -> b
$ ())) ((constants))
pure $ pPConstants
lift $ poke ((p `plusPtr` 48 :: Ptr (Ptr (DataGraphPipelineConstantARM _)))) pConstants''
lift $ f
cStructSize :: Int
cStructSize = Int
56
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineShaderModuleCreateInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineShaderModuleCreateInfoARM
p IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineShaderModuleCreateInfoARM
p Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SHADER_MODULE_CREATE_INFO_ARM)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineShaderModuleCreateInfoARM
p Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
pName'' <- ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar))
-> ((Ptr CChar -> IO b) -> IO b) -> ContT b IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ ByteString -> (Ptr CChar -> IO b) -> IO b
forall a. ByteString -> (Ptr CChar -> IO a) -> IO a
useAsCString (ByteString
forall a. Monoid a => a
mempty)
lift $ poke ((p `plusPtr` 24 :: Ptr (Ptr CChar))) pName''
lift $ f
instance FromCStruct DataGraphPipelineShaderModuleCreateInfoARM where
peekCStruct :: Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> IO DataGraphPipelineShaderModuleCreateInfoARM
peekCStruct Ptr DataGraphPipelineShaderModuleCreateInfoARM
p = do
module' <- forall a. Storable a => Ptr a -> IO a
peek @ShaderModule ((Ptr DataGraphPipelineShaderModuleCreateInfoARM
p Ptr DataGraphPipelineShaderModuleCreateInfoARM
-> Int -> Ptr ShaderModule
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ShaderModule))
pName <- packCString =<< peek ((p `plusPtr` 24 :: Ptr (Ptr CChar)))
pSpecializationInfo <- peek @(Ptr SpecializationInfo) ((p `plusPtr` 32 :: Ptr (Ptr SpecializationInfo)))
pSpecializationInfo' <- maybePeek (\Ptr SpecializationInfo
j -> forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @SpecializationInfo (Ptr SpecializationInfo
j)) pSpecializationInfo
constantCount <- peek @Word32 ((p `plusPtr` 40 :: Ptr Word32))
pConstants <- peek @(Ptr (DataGraphPipelineConstantARM _)) ((p `plusPtr` 48 :: Ptr (Ptr (DataGraphPipelineConstantARM _))))
let pConstantsLength = if Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
pConstants Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
-> Ptr (DataGraphPipelineConstantARM (ZonkAny 7)) -> Bool
forall a. Eq a => a -> a -> Bool
== Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
forall a. Ptr a
nullPtr then Int
0 else (Word32 -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral Word32
constantCount)
pConstants' <- generateM pConstantsLength (\Int
i -> Ptr (SomeStruct DataGraphPipelineConstantARM)
-> IO (SomeStruct DataGraphPipelineConstantARM)
forall (a :: [*] -> *).
(Extensible a,
forall (es :: [*]).
(Extendss a es, PeekChain es) =>
FromCStruct (a es)) =>
Ptr (SomeStruct a) -> IO (SomeStruct a)
peekSomeCStruct (Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
-> Ptr (SomeStruct DataGraphPipelineConstantARM)
forall (a :: [*] -> *) (es :: [*]).
Ptr (a es) -> Ptr (SomeStruct a)
forgetExtensions ((Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
pConstants Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
-> Int -> Ptr (DataGraphPipelineConstantARM (ZonkAny 7))
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
32 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr (DataGraphPipelineConstantARM _)))))
pure $ DataGraphPipelineShaderModuleCreateInfoARM
module' pName pSpecializationInfo' constantCount pConstants'
instance Zero DataGraphPipelineShaderModuleCreateInfoARM where
zero :: DataGraphPipelineShaderModuleCreateInfoARM
zero = ShaderModule
-> ByteString
-> Maybe SpecializationInfo
-> Word32
-> Vector (SomeStruct DataGraphPipelineConstantARM)
-> DataGraphPipelineShaderModuleCreateInfoARM
DataGraphPipelineShaderModuleCreateInfoARM
ShaderModule
forall a. Zero a => a
zero
ByteString
forall a. Monoid a => a
mempty
Maybe SpecializationInfo
forall a. Maybe a
Nothing
Word32
forall a. Zero a => a
zero
Vector (SomeStruct DataGraphPipelineConstantARM)
forall a. Monoid a => a
mempty
data DataGraphPipelineSessionCreateInfoARM = DataGraphPipelineSessionCreateInfoARM
{
DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateFlagsARM
flags :: DataGraphPipelineSessionCreateFlagsARM
,
DataGraphPipelineSessionCreateInfoARM -> Pipeline
dataGraphPipeline :: Pipeline
}
deriving (Typeable, DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool
(DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool)
-> (DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool)
-> Eq DataGraphPipelineSessionCreateInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool
== :: DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool
$c/= :: DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool
/= :: DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineSessionCreateInfoARM)
#endif
deriving instance Show DataGraphPipelineSessionCreateInfoARM
instance ToCStruct DataGraphPipelineSessionCreateInfoARM where
withCStruct :: forall b.
DataGraphPipelineSessionCreateInfoARM
-> (Ptr DataGraphPipelineSessionCreateInfoARM -> IO b) -> IO b
withCStruct DataGraphPipelineSessionCreateInfoARM
x Ptr DataGraphPipelineSessionCreateInfoARM -> IO b
f = Int -> (Ptr DataGraphPipelineSessionCreateInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr DataGraphPipelineSessionCreateInfoARM -> IO b) -> IO b)
-> (Ptr DataGraphPipelineSessionCreateInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineSessionCreateInfoARM
p -> Ptr DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionCreateInfoARM
p DataGraphPipelineSessionCreateInfoARM
x (Ptr DataGraphPipelineSessionCreateInfoARM -> IO b
f Ptr DataGraphPipelineSessionCreateInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionCreateInfoARM
p DataGraphPipelineSessionCreateInfoARM{Pipeline
DataGraphPipelineSessionCreateFlagsARM
flags :: DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateFlagsARM
dataGraphPipeline :: DataGraphPipelineSessionCreateInfoARM -> Pipeline
flags :: DataGraphPipelineSessionCreateFlagsARM
dataGraphPipeline :: Pipeline
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_CREATE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM
-> Int -> Ptr DataGraphPipelineSessionCreateFlagsARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionCreateFlagsARM)) (DataGraphPipelineSessionCreateFlagsARM
flags)
Ptr Pipeline -> Pipeline -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM -> Int -> Ptr Pipeline
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Pipeline)) (Pipeline
dataGraphPipeline)
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DataGraphPipelineSessionCreateInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineSessionCreateInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_CREATE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Pipeline -> Pipeline -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM -> Int -> Ptr Pipeline
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Pipeline)) (Pipeline
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphPipelineSessionCreateInfoARM where
peekCStruct :: Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionCreateInfoARM
peekCStruct Ptr DataGraphPipelineSessionCreateInfoARM
p = do
flags <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelineSessionCreateFlagsARM ((Ptr DataGraphPipelineSessionCreateInfoARM
p Ptr DataGraphPipelineSessionCreateInfoARM
-> Int -> Ptr DataGraphPipelineSessionCreateFlagsARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionCreateFlagsARM))
dataGraphPipeline <- peek @Pipeline ((p `plusPtr` 24 :: Ptr Pipeline))
pure $ DataGraphPipelineSessionCreateInfoARM
flags dataGraphPipeline
instance Storable DataGraphPipelineSessionCreateInfoARM where
sizeOf :: DataGraphPipelineSessionCreateInfoARM -> Int
sizeOf ~DataGraphPipelineSessionCreateInfoARM
_ = Int
32
alignment :: DataGraphPipelineSessionCreateInfoARM -> Int
alignment ~DataGraphPipelineSessionCreateInfoARM
_ = Int
8
peek :: Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionCreateInfoARM
peek = Ptr DataGraphPipelineSessionCreateInfoARM
-> IO DataGraphPipelineSessionCreateInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> IO ()
poke Ptr DataGraphPipelineSessionCreateInfoARM
ptr DataGraphPipelineSessionCreateInfoARM
poked = Ptr DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> IO () -> IO ()
forall b.
Ptr DataGraphPipelineSessionCreateInfoARM
-> DataGraphPipelineSessionCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionCreateInfoARM
ptr DataGraphPipelineSessionCreateInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineSessionCreateInfoARM where
zero :: DataGraphPipelineSessionCreateInfoARM
zero = DataGraphPipelineSessionCreateFlagsARM
-> Pipeline -> DataGraphPipelineSessionCreateInfoARM
DataGraphPipelineSessionCreateInfoARM
DataGraphPipelineSessionCreateFlagsARM
forall a. Zero a => a
zero
Pipeline
forall a. Zero a => a
zero
data DataGraphPipelineSessionBindPointRequirementsInfoARM = DataGraphPipelineSessionBindPointRequirementsInfoARM
{
DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionARM
session :: DataGraphPipelineSessionARM }
deriving (Typeable, DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool
(DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool)
-> (DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool)
-> Eq DataGraphPipelineSessionBindPointRequirementsInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool
== :: DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool
$c/= :: DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool
/= :: DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineSessionBindPointRequirementsInfoARM)
#endif
deriving instance Show DataGraphPipelineSessionBindPointRequirementsInfoARM
instance ToCStruct DataGraphPipelineSessionBindPointRequirementsInfoARM where
withCStruct :: forall b.
DataGraphPipelineSessionBindPointRequirementsInfoARM
-> (Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b)
-> IO b
withCStruct DataGraphPipelineSessionBindPointRequirementsInfoARM
x Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM -> IO b
f = Int
-> (Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM -> IO b)
-> IO b)
-> (Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p -> Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b
-> IO b
forall b.
Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p DataGraphPipelineSessionBindPointRequirementsInfoARM
x (Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM -> IO b
f Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b
-> IO b
pokeCStruct Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p DataGraphPipelineSessionBindPointRequirementsInfoARM{DataGraphPipelineSessionARM
session :: DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionARM
session :: DataGraphPipelineSessionARM
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_REQUIREMENTS_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionARM
-> DataGraphPipelineSessionARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM)) (DataGraphPipelineSessionARM
session)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_REQUIREMENTS_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionARM
-> DataGraphPipelineSessionARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM)) (DataGraphPipelineSessionARM
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphPipelineSessionBindPointRequirementsInfoARM where
peekCStruct :: Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO DataGraphPipelineSessionBindPointRequirementsInfoARM
peekCStruct Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p = do
session <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelineSessionARM ((Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
p Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM))
pure $ DataGraphPipelineSessionBindPointRequirementsInfoARM
session
instance Storable DataGraphPipelineSessionBindPointRequirementsInfoARM where
sizeOf :: DataGraphPipelineSessionBindPointRequirementsInfoARM -> Int
sizeOf ~DataGraphPipelineSessionBindPointRequirementsInfoARM
_ = Int
24
alignment :: DataGraphPipelineSessionBindPointRequirementsInfoARM -> Int
alignment ~DataGraphPipelineSessionBindPointRequirementsInfoARM
_ = Int
8
peek :: Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO DataGraphPipelineSessionBindPointRequirementsInfoARM
peek = Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO DataGraphPipelineSessionBindPointRequirementsInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM -> IO ()
poke Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
poked = Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO ()
-> IO ()
forall b.
Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
ptr DataGraphPipelineSessionBindPointRequirementsInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineSessionBindPointRequirementsInfoARM where
zero :: DataGraphPipelineSessionBindPointRequirementsInfoARM
zero = DataGraphPipelineSessionARM
-> DataGraphPipelineSessionBindPointRequirementsInfoARM
DataGraphPipelineSessionBindPointRequirementsInfoARM
DataGraphPipelineSessionARM
forall a. Zero a => a
zero
data DataGraphPipelineSessionBindPointRequirementARM = DataGraphPipelineSessionBindPointRequirementARM
{
DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointARM
bindPoint :: DataGraphPipelineSessionBindPointARM
,
DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointTypeARM
bindPointType :: DataGraphPipelineSessionBindPointTypeARM
,
DataGraphPipelineSessionBindPointRequirementARM -> Word32
numObjects :: Word32
}
deriving (Typeable, DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool
(DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool)
-> (DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool)
-> Eq DataGraphPipelineSessionBindPointRequirementARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool
== :: DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool
$c/= :: DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool
/= :: DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineSessionBindPointRequirementARM)
#endif
deriving instance Show DataGraphPipelineSessionBindPointRequirementARM
instance ToCStruct DataGraphPipelineSessionBindPointRequirementARM where
withCStruct :: forall b.
DataGraphPipelineSessionBindPointRequirementARM
-> (Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b)
-> IO b
withCStruct DataGraphPipelineSessionBindPointRequirementARM
x Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b
f = Int
-> (Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b)
-> IO b)
-> (Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineSessionBindPointRequirementARM
p -> Ptr DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionBindPointRequirementARM
p DataGraphPipelineSessionBindPointRequirementARM
x (Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b
f Ptr DataGraphPipelineSessionBindPointRequirementARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionBindPointRequirementARM
p DataGraphPipelineSessionBindPointRequirementARM{Word32
DataGraphPipelineSessionBindPointTypeARM
DataGraphPipelineSessionBindPointARM
bindPoint :: DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointARM
bindPointType :: DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointTypeARM
numObjects :: DataGraphPipelineSessionBindPointRequirementARM -> Word32
bindPoint :: DataGraphPipelineSessionBindPointARM
bindPointType :: DataGraphPipelineSessionBindPointTypeARM
numObjects :: Word32
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_REQUIREMENT_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionBindPointARM)) (DataGraphPipelineSessionBindPointARM
bindPoint)
Ptr DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr DataGraphPipelineSessionBindPointTypeARM)) (DataGraphPipelineSessionBindPointTypeARM
bindPointType)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word32)) (Word32
numObjects)
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineSessionBindPointRequirementARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineSessionBindPointRequirementARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_REQUIREMENT_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionBindPointARM)) (DataGraphPipelineSessionBindPointARM
forall a. Zero a => a
zero)
Ptr DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr DataGraphPipelineSessionBindPointTypeARM)) (DataGraphPipelineSessionBindPointTypeARM
forall a. Zero a => a
zero)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphPipelineSessionBindPointRequirementARM where
peekCStruct :: Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO DataGraphPipelineSessionBindPointRequirementARM
peekCStruct Ptr DataGraphPipelineSessionBindPointRequirementARM
p = do
bindPoint <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelineSessionBindPointARM ((Ptr DataGraphPipelineSessionBindPointRequirementARM
p Ptr DataGraphPipelineSessionBindPointRequirementARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionBindPointARM))
bindPointType <- peek @DataGraphPipelineSessionBindPointTypeARM ((p `plusPtr` 20 :: Ptr DataGraphPipelineSessionBindPointTypeARM))
numObjects <- peek @Word32 ((p `plusPtr` 24 :: Ptr Word32))
pure $ DataGraphPipelineSessionBindPointRequirementARM
bindPoint bindPointType numObjects
instance Storable DataGraphPipelineSessionBindPointRequirementARM where
sizeOf :: DataGraphPipelineSessionBindPointRequirementARM -> Int
sizeOf ~DataGraphPipelineSessionBindPointRequirementARM
_ = Int
32
alignment :: DataGraphPipelineSessionBindPointRequirementARM -> Int
alignment ~DataGraphPipelineSessionBindPointRequirementARM
_ = Int
8
peek :: Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO DataGraphPipelineSessionBindPointRequirementARM
peek = Ptr DataGraphPipelineSessionBindPointRequirementARM
-> IO DataGraphPipelineSessionBindPointRequirementARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> IO ()
poke Ptr DataGraphPipelineSessionBindPointRequirementARM
ptr DataGraphPipelineSessionBindPointRequirementARM
poked = Ptr DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM
-> IO ()
-> IO ()
forall b.
Ptr DataGraphPipelineSessionBindPointRequirementARM
-> DataGraphPipelineSessionBindPointRequirementARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionBindPointRequirementARM
ptr DataGraphPipelineSessionBindPointRequirementARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineSessionBindPointRequirementARM where
zero :: DataGraphPipelineSessionBindPointRequirementARM
zero = DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointTypeARM
-> Word32
-> DataGraphPipelineSessionBindPointRequirementARM
DataGraphPipelineSessionBindPointRequirementARM
DataGraphPipelineSessionBindPointARM
forall a. Zero a => a
zero
DataGraphPipelineSessionBindPointTypeARM
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
data DataGraphPipelineSessionMemoryRequirementsInfoARM = DataGraphPipelineSessionMemoryRequirementsInfoARM
{
DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionARM
session :: DataGraphPipelineSessionARM
,
DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionBindPointARM
bindPoint :: DataGraphPipelineSessionBindPointARM
,
DataGraphPipelineSessionMemoryRequirementsInfoARM -> Word32
objectIndex :: Word32
}
deriving (Typeable, DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool
(DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool)
-> (DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool)
-> Eq DataGraphPipelineSessionMemoryRequirementsInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool
== :: DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool
$c/= :: DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool
/= :: DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineSessionMemoryRequirementsInfoARM)
#endif
deriving instance Show DataGraphPipelineSessionMemoryRequirementsInfoARM
instance ToCStruct DataGraphPipelineSessionMemoryRequirementsInfoARM where
withCStruct :: forall b.
DataGraphPipelineSessionMemoryRequirementsInfoARM
-> (Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b)
-> IO b
withCStruct DataGraphPipelineSessionMemoryRequirementsInfoARM
x Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b
f = Int
-> (Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b)
-> IO b)
-> (Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p -> Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO b
-> IO b
forall b.
Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p DataGraphPipelineSessionMemoryRequirementsInfoARM
x (Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO b
f Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO b
-> IO b
pokeCStruct Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p DataGraphPipelineSessionMemoryRequirementsInfoARM{Word32
DataGraphPipelineSessionARM
DataGraphPipelineSessionBindPointARM
session :: DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionARM
bindPoint :: DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionBindPointARM
objectIndex :: DataGraphPipelineSessionMemoryRequirementsInfoARM -> Word32
session :: DataGraphPipelineSessionARM
bindPoint :: DataGraphPipelineSessionBindPointARM
objectIndex :: Word32
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_MEMORY_REQUIREMENTS_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionARM
-> DataGraphPipelineSessionARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM)) (DataGraphPipelineSessionARM
session)
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DataGraphPipelineSessionBindPointARM)) (DataGraphPipelineSessionBindPointARM
bindPoint)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Word32)) (Word32
objectIndex)
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_MEMORY_REQUIREMENTS_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionARM
-> DataGraphPipelineSessionARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM)) (DataGraphPipelineSessionARM
forall a. Zero a => a
zero)
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DataGraphPipelineSessionBindPointARM)) (DataGraphPipelineSessionBindPointARM
forall a. Zero a => a
zero)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphPipelineSessionMemoryRequirementsInfoARM where
peekCStruct :: Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO DataGraphPipelineSessionMemoryRequirementsInfoARM
peekCStruct Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p = do
session <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelineSessionARM ((Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
p Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM))
bindPoint <- peek @DataGraphPipelineSessionBindPointARM ((p `plusPtr` 24 :: Ptr DataGraphPipelineSessionBindPointARM))
objectIndex <- peek @Word32 ((p `plusPtr` 28 :: Ptr Word32))
pure $ DataGraphPipelineSessionMemoryRequirementsInfoARM
session bindPoint objectIndex
instance Storable DataGraphPipelineSessionMemoryRequirementsInfoARM where
sizeOf :: DataGraphPipelineSessionMemoryRequirementsInfoARM -> Int
sizeOf ~DataGraphPipelineSessionMemoryRequirementsInfoARM
_ = Int
32
alignment :: DataGraphPipelineSessionMemoryRequirementsInfoARM -> Int
alignment ~DataGraphPipelineSessionMemoryRequirementsInfoARM
_ = Int
8
peek :: Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO DataGraphPipelineSessionMemoryRequirementsInfoARM
peek = Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO DataGraphPipelineSessionMemoryRequirementsInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM -> IO ()
poke Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
poked = Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO ()
-> IO ()
forall b.
Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
ptr DataGraphPipelineSessionMemoryRequirementsInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineSessionMemoryRequirementsInfoARM where
zero :: DataGraphPipelineSessionMemoryRequirementsInfoARM
zero = DataGraphPipelineSessionARM
-> DataGraphPipelineSessionBindPointARM
-> Word32
-> DataGraphPipelineSessionMemoryRequirementsInfoARM
DataGraphPipelineSessionMemoryRequirementsInfoARM
DataGraphPipelineSessionARM
forall a. Zero a => a
zero
DataGraphPipelineSessionBindPointARM
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
data BindDataGraphPipelineSessionMemoryInfoARM = BindDataGraphPipelineSessionMemoryInfoARM
{
BindDataGraphPipelineSessionMemoryInfoARM
-> DataGraphPipelineSessionARM
session :: DataGraphPipelineSessionARM
,
BindDataGraphPipelineSessionMemoryInfoARM
-> DataGraphPipelineSessionBindPointARM
bindPoint :: DataGraphPipelineSessionBindPointARM
,
BindDataGraphPipelineSessionMemoryInfoARM -> Word32
objectIndex :: Word32
,
BindDataGraphPipelineSessionMemoryInfoARM -> DeviceMemory
memory :: DeviceMemory
,
BindDataGraphPipelineSessionMemoryInfoARM -> Word64
memoryOffset :: DeviceSize
}
deriving (Typeable, BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool
(BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool)
-> (BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool)
-> Eq BindDataGraphPipelineSessionMemoryInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool
== :: BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool
$c/= :: BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool
/= :: BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (BindDataGraphPipelineSessionMemoryInfoARM)
#endif
deriving instance Show BindDataGraphPipelineSessionMemoryInfoARM
instance ToCStruct BindDataGraphPipelineSessionMemoryInfoARM where
withCStruct :: forall b.
BindDataGraphPipelineSessionMemoryInfoARM
-> (Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b) -> IO b
withCStruct BindDataGraphPipelineSessionMemoryInfoARM
x Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b
f = Int
-> (Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
48 ((Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b) -> IO b)
-> (Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr BindDataGraphPipelineSessionMemoryInfoARM
p -> Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO b -> IO b
forall b.
Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr BindDataGraphPipelineSessionMemoryInfoARM
p BindDataGraphPipelineSessionMemoryInfoARM
x (Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b
f Ptr BindDataGraphPipelineSessionMemoryInfoARM
p)
pokeCStruct :: forall b.
Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO b -> IO b
pokeCStruct Ptr BindDataGraphPipelineSessionMemoryInfoARM
p BindDataGraphPipelineSessionMemoryInfoARM{Word32
Word64
DeviceMemory
DataGraphPipelineSessionARM
DataGraphPipelineSessionBindPointARM
session :: BindDataGraphPipelineSessionMemoryInfoARM
-> DataGraphPipelineSessionARM
bindPoint :: BindDataGraphPipelineSessionMemoryInfoARM
-> DataGraphPipelineSessionBindPointARM
objectIndex :: BindDataGraphPipelineSessionMemoryInfoARM -> Word32
memory :: BindDataGraphPipelineSessionMemoryInfoARM -> DeviceMemory
memoryOffset :: BindDataGraphPipelineSessionMemoryInfoARM -> Word64
session :: DataGraphPipelineSessionARM
bindPoint :: DataGraphPipelineSessionBindPointARM
objectIndex :: Word32
memory :: DeviceMemory
memoryOffset :: Word64
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_BIND_DATA_GRAPH_PIPELINE_SESSION_MEMORY_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionARM
-> DataGraphPipelineSessionARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM)) (DataGraphPipelineSessionARM
session)
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DataGraphPipelineSessionBindPointARM)) (DataGraphPipelineSessionBindPointARM
bindPoint)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Word32)) (Word32
objectIndex)
Ptr DeviceMemory -> DeviceMemory -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DeviceMemory
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr DeviceMemory)) (DeviceMemory
memory)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr DeviceSize)) (Word64
memoryOffset)
IO b
f
cStructSize :: Int
cStructSize = Int
48
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr BindDataGraphPipelineSessionMemoryInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr BindDataGraphPipelineSessionMemoryInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_BIND_DATA_GRAPH_PIPELINE_SESSION_MEMORY_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineSessionARM
-> DataGraphPipelineSessionARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM)) (DataGraphPipelineSessionARM
forall a. Zero a => a
zero)
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DataGraphPipelineSessionBindPointARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr DataGraphPipelineSessionBindPointARM)) (DataGraphPipelineSessionBindPointARM
forall a. Zero a => a
zero)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
28 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr DeviceMemory -> DeviceMemory -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DeviceMemory
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr DeviceMemory)) (DeviceMemory
forall a. Zero a => a
zero)
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
40 :: Ptr DeviceSize)) (Word64
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct BindDataGraphPipelineSessionMemoryInfoARM where
peekCStruct :: Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO BindDataGraphPipelineSessionMemoryInfoARM
peekCStruct Ptr BindDataGraphPipelineSessionMemoryInfoARM
p = do
session <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelineSessionARM ((Ptr BindDataGraphPipelineSessionMemoryInfoARM
p Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> Int -> Ptr DataGraphPipelineSessionARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineSessionARM))
bindPoint <- peek @DataGraphPipelineSessionBindPointARM ((p `plusPtr` 24 :: Ptr DataGraphPipelineSessionBindPointARM))
objectIndex <- peek @Word32 ((p `plusPtr` 28 :: Ptr Word32))
memory <- peek @DeviceMemory ((p `plusPtr` 32 :: Ptr DeviceMemory))
memoryOffset <- peek @DeviceSize ((p `plusPtr` 40 :: Ptr DeviceSize))
pure $ BindDataGraphPipelineSessionMemoryInfoARM
session bindPoint objectIndex memory memoryOffset
instance Storable BindDataGraphPipelineSessionMemoryInfoARM where
sizeOf :: BindDataGraphPipelineSessionMemoryInfoARM -> Int
sizeOf ~BindDataGraphPipelineSessionMemoryInfoARM
_ = Int
48
alignment :: BindDataGraphPipelineSessionMemoryInfoARM -> Int
alignment ~BindDataGraphPipelineSessionMemoryInfoARM
_ = Int
8
peek :: Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO BindDataGraphPipelineSessionMemoryInfoARM
peek = Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> IO BindDataGraphPipelineSessionMemoryInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO ()
poke Ptr BindDataGraphPipelineSessionMemoryInfoARM
ptr BindDataGraphPipelineSessionMemoryInfoARM
poked = Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO () -> IO ()
forall b.
Ptr BindDataGraphPipelineSessionMemoryInfoARM
-> BindDataGraphPipelineSessionMemoryInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr BindDataGraphPipelineSessionMemoryInfoARM
ptr BindDataGraphPipelineSessionMemoryInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero BindDataGraphPipelineSessionMemoryInfoARM where
zero :: BindDataGraphPipelineSessionMemoryInfoARM
zero = DataGraphPipelineSessionARM
-> DataGraphPipelineSessionBindPointARM
-> Word32
-> DeviceMemory
-> Word64
-> BindDataGraphPipelineSessionMemoryInfoARM
BindDataGraphPipelineSessionMemoryInfoARM
DataGraphPipelineSessionARM
forall a. Zero a => a
zero
DataGraphPipelineSessionBindPointARM
forall a. Zero a => a
zero
Word32
forall a. Zero a => a
zero
DeviceMemory
forall a. Zero a => a
zero
Word64
forall a. Zero a => a
zero
data DataGraphPipelineInfoARM = DataGraphPipelineInfoARM
{
DataGraphPipelineInfoARM -> Pipeline
dataGraphPipeline :: Pipeline }
deriving (Typeable, DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool
(DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool)
-> (DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool)
-> Eq DataGraphPipelineInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool
== :: DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool
$c/= :: DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool
/= :: DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineInfoARM)
#endif
deriving instance Show DataGraphPipelineInfoARM
instance ToCStruct DataGraphPipelineInfoARM where
withCStruct :: forall b.
DataGraphPipelineInfoARM
-> (Ptr DataGraphPipelineInfoARM -> IO b) -> IO b
withCStruct DataGraphPipelineInfoARM
x Ptr DataGraphPipelineInfoARM -> IO b
f = Int -> (Ptr DataGraphPipelineInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr DataGraphPipelineInfoARM -> IO b) -> IO b)
-> (Ptr DataGraphPipelineInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineInfoARM
p -> Ptr DataGraphPipelineInfoARM
-> DataGraphPipelineInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineInfoARM
-> DataGraphPipelineInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineInfoARM
p DataGraphPipelineInfoARM
x (Ptr DataGraphPipelineInfoARM -> IO b
f Ptr DataGraphPipelineInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineInfoARM
-> DataGraphPipelineInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineInfoARM
p DataGraphPipelineInfoARM{Pipeline
dataGraphPipeline :: DataGraphPipelineInfoARM -> Pipeline
dataGraphPipeline :: Pipeline
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Pipeline -> Pipeline -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr Pipeline
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Pipeline)) (Pipeline
dataGraphPipeline)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DataGraphPipelineInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr Pipeline -> Pipeline -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr Pipeline
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Pipeline)) (Pipeline
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphPipelineInfoARM where
peekCStruct :: Ptr DataGraphPipelineInfoARM -> IO DataGraphPipelineInfoARM
peekCStruct Ptr DataGraphPipelineInfoARM
p = do
dataGraphPipeline <- forall a. Storable a => Ptr a -> IO a
peek @Pipeline ((Ptr DataGraphPipelineInfoARM
p Ptr DataGraphPipelineInfoARM -> Int -> Ptr Pipeline
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Pipeline))
pure $ DataGraphPipelineInfoARM
dataGraphPipeline
instance Storable DataGraphPipelineInfoARM where
sizeOf :: DataGraphPipelineInfoARM -> Int
sizeOf ~DataGraphPipelineInfoARM
_ = Int
24
alignment :: DataGraphPipelineInfoARM -> Int
alignment ~DataGraphPipelineInfoARM
_ = Int
8
peek :: Ptr DataGraphPipelineInfoARM -> IO DataGraphPipelineInfoARM
peek = Ptr DataGraphPipelineInfoARM -> IO DataGraphPipelineInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineInfoARM -> DataGraphPipelineInfoARM -> IO ()
poke Ptr DataGraphPipelineInfoARM
ptr DataGraphPipelineInfoARM
poked = Ptr DataGraphPipelineInfoARM
-> DataGraphPipelineInfoARM -> IO () -> IO ()
forall b.
Ptr DataGraphPipelineInfoARM
-> DataGraphPipelineInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineInfoARM
ptr DataGraphPipelineInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineInfoARM where
zero :: DataGraphPipelineInfoARM
zero = Pipeline -> DataGraphPipelineInfoARM
DataGraphPipelineInfoARM
Pipeline
forall a. Zero a => a
zero
data DataGraphPipelinePropertyQueryResultARM = DataGraphPipelinePropertyQueryResultARM
{
DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyARM
property :: DataGraphPipelinePropertyARM
,
DataGraphPipelinePropertyQueryResultARM -> Bool
isText :: Bool
,
DataGraphPipelinePropertyQueryResultARM -> Word64
dataSize :: Word64
,
DataGraphPipelinePropertyQueryResultARM -> Ptr ()
data' :: Ptr ()
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelinePropertyQueryResultARM)
#endif
deriving instance Show DataGraphPipelinePropertyQueryResultARM
instance ToCStruct DataGraphPipelinePropertyQueryResultARM where
withCStruct :: forall b.
DataGraphPipelinePropertyQueryResultARM
-> (Ptr DataGraphPipelinePropertyQueryResultARM -> IO b) -> IO b
withCStruct DataGraphPipelinePropertyQueryResultARM
x Ptr DataGraphPipelinePropertyQueryResultARM -> IO b
f = Int
-> (Ptr DataGraphPipelinePropertyQueryResultARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
40 ((Ptr DataGraphPipelinePropertyQueryResultARM -> IO b) -> IO b)
-> (Ptr DataGraphPipelinePropertyQueryResultARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelinePropertyQueryResultARM
p -> Ptr DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyQueryResultARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyQueryResultARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelinePropertyQueryResultARM
p DataGraphPipelinePropertyQueryResultARM
x (Ptr DataGraphPipelinePropertyQueryResultARM -> IO b
f Ptr DataGraphPipelinePropertyQueryResultARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyQueryResultARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelinePropertyQueryResultARM
p DataGraphPipelinePropertyQueryResultARM{Bool
Word64
Ptr ()
DataGraphPipelinePropertyARM
property :: DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyARM
isText :: DataGraphPipelinePropertyQueryResultARM -> Bool
dataSize :: DataGraphPipelinePropertyQueryResultARM -> Word64
data' :: DataGraphPipelinePropertyQueryResultARM -> Ptr ()
property :: DataGraphPipelinePropertyARM
isText :: Bool
dataSize :: Word64
data' :: Ptr ()
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_PROPERTY_QUERY_RESULT_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr DataGraphPipelinePropertyARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelinePropertyARM)) (DataGraphPipelinePropertyARM
property)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
isText))
Ptr CSize -> CSize -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM -> Int -> Ptr CSize
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr CSize)) (Word64 -> CSize
CSize (Word64
dataSize))
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
32 :: Ptr (Ptr ()))) (Ptr ()
data')
IO b
f
cStructSize :: Int
cStructSize = Int
40
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelinePropertyQueryResultARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelinePropertyQueryResultARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_PROPERTY_QUERY_RESULT_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr DataGraphPipelinePropertyARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelinePropertyARM)) (DataGraphPipelinePropertyARM
forall a. Zero a => a
zero)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM -> 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))
IO b
f
instance FromCStruct DataGraphPipelinePropertyQueryResultARM where
peekCStruct :: Ptr DataGraphPipelinePropertyQueryResultARM
-> IO DataGraphPipelinePropertyQueryResultARM
peekCStruct Ptr DataGraphPipelinePropertyQueryResultARM
p = do
property <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelinePropertyARM ((Ptr DataGraphPipelinePropertyQueryResultARM
p Ptr DataGraphPipelinePropertyQueryResultARM
-> Int -> Ptr DataGraphPipelinePropertyARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelinePropertyARM))
isText <- peek @Bool32 ((p `plusPtr` 20 :: Ptr Bool32))
dataSize <- peek @CSize ((p `plusPtr` 24 :: Ptr CSize))
pData <- peek @(Ptr ()) ((p `plusPtr` 32 :: Ptr (Ptr ())))
pure $ DataGraphPipelinePropertyQueryResultARM
property
(bool32ToBool isText)
(coerce @CSize @Word64 dataSize)
pData
instance Storable DataGraphPipelinePropertyQueryResultARM where
sizeOf :: DataGraphPipelinePropertyQueryResultARM -> Int
sizeOf ~DataGraphPipelinePropertyQueryResultARM
_ = Int
40
alignment :: DataGraphPipelinePropertyQueryResultARM -> Int
alignment ~DataGraphPipelinePropertyQueryResultARM
_ = Int
8
peek :: Ptr DataGraphPipelinePropertyQueryResultARM
-> IO DataGraphPipelinePropertyQueryResultARM
peek = Ptr DataGraphPipelinePropertyQueryResultARM
-> IO DataGraphPipelinePropertyQueryResultARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyQueryResultARM -> IO ()
poke Ptr DataGraphPipelinePropertyQueryResultARM
ptr DataGraphPipelinePropertyQueryResultARM
poked = Ptr DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyQueryResultARM -> IO () -> IO ()
forall b.
Ptr DataGraphPipelinePropertyQueryResultARM
-> DataGraphPipelinePropertyQueryResultARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelinePropertyQueryResultARM
ptr DataGraphPipelinePropertyQueryResultARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelinePropertyQueryResultARM where
zero :: DataGraphPipelinePropertyQueryResultARM
zero = DataGraphPipelinePropertyARM
-> Bool
-> Word64
-> Ptr ()
-> DataGraphPipelinePropertyQueryResultARM
DataGraphPipelinePropertyQueryResultARM
DataGraphPipelinePropertyARM
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
Word64
forall a. Zero a => a
zero
Ptr ()
forall a. Zero a => a
zero
data DataGraphPipelineIdentifierCreateInfoARM = DataGraphPipelineIdentifierCreateInfoARM
{
DataGraphPipelineIdentifierCreateInfoARM -> Vector Word8
identifier :: Vector Word8 }
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineIdentifierCreateInfoARM)
#endif
deriving instance Show DataGraphPipelineIdentifierCreateInfoARM
instance ToCStruct DataGraphPipelineIdentifierCreateInfoARM where
withCStruct :: forall b.
DataGraphPipelineIdentifierCreateInfoARM
-> (Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b) -> IO b
withCStruct DataGraphPipelineIdentifierCreateInfoARM
x Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b
f = Int
-> (Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b) -> IO b)
-> (Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineIdentifierCreateInfoARM
p -> Ptr DataGraphPipelineIdentifierCreateInfoARM
-> DataGraphPipelineIdentifierCreateInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineIdentifierCreateInfoARM
-> DataGraphPipelineIdentifierCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineIdentifierCreateInfoARM
p DataGraphPipelineIdentifierCreateInfoARM
x (Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b
f Ptr DataGraphPipelineIdentifierCreateInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineIdentifierCreateInfoARM
-> DataGraphPipelineIdentifierCreateInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineIdentifierCreateInfoARM
p DataGraphPipelineIdentifierCreateInfoARM{Vector Word8
identifier :: DataGraphPipelineIdentifierCreateInfoARM -> Vector Word8
identifier :: Vector Word8
..} IO b
f = ContT b IO b -> IO b
forall (m :: * -> *) r. Monad m => ContT r m r -> m r
evalContT (ContT b IO b -> IO b) -> ContT b IO b -> IO b
forall a b. (a -> b) -> a -> b
$ do
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineIdentifierCreateInfoARM
p Ptr DataGraphPipelineIdentifierCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_IDENTIFIER_CREATE_INFO_ARM)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineIdentifierCreateInfoARM
p Ptr DataGraphPipelineIdentifierCreateInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
IO () -> ContT b IO ()
forall (m :: * -> *) a. Monad m => m a -> ContT b m a
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (IO () -> ContT b IO ()) -> IO () -> ContT b IO ()
forall a b. (a -> b) -> a -> b
$ Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineIdentifierCreateInfoARM
p Ptr DataGraphPipelineIdentifierCreateInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) ((Int -> Word32
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Vector Word8 -> Int
forall a. Vector a -> Int
Data.Vector.length (Vector Word8 -> Int) -> Vector Word8 -> Int
forall a b. (a -> b) -> a -> b
$ (Vector Word8
identifier)) :: Word32))
pPIdentifier' <- ((Ptr Word8 -> IO b) -> IO b) -> ContT b IO (Ptr Word8)
forall {k} (r :: k) (m :: k -> *) a.
((a -> m r) -> m r) -> ContT r m a
ContT (((Ptr Word8 -> IO b) -> IO b) -> ContT b IO (Ptr Word8))
-> ((Ptr Word8 -> IO b) -> IO b) -> ContT b IO (Ptr Word8)
forall a b. (a -> b) -> a -> b
$ forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes @Word8 (Vector Word8 -> Int
forall a. Vector a -> Int
Data.Vector.length (Vector Word8
identifier))
lift $ Data.Vector.imapM_ (\Int
i Word8
e -> Ptr Word8 -> Word8 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr Word8
pPIdentifier' Ptr Word8 -> Int -> Ptr Word8
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` (Int
1 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr Word8) (Word8
e)) (identifier)
lift $ poke ((p `plusPtr` 24 :: Ptr (Ptr Word8))) (pPIdentifier')
lift $ f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphPipelineIdentifierCreateInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineIdentifierCreateInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineIdentifierCreateInfoARM
p Ptr DataGraphPipelineIdentifierCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_IDENTIFIER_CREATE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineIdentifierCreateInfoARM
p Ptr DataGraphPipelineIdentifierCreateInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
IO b
f
instance FromCStruct DataGraphPipelineIdentifierCreateInfoARM where
peekCStruct :: Ptr DataGraphPipelineIdentifierCreateInfoARM
-> IO DataGraphPipelineIdentifierCreateInfoARM
peekCStruct Ptr DataGraphPipelineIdentifierCreateInfoARM
p = do
identifierSize <- forall a. Storable a => Ptr a -> IO a
peek @Word32 ((Ptr DataGraphPipelineIdentifierCreateInfoARM
p Ptr DataGraphPipelineIdentifierCreateInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32))
pIdentifier <- peek @(Ptr Word8) ((p `plusPtr` 24 :: Ptr (Ptr Word8)))
pIdentifier' <- generateM (fromIntegral identifierSize) (\Int
i -> forall a. Storable a => Ptr a -> IO a
peek @Word8 ((Ptr Word8
pIdentifier Ptr Word8 -> Int -> Ptr Word8
forall a. Ptr a -> Int -> Ptr a
`advancePtrBytes` (Int
1 Int -> Int -> Int
forall a. Num a => a -> a -> a
* (Int
i)) :: Ptr Word8)))
pure $ DataGraphPipelineIdentifierCreateInfoARM
pIdentifier'
instance Zero DataGraphPipelineIdentifierCreateInfoARM where
zero :: DataGraphPipelineIdentifierCreateInfoARM
zero = Vector Word8 -> DataGraphPipelineIdentifierCreateInfoARM
DataGraphPipelineIdentifierCreateInfoARM
Vector Word8
forall a. Monoid a => a
mempty
data DataGraphPipelineDispatchInfoARM = DataGraphPipelineDispatchInfoARM
{
DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchFlagsARM
flags :: DataGraphPipelineDispatchFlagsARM }
deriving (Typeable, DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool
(DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool)
-> (DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool)
-> Eq DataGraphPipelineDispatchInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool
== :: DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool
$c/= :: DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool
/= :: DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphPipelineDispatchInfoARM)
#endif
deriving instance Show DataGraphPipelineDispatchInfoARM
instance ToCStruct DataGraphPipelineDispatchInfoARM where
withCStruct :: forall b.
DataGraphPipelineDispatchInfoARM
-> (Ptr DataGraphPipelineDispatchInfoARM -> IO b) -> IO b
withCStruct DataGraphPipelineDispatchInfoARM
x Ptr DataGraphPipelineDispatchInfoARM -> IO b
f = Int -> (Ptr DataGraphPipelineDispatchInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr DataGraphPipelineDispatchInfoARM -> IO b) -> IO b)
-> (Ptr DataGraphPipelineDispatchInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphPipelineDispatchInfoARM
p -> Ptr DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineDispatchInfoARM
p DataGraphPipelineDispatchInfoARM
x (Ptr DataGraphPipelineDispatchInfoARM -> IO b
f Ptr DataGraphPipelineDispatchInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineDispatchInfoARM
p DataGraphPipelineDispatchInfoARM{DataGraphPipelineDispatchFlagsARM
flags :: DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchFlagsARM
flags :: DataGraphPipelineDispatchFlagsARM
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineDispatchInfoARM
p Ptr DataGraphPipelineDispatchInfoARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_DISPATCH_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineDispatchInfoARM
p Ptr DataGraphPipelineDispatchInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineDispatchInfoARM
p Ptr DataGraphPipelineDispatchInfoARM
-> Int -> Ptr DataGraphPipelineDispatchFlagsARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineDispatchFlagsARM)) (DataGraphPipelineDispatchFlagsARM
flags)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr DataGraphPipelineDispatchInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphPipelineDispatchInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineDispatchInfoARM
p Ptr DataGraphPipelineDispatchInfoARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_DISPATCH_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphPipelineDispatchInfoARM
p Ptr DataGraphPipelineDispatchInfoARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
IO b
f
instance FromCStruct DataGraphPipelineDispatchInfoARM where
peekCStruct :: Ptr DataGraphPipelineDispatchInfoARM
-> IO DataGraphPipelineDispatchInfoARM
peekCStruct Ptr DataGraphPipelineDispatchInfoARM
p = do
flags <- forall a. Storable a => Ptr a -> IO a
peek @DataGraphPipelineDispatchFlagsARM ((Ptr DataGraphPipelineDispatchInfoARM
p Ptr DataGraphPipelineDispatchInfoARM
-> Int -> Ptr DataGraphPipelineDispatchFlagsARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr DataGraphPipelineDispatchFlagsARM))
pure $ DataGraphPipelineDispatchInfoARM
flags
instance Storable DataGraphPipelineDispatchInfoARM where
sizeOf :: DataGraphPipelineDispatchInfoARM -> Int
sizeOf ~DataGraphPipelineDispatchInfoARM
_ = Int
24
alignment :: DataGraphPipelineDispatchInfoARM -> Int
alignment ~DataGraphPipelineDispatchInfoARM
_ = Int
8
peek :: Ptr DataGraphPipelineDispatchInfoARM
-> IO DataGraphPipelineDispatchInfoARM
peek = Ptr DataGraphPipelineDispatchInfoARM
-> IO DataGraphPipelineDispatchInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> IO ()
poke Ptr DataGraphPipelineDispatchInfoARM
ptr DataGraphPipelineDispatchInfoARM
poked = Ptr DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> IO () -> IO ()
forall b.
Ptr DataGraphPipelineDispatchInfoARM
-> DataGraphPipelineDispatchInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphPipelineDispatchInfoARM
ptr DataGraphPipelineDispatchInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphPipelineDispatchInfoARM where
zero :: DataGraphPipelineDispatchInfoARM
zero = DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchInfoARM
DataGraphPipelineDispatchInfoARM
DataGraphPipelineDispatchFlagsARM
forall a. Zero a => a
zero
data PhysicalDeviceDataGraphProcessingEngineARM = PhysicalDeviceDataGraphProcessingEngineARM
{
PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
type' :: PhysicalDeviceDataGraphProcessingEngineTypeARM
,
PhysicalDeviceDataGraphProcessingEngineARM -> Bool
isForeign :: Bool
}
deriving (Typeable, PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool
(PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool)
-> (PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool)
-> Eq PhysicalDeviceDataGraphProcessingEngineARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool
== :: PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool
$c/= :: PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool
/= :: PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceDataGraphProcessingEngineARM)
#endif
deriving instance Show PhysicalDeviceDataGraphProcessingEngineARM
instance ToCStruct PhysicalDeviceDataGraphProcessingEngineARM where
withCStruct :: forall b.
PhysicalDeviceDataGraphProcessingEngineARM
-> (Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b) -> IO b
withCStruct PhysicalDeviceDataGraphProcessingEngineARM
x Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b
f = Int
-> (Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
8 ((Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b) -> IO b)
-> (Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceDataGraphProcessingEngineARM
p -> Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO b -> IO b
forall b.
Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphProcessingEngineARM
p PhysicalDeviceDataGraphProcessingEngineARM
x (Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b
f Ptr PhysicalDeviceDataGraphProcessingEngineARM
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphProcessingEngineARM
p PhysicalDeviceDataGraphProcessingEngineARM{Bool
PhysicalDeviceDataGraphProcessingEngineTypeARM
type' :: PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
isForeign :: PhysicalDeviceDataGraphProcessingEngineARM -> Bool
type' :: PhysicalDeviceDataGraphProcessingEngineTypeARM
isForeign :: Bool
..} IO b
f = do
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphProcessingEngineARM
p Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM)) (PhysicalDeviceDataGraphProcessingEngineTypeARM
type')
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphProcessingEngineARM
p Ptr PhysicalDeviceDataGraphProcessingEngineARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
isForeign))
IO b
f
cStructSize :: Int
cStructSize = Int
8
cStructAlignment :: Int
cStructAlignment = Int
4
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceDataGraphProcessingEngineARM
p IO b
f = do
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphProcessingEngineARM
p Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM)) (PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a. Zero a => a
zero)
Ptr Bool32 -> Bool32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphProcessingEngineARM
p Ptr PhysicalDeviceDataGraphProcessingEngineARM -> Int -> Ptr Bool32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr Bool32)) (Bool -> Bool32
boolToBool32 (Bool
forall a. Zero a => a
zero))
IO b
f
instance FromCStruct PhysicalDeviceDataGraphProcessingEngineARM where
peekCStruct :: Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> IO PhysicalDeviceDataGraphProcessingEngineARM
peekCStruct Ptr PhysicalDeviceDataGraphProcessingEngineARM
p = do
type' <- forall a. Storable a => Ptr a -> IO a
peek @PhysicalDeviceDataGraphProcessingEngineTypeARM ((Ptr PhysicalDeviceDataGraphProcessingEngineARM
p Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM))
isForeign <- peek @Bool32 ((p `plusPtr` 4 :: Ptr Bool32))
pure $ PhysicalDeviceDataGraphProcessingEngineARM
type' (bool32ToBool isForeign)
instance Storable PhysicalDeviceDataGraphProcessingEngineARM where
sizeOf :: PhysicalDeviceDataGraphProcessingEngineARM -> Int
sizeOf ~PhysicalDeviceDataGraphProcessingEngineARM
_ = Int
8
alignment :: PhysicalDeviceDataGraphProcessingEngineARM -> Int
alignment ~PhysicalDeviceDataGraphProcessingEngineARM
_ = Int
4
peek :: Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> IO PhysicalDeviceDataGraphProcessingEngineARM
peek = Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> IO PhysicalDeviceDataGraphProcessingEngineARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO ()
poke Ptr PhysicalDeviceDataGraphProcessingEngineARM
ptr PhysicalDeviceDataGraphProcessingEngineARM
poked = Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO () -> IO ()
forall b.
Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphProcessingEngineARM
ptr PhysicalDeviceDataGraphProcessingEngineARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceDataGraphProcessingEngineARM where
zero :: PhysicalDeviceDataGraphProcessingEngineARM
zero = PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Bool -> PhysicalDeviceDataGraphProcessingEngineARM
PhysicalDeviceDataGraphProcessingEngineARM
PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a. Zero a => a
zero
Bool
forall a. Zero a => a
zero
data PhysicalDeviceDataGraphOperationSupportARM = PhysicalDeviceDataGraphOperationSupportARM
{
PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationTypeARM
operationType :: PhysicalDeviceDataGraphOperationTypeARM
,
PhysicalDeviceDataGraphOperationSupportARM -> ByteString
name :: ByteString
,
PhysicalDeviceDataGraphOperationSupportARM -> Word32
version :: Word32
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceDataGraphOperationSupportARM)
#endif
deriving instance Show PhysicalDeviceDataGraphOperationSupportARM
instance ToCStruct PhysicalDeviceDataGraphOperationSupportARM where
withCStruct :: forall b.
PhysicalDeviceDataGraphOperationSupportARM
-> (Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b) -> IO b
withCStruct PhysicalDeviceDataGraphOperationSupportARM
x Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b
f = Int
-> (Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
136 ((Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b) -> IO b)
-> (Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceDataGraphOperationSupportARM
p -> Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO b -> IO b
forall b.
Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphOperationSupportARM
p PhysicalDeviceDataGraphOperationSupportARM
x (Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b
f Ptr PhysicalDeviceDataGraphOperationSupportARM
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphOperationSupportARM
p PhysicalDeviceDataGraphOperationSupportARM{Word32
ByteString
PhysicalDeviceDataGraphOperationTypeARM
operationType :: PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationTypeARM
name :: PhysicalDeviceDataGraphOperationSupportARM -> ByteString
version :: PhysicalDeviceDataGraphOperationSupportARM -> Word32
operationType :: PhysicalDeviceDataGraphOperationTypeARM
name :: ByteString
version :: Word32
..} IO b
f = do
Ptr PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM
-> Int -> Ptr PhysicalDeviceDataGraphOperationTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr PhysicalDeviceDataGraphOperationTypeARM)) (PhysicalDeviceDataGraphOperationTypeARM
operationType)
Ptr
(FixedArray
MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar)
-> ByteString -> IO ()
forall (n :: Nat).
KnownNat n =>
Ptr (FixedArray n CChar) -> ByteString -> IO ()
pokeFixedLengthNullTerminatedByteString ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM
-> Int
-> Ptr
(FixedArray
MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr (FixedArray MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar))) (ByteString
name)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
132 :: Ptr Word32)) (Word32
version)
IO b
f
cStructSize :: Int
cStructSize = Int
136
cStructAlignment :: Int
cStructAlignment = Int
4
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceDataGraphOperationSupportARM -> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceDataGraphOperationSupportARM
p IO b
f = do
Ptr PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM
-> Int -> Ptr PhysicalDeviceDataGraphOperationTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr PhysicalDeviceDataGraphOperationTypeARM)) (PhysicalDeviceDataGraphOperationTypeARM
forall a. Zero a => a
zero)
Ptr
(FixedArray
MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar)
-> ByteString -> IO ()
forall (n :: Nat).
KnownNat n =>
Ptr (FixedArray n CChar) -> ByteString -> IO ()
pokeFixedLengthNullTerminatedByteString ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM
-> Int
-> Ptr
(FixedArray
MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
4 :: Ptr (FixedArray MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar))) (ByteString
forall a. Monoid a => a
mempty)
Ptr Word32 -> Word32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
132 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct PhysicalDeviceDataGraphOperationSupportARM where
peekCStruct :: Ptr PhysicalDeviceDataGraphOperationSupportARM
-> IO PhysicalDeviceDataGraphOperationSupportARM
peekCStruct Ptr PhysicalDeviceDataGraphOperationSupportARM
p = do
operationType <- forall a. Storable a => Ptr a -> IO a
peek @PhysicalDeviceDataGraphOperationTypeARM ((Ptr PhysicalDeviceDataGraphOperationSupportARM
p Ptr PhysicalDeviceDataGraphOperationSupportARM
-> Int -> Ptr PhysicalDeviceDataGraphOperationTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr PhysicalDeviceDataGraphOperationTypeARM))
name <- packCString (lowerArrayPtr ((p `plusPtr` 4 :: Ptr (FixedArray MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM CChar))))
version <- peek @Word32 ((p `plusPtr` 132 :: Ptr Word32))
pure $ PhysicalDeviceDataGraphOperationSupportARM
operationType name version
instance Storable PhysicalDeviceDataGraphOperationSupportARM where
sizeOf :: PhysicalDeviceDataGraphOperationSupportARM -> Int
sizeOf ~PhysicalDeviceDataGraphOperationSupportARM
_ = Int
136
alignment :: PhysicalDeviceDataGraphOperationSupportARM -> Int
alignment ~PhysicalDeviceDataGraphOperationSupportARM
_ = Int
4
peek :: Ptr PhysicalDeviceDataGraphOperationSupportARM
-> IO PhysicalDeviceDataGraphOperationSupportARM
peek = Ptr PhysicalDeviceDataGraphOperationSupportARM
-> IO PhysicalDeviceDataGraphOperationSupportARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO ()
poke Ptr PhysicalDeviceDataGraphOperationSupportARM
ptr PhysicalDeviceDataGraphOperationSupportARM
poked = Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO () -> IO ()
forall b.
Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceDataGraphOperationSupportARM
ptr PhysicalDeviceDataGraphOperationSupportARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceDataGraphOperationSupportARM where
zero :: PhysicalDeviceDataGraphOperationSupportARM
zero = PhysicalDeviceDataGraphOperationTypeARM
-> ByteString
-> Word32
-> PhysicalDeviceDataGraphOperationSupportARM
PhysicalDeviceDataGraphOperationSupportARM
PhysicalDeviceDataGraphOperationTypeARM
forall a. Zero a => a
zero
ByteString
forall a. Monoid a => a
mempty
Word32
forall a. Zero a => a
zero
data QueueFamilyDataGraphPropertiesARM = QueueFamilyDataGraphPropertiesARM
{
QueueFamilyDataGraphPropertiesARM
-> PhysicalDeviceDataGraphProcessingEngineARM
engine :: PhysicalDeviceDataGraphProcessingEngineARM
,
QueueFamilyDataGraphPropertiesARM
-> PhysicalDeviceDataGraphOperationSupportARM
operation :: PhysicalDeviceDataGraphOperationSupportARM
}
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (QueueFamilyDataGraphPropertiesARM)
#endif
deriving instance Show QueueFamilyDataGraphPropertiesARM
instance ToCStruct QueueFamilyDataGraphPropertiesARM where
withCStruct :: forall b.
QueueFamilyDataGraphPropertiesARM
-> (Ptr QueueFamilyDataGraphPropertiesARM -> IO b) -> IO b
withCStruct QueueFamilyDataGraphPropertiesARM
x Ptr QueueFamilyDataGraphPropertiesARM -> IO b
f = Int -> (Ptr QueueFamilyDataGraphPropertiesARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
160 ((Ptr QueueFamilyDataGraphPropertiesARM -> IO b) -> IO b)
-> (Ptr QueueFamilyDataGraphPropertiesARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr QueueFamilyDataGraphPropertiesARM
p -> Ptr QueueFamilyDataGraphPropertiesARM
-> QueueFamilyDataGraphPropertiesARM -> IO b -> IO b
forall b.
Ptr QueueFamilyDataGraphPropertiesARM
-> QueueFamilyDataGraphPropertiesARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr QueueFamilyDataGraphPropertiesARM
p QueueFamilyDataGraphPropertiesARM
x (Ptr QueueFamilyDataGraphPropertiesARM -> IO b
f Ptr QueueFamilyDataGraphPropertiesARM
p)
pokeCStruct :: forall b.
Ptr QueueFamilyDataGraphPropertiesARM
-> QueueFamilyDataGraphPropertiesARM -> IO b -> IO b
pokeCStruct Ptr QueueFamilyDataGraphPropertiesARM
p QueueFamilyDataGraphPropertiesARM{PhysicalDeviceDataGraphProcessingEngineARM
PhysicalDeviceDataGraphOperationSupportARM
engine :: QueueFamilyDataGraphPropertiesARM
-> PhysicalDeviceDataGraphProcessingEngineARM
operation :: QueueFamilyDataGraphPropertiesARM
-> PhysicalDeviceDataGraphOperationSupportARM
engine :: PhysicalDeviceDataGraphProcessingEngineARM
operation :: PhysicalDeviceDataGraphOperationSupportARM
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_PROPERTIES_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr PhysicalDeviceDataGraphProcessingEngineARM)) (PhysicalDeviceDataGraphProcessingEngineARM
engine)
Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr PhysicalDeviceDataGraphOperationSupportARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr PhysicalDeviceDataGraphOperationSupportARM)) (PhysicalDeviceDataGraphOperationSupportARM
operation)
IO b
f
cStructSize :: Int
cStructSize = Int
160
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b. Ptr QueueFamilyDataGraphPropertiesARM -> IO b -> IO b
pokeZeroCStruct Ptr QueueFamilyDataGraphPropertiesARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM -> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_PROPERTIES_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphProcessingEngineARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr PhysicalDeviceDataGraphProcessingEngineARM)) (PhysicalDeviceDataGraphProcessingEngineARM
forall a. Zero a => a
zero)
Ptr PhysicalDeviceDataGraphOperationSupportARM
-> PhysicalDeviceDataGraphOperationSupportARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr PhysicalDeviceDataGraphOperationSupportARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr PhysicalDeviceDataGraphOperationSupportARM)) (PhysicalDeviceDataGraphOperationSupportARM
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct QueueFamilyDataGraphPropertiesARM where
peekCStruct :: Ptr QueueFamilyDataGraphPropertiesARM
-> IO QueueFamilyDataGraphPropertiesARM
peekCStruct Ptr QueueFamilyDataGraphPropertiesARM
p = do
engine <- forall a. FromCStruct a => Ptr a -> IO a
peekCStruct @PhysicalDeviceDataGraphProcessingEngineARM ((Ptr QueueFamilyDataGraphPropertiesARM
p Ptr QueueFamilyDataGraphPropertiesARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr PhysicalDeviceDataGraphProcessingEngineARM))
operation <- peekCStruct @PhysicalDeviceDataGraphOperationSupportARM ((p `plusPtr` 24 :: Ptr PhysicalDeviceDataGraphOperationSupportARM))
pure $ QueueFamilyDataGraphPropertiesARM
engine operation
instance Storable QueueFamilyDataGraphPropertiesARM where
sizeOf :: QueueFamilyDataGraphPropertiesARM -> Int
sizeOf ~QueueFamilyDataGraphPropertiesARM
_ = Int
160
alignment :: QueueFamilyDataGraphPropertiesARM -> Int
alignment ~QueueFamilyDataGraphPropertiesARM
_ = Int
8
peek :: Ptr QueueFamilyDataGraphPropertiesARM
-> IO QueueFamilyDataGraphPropertiesARM
peek = Ptr QueueFamilyDataGraphPropertiesARM
-> IO QueueFamilyDataGraphPropertiesARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr QueueFamilyDataGraphPropertiesARM
-> QueueFamilyDataGraphPropertiesARM -> IO ()
poke Ptr QueueFamilyDataGraphPropertiesARM
ptr QueueFamilyDataGraphPropertiesARM
poked = Ptr QueueFamilyDataGraphPropertiesARM
-> QueueFamilyDataGraphPropertiesARM -> IO () -> IO ()
forall b.
Ptr QueueFamilyDataGraphPropertiesARM
-> QueueFamilyDataGraphPropertiesARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr QueueFamilyDataGraphPropertiesARM
ptr QueueFamilyDataGraphPropertiesARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero QueueFamilyDataGraphPropertiesARM where
zero :: QueueFamilyDataGraphPropertiesARM
zero = PhysicalDeviceDataGraphProcessingEngineARM
-> PhysicalDeviceDataGraphOperationSupportARM
-> QueueFamilyDataGraphPropertiesARM
QueueFamilyDataGraphPropertiesARM
PhysicalDeviceDataGraphProcessingEngineARM
forall a. Zero a => a
zero
PhysicalDeviceDataGraphOperationSupportARM
forall a. Zero a => a
zero
data PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM = PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
{
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM -> Word32
queueFamilyIndex :: Word32
,
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
engineType :: PhysicalDeviceDataGraphProcessingEngineTypeARM
}
deriving (Typeable, PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool
(PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool)
-> (PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool)
-> Eq PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool
== :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool
$c/= :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool
/= :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM)
#endif
deriving instance Show PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
instance ToCStruct PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM where
withCStruct :: forall b.
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> (Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b)
-> IO b
withCStruct PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
x Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b
f = Int
-> (Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b)
-> IO b)
-> (Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p -> Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b
-> IO b
forall b.
Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
x (Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b
f Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p)
pokeCStruct :: forall b.
Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b
-> IO b
pokeCStruct Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM{Word32
PhysicalDeviceDataGraphProcessingEngineTypeARM
queueFamilyIndex :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM -> Word32
engineType :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
queueFamilyIndex :: Word32
engineType :: PhysicalDeviceDataGraphProcessingEngineTypeARM
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_QUEUE_FAMILY_DATA_GRAPH_PROCESSING_ENGINE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> 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 PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
queueFamilyIndex)
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM)) (PhysicalDeviceDataGraphProcessingEngineTypeARM
engineType)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b -> IO b
pokeZeroCStruct Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PHYSICAL_DEVICE_QUEUE_FAMILY_DATA_GRAPH_PROCESSING_ENGINE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> 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 PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM)) (PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM where
peekCStruct :: Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
peekCStruct Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p = do
queueFamilyIndex <- forall a. Storable a => Ptr a -> IO a
peek @Word32 ((Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
p Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32))
engineType <- peek @PhysicalDeviceDataGraphProcessingEngineTypeARM ((p `plusPtr` 20 :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM))
pure $ PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
queueFamilyIndex engineType
instance Storable PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM where
sizeOf :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM -> Int
sizeOf ~PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
_ = Int
24
alignment :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM -> Int
alignment ~PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
_ = Int
8
peek :: Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
peek = Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO ()
poke Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
poked = Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO ()
-> IO ()
forall b.
Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
ptr PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM where
zero :: PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
zero = Word32
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM
Word32
forall a. Zero a => a
zero
PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a. Zero a => a
zero
data QueueFamilyDataGraphProcessingEnginePropertiesARM = QueueFamilyDataGraphProcessingEnginePropertiesARM
{
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> ExternalSemaphoreHandleTypeFlags
foreignSemaphoreHandleTypes :: ExternalSemaphoreHandleTypeFlags
,
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> ExternalMemoryHandleTypeFlags
foreignMemoryHandleTypes :: ExternalMemoryHandleTypeFlags
}
deriving (Typeable, QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool
(QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool)
-> (QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool)
-> Eq QueueFamilyDataGraphProcessingEnginePropertiesARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool
== :: QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool
$c/= :: QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool
/= :: QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (QueueFamilyDataGraphProcessingEnginePropertiesARM)
#endif
deriving instance Show QueueFamilyDataGraphProcessingEnginePropertiesARM
instance ToCStruct QueueFamilyDataGraphProcessingEnginePropertiesARM where
withCStruct :: forall b.
QueueFamilyDataGraphProcessingEnginePropertiesARM
-> (Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO b)
-> IO b
withCStruct QueueFamilyDataGraphProcessingEnginePropertiesARM
x Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO b
f = Int
-> (Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO b)
-> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
24 ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO b)
-> IO b)
-> (Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO b)
-> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p -> Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO b
-> IO b
forall b.
Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p QueueFamilyDataGraphProcessingEnginePropertiesARM
x (Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO b
f Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p)
pokeCStruct :: forall b.
Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO b
-> IO b
pokeCStruct Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p QueueFamilyDataGraphProcessingEnginePropertiesARM{ExternalSemaphoreHandleTypeFlags
ExternalMemoryHandleTypeFlags
foreignSemaphoreHandleTypes :: QueueFamilyDataGraphProcessingEnginePropertiesARM
-> ExternalSemaphoreHandleTypeFlags
foreignMemoryHandleTypes :: QueueFamilyDataGraphProcessingEnginePropertiesARM
-> ExternalMemoryHandleTypeFlags
foreignSemaphoreHandleTypes :: ExternalSemaphoreHandleTypeFlags
foreignMemoryHandleTypes :: ExternalMemoryHandleTypeFlags
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_PROCESSING_ENGINE_PROPERTIES_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr ExternalSemaphoreHandleTypeFlags
-> ExternalSemaphoreHandleTypeFlags -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr ExternalSemaphoreHandleTypeFlags
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ExternalSemaphoreHandleTypeFlags)) (ExternalSemaphoreHandleTypeFlags
foreignSemaphoreHandleTypes)
Ptr ExternalMemoryHandleTypeFlags
-> ExternalMemoryHandleTypeFlags -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr ExternalMemoryHandleTypeFlags
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr ExternalMemoryHandleTypeFlags)) (ExternalMemoryHandleTypeFlags
foreignMemoryHandleTypes)
IO b
f
cStructSize :: Int
cStructSize = Int
24
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO b -> IO b
pokeZeroCStruct Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_PROCESSING_ENGINE_PROPERTIES_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr ExternalSemaphoreHandleTypeFlags
-> ExternalSemaphoreHandleTypeFlags -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr ExternalSemaphoreHandleTypeFlags
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ExternalSemaphoreHandleTypeFlags)) (ExternalSemaphoreHandleTypeFlags
forall a. Zero a => a
zero)
Ptr ExternalMemoryHandleTypeFlags
-> ExternalMemoryHandleTypeFlags -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr ExternalMemoryHandleTypeFlags
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
20 :: Ptr ExternalMemoryHandleTypeFlags)) (ExternalMemoryHandleTypeFlags
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct QueueFamilyDataGraphProcessingEnginePropertiesARM where
peekCStruct :: Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM
peekCStruct Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p = do
foreignSemaphoreHandleTypes <- forall a. Storable a => Ptr a -> IO a
peek @ExternalSemaphoreHandleTypeFlags ((Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
p Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> Int -> Ptr ExternalSemaphoreHandleTypeFlags
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr ExternalSemaphoreHandleTypeFlags))
foreignMemoryHandleTypes <- peek @ExternalMemoryHandleTypeFlags ((p `plusPtr` 20 :: Ptr ExternalMemoryHandleTypeFlags))
pure $ QueueFamilyDataGraphProcessingEnginePropertiesARM
foreignSemaphoreHandleTypes foreignMemoryHandleTypes
instance Storable QueueFamilyDataGraphProcessingEnginePropertiesARM where
sizeOf :: QueueFamilyDataGraphProcessingEnginePropertiesARM -> Int
sizeOf ~QueueFamilyDataGraphProcessingEnginePropertiesARM
_ = Int
24
alignment :: QueueFamilyDataGraphProcessingEnginePropertiesARM -> Int
alignment ~QueueFamilyDataGraphProcessingEnginePropertiesARM
_ = Int
8
peek :: Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM
peek = Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO QueueFamilyDataGraphProcessingEnginePropertiesARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM -> IO ()
poke Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
poked = Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO ()
-> IO ()
forall b.
Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
-> QueueFamilyDataGraphProcessingEnginePropertiesARM
-> IO b
-> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
ptr QueueFamilyDataGraphProcessingEnginePropertiesARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero QueueFamilyDataGraphProcessingEnginePropertiesARM where
zero :: QueueFamilyDataGraphProcessingEnginePropertiesARM
zero = ExternalSemaphoreHandleTypeFlags
-> ExternalMemoryHandleTypeFlags
-> QueueFamilyDataGraphProcessingEnginePropertiesARM
QueueFamilyDataGraphProcessingEnginePropertiesARM
ExternalSemaphoreHandleTypeFlags
forall a. Zero a => a
zero
ExternalMemoryHandleTypeFlags
forall a. Zero a => a
zero
data DataGraphProcessingEngineCreateInfoARM = DataGraphProcessingEngineCreateInfoARM
{
DataGraphProcessingEngineCreateInfoARM -> Word32
processingEngineCount :: Word32
,
DataGraphProcessingEngineCreateInfoARM
-> Ptr PhysicalDeviceDataGraphProcessingEngineARM
processingEngines :: Ptr PhysicalDeviceDataGraphProcessingEngineARM
}
deriving (Typeable, DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool
(DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool)
-> (DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool)
-> Eq DataGraphProcessingEngineCreateInfoARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool
== :: DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool
$c/= :: DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool
/= :: DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (DataGraphProcessingEngineCreateInfoARM)
#endif
deriving instance Show DataGraphProcessingEngineCreateInfoARM
instance ToCStruct DataGraphProcessingEngineCreateInfoARM where
withCStruct :: forall b.
DataGraphProcessingEngineCreateInfoARM
-> (Ptr DataGraphProcessingEngineCreateInfoARM -> IO b) -> IO b
withCStruct DataGraphProcessingEngineCreateInfoARM
x Ptr DataGraphProcessingEngineCreateInfoARM -> IO b
f = Int -> (Ptr DataGraphProcessingEngineCreateInfoARM -> IO b) -> IO b
forall a b. Int -> (Ptr a -> IO b) -> IO b
allocaBytes Int
32 ((Ptr DataGraphProcessingEngineCreateInfoARM -> IO b) -> IO b)
-> (Ptr DataGraphProcessingEngineCreateInfoARM -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \Ptr DataGraphProcessingEngineCreateInfoARM
p -> Ptr DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> IO b -> IO b
forall b.
Ptr DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphProcessingEngineCreateInfoARM
p DataGraphProcessingEngineCreateInfoARM
x (Ptr DataGraphProcessingEngineCreateInfoARM -> IO b
f Ptr DataGraphProcessingEngineCreateInfoARM
p)
pokeCStruct :: forall b.
Ptr DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> IO b -> IO b
pokeCStruct Ptr DataGraphProcessingEngineCreateInfoARM
p DataGraphProcessingEngineCreateInfoARM{Word32
Ptr PhysicalDeviceDataGraphProcessingEngineARM
processingEngineCount :: DataGraphProcessingEngineCreateInfoARM -> Word32
processingEngines :: DataGraphProcessingEngineCreateInfoARM
-> Ptr PhysicalDeviceDataGraphProcessingEngineARM
processingEngineCount :: Word32
processingEngines :: Ptr PhysicalDeviceDataGraphProcessingEngineARM
..} IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PROCESSING_ENGINE_CREATE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM -> 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 DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
processingEngineCount)
Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM)
-> Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM
-> Int -> Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM))) (Ptr PhysicalDeviceDataGraphProcessingEngineARM
processingEngines)
IO b
f
cStructSize :: Int
cStructSize = Int
32
cStructAlignment :: Int
cStructAlignment = Int
8
pokeZeroCStruct :: forall b.
Ptr DataGraphProcessingEngineCreateInfoARM -> IO b -> IO b
pokeZeroCStruct Ptr DataGraphProcessingEngineCreateInfoARM
p IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_DATA_GRAPH_PROCESSING_ENGINE_CREATE_INFO_ARM)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM -> 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 DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32)) (Word32
forall a. Zero a => a
zero)
Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM)
-> Ptr PhysicalDeviceDataGraphProcessingEngineARM -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM
-> Int -> Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
24 :: Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM))) (Ptr PhysicalDeviceDataGraphProcessingEngineARM
forall a. Zero a => a
zero)
IO b
f
instance FromCStruct DataGraphProcessingEngineCreateInfoARM where
peekCStruct :: Ptr DataGraphProcessingEngineCreateInfoARM
-> IO DataGraphProcessingEngineCreateInfoARM
peekCStruct Ptr DataGraphProcessingEngineCreateInfoARM
p = do
processingEngineCount <- forall a. Storable a => Ptr a -> IO a
peek @Word32 ((Ptr DataGraphProcessingEngineCreateInfoARM
p Ptr DataGraphProcessingEngineCreateInfoARM -> Int -> Ptr Word32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: Ptr Word32))
pProcessingEngines <- peek @(Ptr PhysicalDeviceDataGraphProcessingEngineARM) ((p `plusPtr` 24 :: Ptr (Ptr PhysicalDeviceDataGraphProcessingEngineARM)))
pure $ DataGraphProcessingEngineCreateInfoARM
processingEngineCount pProcessingEngines
instance Storable DataGraphProcessingEngineCreateInfoARM where
sizeOf :: DataGraphProcessingEngineCreateInfoARM -> Int
sizeOf ~DataGraphProcessingEngineCreateInfoARM
_ = Int
32
alignment :: DataGraphProcessingEngineCreateInfoARM -> Int
alignment ~DataGraphProcessingEngineCreateInfoARM
_ = Int
8
peek :: Ptr DataGraphProcessingEngineCreateInfoARM
-> IO DataGraphProcessingEngineCreateInfoARM
peek = Ptr DataGraphProcessingEngineCreateInfoARM
-> IO DataGraphProcessingEngineCreateInfoARM
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> IO ()
poke Ptr DataGraphProcessingEngineCreateInfoARM
ptr DataGraphProcessingEngineCreateInfoARM
poked = Ptr DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> IO () -> IO ()
forall b.
Ptr DataGraphProcessingEngineCreateInfoARM
-> DataGraphProcessingEngineCreateInfoARM -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr DataGraphProcessingEngineCreateInfoARM
ptr DataGraphProcessingEngineCreateInfoARM
poked (() -> IO ()
forall a. a -> IO a
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero DataGraphProcessingEngineCreateInfoARM where
zero :: DataGraphProcessingEngineCreateInfoARM
zero = Word32
-> Ptr PhysicalDeviceDataGraphProcessingEngineARM
-> DataGraphProcessingEngineCreateInfoARM
DataGraphProcessingEngineCreateInfoARM
Word32
forall a. Zero a => a
zero
Ptr PhysicalDeviceDataGraphProcessingEngineARM
forall a. Zero a => a
zero
type DataGraphPipelineSessionCreateFlagsARM = DataGraphPipelineSessionCreateFlagBitsARM
newtype DataGraphPipelineSessionCreateFlagBitsARM = DataGraphPipelineSessionCreateFlagBitsARM Flags64
deriving newtype (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
(DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> Eq DataGraphPipelineSessionCreateFlagsARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
== :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
$c/= :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
/= :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
Eq, Eq DataGraphPipelineSessionCreateFlagsARM
Eq DataGraphPipelineSessionCreateFlagsARM =>
(DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Ordering)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM)
-> Ord DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Ordering
DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Ordering
compare :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Ordering
$c< :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
< :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
$c<= :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
<= :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
$c> :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
> :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
$c>= :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
>= :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> Bool
$cmax :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
max :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
$cmin :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
min :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
Ord, Ptr DataGraphPipelineSessionCreateFlagsARM
-> IO DataGraphPipelineSessionCreateFlagsARM
Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> IO DataGraphPipelineSessionCreateFlagsARM
Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ()
Ptr DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> IO ()
DataGraphPipelineSessionCreateFlagsARM -> Int
(DataGraphPipelineSessionCreateFlagsARM -> Int)
-> (DataGraphPipelineSessionCreateFlagsARM -> Int)
-> (Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> IO DataGraphPipelineSessionCreateFlagsARM)
-> (Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ())
-> (forall b.
Ptr b -> Int -> IO DataGraphPipelineSessionCreateFlagsARM)
-> (forall b.
Ptr b -> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ())
-> (Ptr DataGraphPipelineSessionCreateFlagsARM
-> IO DataGraphPipelineSessionCreateFlagsARM)
-> (Ptr DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> IO ())
-> Storable DataGraphPipelineSessionCreateFlagsARM
forall b. Ptr b -> Int -> IO DataGraphPipelineSessionCreateFlagsARM
forall b.
Ptr b -> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DataGraphPipelineSessionCreateFlagsARM -> Int
sizeOf :: DataGraphPipelineSessionCreateFlagsARM -> Int
$calignment :: DataGraphPipelineSessionCreateFlagsARM -> Int
alignment :: DataGraphPipelineSessionCreateFlagsARM -> Int
$cpeekElemOff :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> IO DataGraphPipelineSessionCreateFlagsARM
peekElemOff :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> IO DataGraphPipelineSessionCreateFlagsARM
$cpokeElemOff :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ()
pokeElemOff :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelineSessionCreateFlagsARM
peekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelineSessionCreateFlagsARM
$cpokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineSessionCreateFlagsARM -> IO ()
$cpeek :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> IO DataGraphPipelineSessionCreateFlagsARM
peek :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> IO DataGraphPipelineSessionCreateFlagsARM
$cpoke :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> IO ()
poke :: Ptr DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM -> IO ()
Storable, DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM
-> Zero DataGraphPipelineSessionCreateFlagsARM
forall a. a -> Zero a
$czero :: DataGraphPipelineSessionCreateFlagsARM
zero :: DataGraphPipelineSessionCreateFlagsARM
Zero, Eq DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM
Eq DataGraphPipelineSessionCreateFlagsARM =>
(DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> DataGraphPipelineSessionCreateFlagsARM
-> (Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM -> Int -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM -> Maybe Int)
-> (DataGraphPipelineSessionCreateFlagsARM -> Int)
-> (DataGraphPipelineSessionCreateFlagsARM -> Bool)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM)
-> (DataGraphPipelineSessionCreateFlagsARM -> Int)
-> Bits DataGraphPipelineSessionCreateFlagsARM
Int -> DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM -> Bool
DataGraphPipelineSessionCreateFlagsARM -> Int
DataGraphPipelineSessionCreateFlagsARM -> Maybe Int
DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM -> Int -> Bool
DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
.&. :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
$c.|. :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
.|. :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
$cxor :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
xor :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
$ccomplement :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
complement :: DataGraphPipelineSessionCreateFlagsARM
-> DataGraphPipelineSessionCreateFlagsARM
$cshift :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
shift :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$crotate :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
rotate :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$czeroBits :: DataGraphPipelineSessionCreateFlagsARM
zeroBits :: DataGraphPipelineSessionCreateFlagsARM
$cbit :: Int -> DataGraphPipelineSessionCreateFlagsARM
bit :: Int -> DataGraphPipelineSessionCreateFlagsARM
$csetBit :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
setBit :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$cclearBit :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
clearBit :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$ccomplementBit :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
complementBit :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$ctestBit :: DataGraphPipelineSessionCreateFlagsARM -> Int -> Bool
testBit :: DataGraphPipelineSessionCreateFlagsARM -> Int -> Bool
$cbitSizeMaybe :: DataGraphPipelineSessionCreateFlagsARM -> Maybe Int
bitSizeMaybe :: DataGraphPipelineSessionCreateFlagsARM -> Maybe Int
$cbitSize :: DataGraphPipelineSessionCreateFlagsARM -> Int
bitSize :: DataGraphPipelineSessionCreateFlagsARM -> Int
$cisSigned :: DataGraphPipelineSessionCreateFlagsARM -> Bool
isSigned :: DataGraphPipelineSessionCreateFlagsARM -> Bool
$cshiftL :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
shiftL :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$cunsafeShiftL :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
unsafeShiftL :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$cshiftR :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
shiftR :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$cunsafeShiftR :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
unsafeShiftR :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$crotateL :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
rotateL :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$crotateR :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
rotateR :: DataGraphPipelineSessionCreateFlagsARM
-> Int -> DataGraphPipelineSessionCreateFlagsARM
$cpopCount :: DataGraphPipelineSessionCreateFlagsARM -> Int
popCount :: DataGraphPipelineSessionCreateFlagsARM -> Int
Bits, Bits DataGraphPipelineSessionCreateFlagsARM
Bits DataGraphPipelineSessionCreateFlagsARM =>
(DataGraphPipelineSessionCreateFlagsARM -> Int)
-> (DataGraphPipelineSessionCreateFlagsARM -> Int)
-> (DataGraphPipelineSessionCreateFlagsARM -> Int)
-> FiniteBits DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagsARM -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: DataGraphPipelineSessionCreateFlagsARM -> Int
finiteBitSize :: DataGraphPipelineSessionCreateFlagsARM -> Int
$ccountLeadingZeros :: DataGraphPipelineSessionCreateFlagsARM -> Int
countLeadingZeros :: DataGraphPipelineSessionCreateFlagsARM -> Int
$ccountTrailingZeros :: DataGraphPipelineSessionCreateFlagsARM -> Int
countTrailingZeros :: DataGraphPipelineSessionCreateFlagsARM -> Int
FiniteBits)
pattern $mDATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM :: forall {r}.
DataGraphPipelineSessionCreateFlagsARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM :: DataGraphPipelineSessionCreateFlagsARM
DATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM = DataGraphPipelineSessionCreateFlagBitsARM 0x0000000000000001
conNameDataGraphPipelineSessionCreateFlagBitsARM :: String
conNameDataGraphPipelineSessionCreateFlagBitsARM :: String
conNameDataGraphPipelineSessionCreateFlagBitsARM = String
"DataGraphPipelineSessionCreateFlagBitsARM"
enumPrefixDataGraphPipelineSessionCreateFlagBitsARM :: String
enumPrefixDataGraphPipelineSessionCreateFlagBitsARM :: String
enumPrefixDataGraphPipelineSessionCreateFlagBitsARM = String
"DATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM"
showTableDataGraphPipelineSessionCreateFlagBitsARM :: [(DataGraphPipelineSessionCreateFlagBitsARM, String)]
showTableDataGraphPipelineSessionCreateFlagBitsARM :: [(DataGraphPipelineSessionCreateFlagsARM, String)]
showTableDataGraphPipelineSessionCreateFlagBitsARM =
[
( DataGraphPipelineSessionCreateFlagsARM
DATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM
, String
""
)
]
instance Show DataGraphPipelineSessionCreateFlagBitsARM where
showsPrec :: Int -> DataGraphPipelineSessionCreateFlagsARM -> ShowS
showsPrec =
String
-> [(DataGraphPipelineSessionCreateFlagsARM, String)]
-> String
-> (DataGraphPipelineSessionCreateFlagsARM -> Word64)
-> (Word64 -> ShowS)
-> Int
-> DataGraphPipelineSessionCreateFlagsARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDataGraphPipelineSessionCreateFlagBitsARM
[(DataGraphPipelineSessionCreateFlagsARM, String)]
showTableDataGraphPipelineSessionCreateFlagBitsARM
String
conNameDataGraphPipelineSessionCreateFlagBitsARM
(\(DataGraphPipelineSessionCreateFlagBitsARM Word64
x) -> Word64
x)
(\Word64
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word64 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word64
x)
instance Read DataGraphPipelineSessionCreateFlagBitsARM where
readPrec :: ReadPrec DataGraphPipelineSessionCreateFlagsARM
readPrec =
String
-> [(DataGraphPipelineSessionCreateFlagsARM, String)]
-> String
-> (Word64 -> DataGraphPipelineSessionCreateFlagsARM)
-> ReadPrec DataGraphPipelineSessionCreateFlagsARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDataGraphPipelineSessionCreateFlagBitsARM
[(DataGraphPipelineSessionCreateFlagsARM, String)]
showTableDataGraphPipelineSessionCreateFlagBitsARM
String
conNameDataGraphPipelineSessionCreateFlagBitsARM
Word64 -> DataGraphPipelineSessionCreateFlagsARM
DataGraphPipelineSessionCreateFlagBitsARM
newtype DataGraphPipelineSessionBindPointARM = DataGraphPipelineSessionBindPointARM Int32
deriving newtype (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
(DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool)
-> Eq DataGraphPipelineSessionBindPointARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
== :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
$c/= :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
/= :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
Eq, Eq DataGraphPipelineSessionBindPointARM
Eq DataGraphPipelineSessionBindPointARM =>
(DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Ordering)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM)
-> (DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM)
-> Ord DataGraphPipelineSessionBindPointARM
DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Ordering
DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Ordering
compare :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Ordering
$c< :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
< :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
$c<= :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
<= :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
$c> :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
> :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
$c>= :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
>= :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> Bool
$cmax :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
max :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
$cmin :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
min :: DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM
Ord, Ptr DataGraphPipelineSessionBindPointARM
-> IO DataGraphPipelineSessionBindPointARM
Ptr DataGraphPipelineSessionBindPointARM
-> Int -> IO DataGraphPipelineSessionBindPointARM
Ptr DataGraphPipelineSessionBindPointARM
-> Int -> DataGraphPipelineSessionBindPointARM -> IO ()
Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
DataGraphPipelineSessionBindPointARM -> Int
(DataGraphPipelineSessionBindPointARM -> Int)
-> (DataGraphPipelineSessionBindPointARM -> Int)
-> (Ptr DataGraphPipelineSessionBindPointARM
-> Int -> IO DataGraphPipelineSessionBindPointARM)
-> (Ptr DataGraphPipelineSessionBindPointARM
-> Int -> DataGraphPipelineSessionBindPointARM -> IO ())
-> (forall b.
Ptr b -> Int -> IO DataGraphPipelineSessionBindPointARM)
-> (forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointARM -> IO ())
-> (Ptr DataGraphPipelineSessionBindPointARM
-> IO DataGraphPipelineSessionBindPointARM)
-> (Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ())
-> Storable DataGraphPipelineSessionBindPointARM
forall b. Ptr b -> Int -> IO DataGraphPipelineSessionBindPointARM
forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DataGraphPipelineSessionBindPointARM -> Int
sizeOf :: DataGraphPipelineSessionBindPointARM -> Int
$calignment :: DataGraphPipelineSessionBindPointARM -> Int
alignment :: DataGraphPipelineSessionBindPointARM -> Int
$cpeekElemOff :: Ptr DataGraphPipelineSessionBindPointARM
-> Int -> IO DataGraphPipelineSessionBindPointARM
peekElemOff :: Ptr DataGraphPipelineSessionBindPointARM
-> Int -> IO DataGraphPipelineSessionBindPointARM
$cpokeElemOff :: Ptr DataGraphPipelineSessionBindPointARM
-> Int -> DataGraphPipelineSessionBindPointARM -> IO ()
pokeElemOff :: Ptr DataGraphPipelineSessionBindPointARM
-> Int -> DataGraphPipelineSessionBindPointARM -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelineSessionBindPointARM
peekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelineSessionBindPointARM
$cpokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointARM -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointARM -> IO ()
$cpeek :: Ptr DataGraphPipelineSessionBindPointARM
-> IO DataGraphPipelineSessionBindPointARM
peek :: Ptr DataGraphPipelineSessionBindPointARM
-> IO DataGraphPipelineSessionBindPointARM
$cpoke :: Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
poke :: Ptr DataGraphPipelineSessionBindPointARM
-> DataGraphPipelineSessionBindPointARM -> IO ()
Storable, DataGraphPipelineSessionBindPointARM
DataGraphPipelineSessionBindPointARM
-> Zero DataGraphPipelineSessionBindPointARM
forall a. a -> Zero a
$czero :: DataGraphPipelineSessionBindPointARM
zero :: DataGraphPipelineSessionBindPointARM
Zero)
pattern $mDATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM :: forall {r}.
DataGraphPipelineSessionBindPointARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM :: DataGraphPipelineSessionBindPointARM
DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM = DataGraphPipelineSessionBindPointARM 0
{-# COMPLETE DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM :: DataGraphPipelineSessionBindPointARM #-}
conNameDataGraphPipelineSessionBindPointARM :: String
conNameDataGraphPipelineSessionBindPointARM :: String
conNameDataGraphPipelineSessionBindPointARM = String
"DataGraphPipelineSessionBindPointARM"
enumPrefixDataGraphPipelineSessionBindPointARM :: String
enumPrefixDataGraphPipelineSessionBindPointARM :: String
enumPrefixDataGraphPipelineSessionBindPointARM = String
"DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM"
showTableDataGraphPipelineSessionBindPointARM :: [(DataGraphPipelineSessionBindPointARM, String)]
showTableDataGraphPipelineSessionBindPointARM :: [(DataGraphPipelineSessionBindPointARM, String)]
showTableDataGraphPipelineSessionBindPointARM =
[
( DataGraphPipelineSessionBindPointARM
DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM
, String
""
)
]
instance Show DataGraphPipelineSessionBindPointARM where
showsPrec :: Int -> DataGraphPipelineSessionBindPointARM -> ShowS
showsPrec =
String
-> [(DataGraphPipelineSessionBindPointARM, String)]
-> String
-> (DataGraphPipelineSessionBindPointARM -> Int32)
-> (Int32 -> ShowS)
-> Int
-> DataGraphPipelineSessionBindPointARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDataGraphPipelineSessionBindPointARM
[(DataGraphPipelineSessionBindPointARM, String)]
showTableDataGraphPipelineSessionBindPointARM
String
conNameDataGraphPipelineSessionBindPointARM
(\(DataGraphPipelineSessionBindPointARM Int32
x) -> Int32
x)
(Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read DataGraphPipelineSessionBindPointARM where
readPrec :: ReadPrec DataGraphPipelineSessionBindPointARM
readPrec =
String
-> [(DataGraphPipelineSessionBindPointARM, String)]
-> String
-> (Int32 -> DataGraphPipelineSessionBindPointARM)
-> ReadPrec DataGraphPipelineSessionBindPointARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDataGraphPipelineSessionBindPointARM
[(DataGraphPipelineSessionBindPointARM, String)]
showTableDataGraphPipelineSessionBindPointARM
String
conNameDataGraphPipelineSessionBindPointARM
Int32 -> DataGraphPipelineSessionBindPointARM
DataGraphPipelineSessionBindPointARM
newtype DataGraphPipelineSessionBindPointTypeARM = DataGraphPipelineSessionBindPointTypeARM Int32
deriving newtype (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
(DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool)
-> Eq DataGraphPipelineSessionBindPointTypeARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
== :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
$c/= :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
/= :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
Eq, Eq DataGraphPipelineSessionBindPointTypeARM
Eq DataGraphPipelineSessionBindPointTypeARM =>
(DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Ordering)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM)
-> (DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM)
-> Ord DataGraphPipelineSessionBindPointTypeARM
DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Ordering
DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Ordering
compare :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Ordering
$c< :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
< :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
$c<= :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
<= :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
$c> :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
> :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
$c>= :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
>= :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> Bool
$cmax :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
max :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
$cmin :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
min :: DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM
Ord, Ptr DataGraphPipelineSessionBindPointTypeARM
-> IO DataGraphPipelineSessionBindPointTypeARM
Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> IO DataGraphPipelineSessionBindPointTypeARM
Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ()
Ptr DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> IO ()
DataGraphPipelineSessionBindPointTypeARM -> Int
(DataGraphPipelineSessionBindPointTypeARM -> Int)
-> (DataGraphPipelineSessionBindPointTypeARM -> Int)
-> (Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> IO DataGraphPipelineSessionBindPointTypeARM)
-> (Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ())
-> (forall b.
Ptr b -> Int -> IO DataGraphPipelineSessionBindPointTypeARM)
-> (forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ())
-> (Ptr DataGraphPipelineSessionBindPointTypeARM
-> IO DataGraphPipelineSessionBindPointTypeARM)
-> (Ptr DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> IO ())
-> Storable DataGraphPipelineSessionBindPointTypeARM
forall b.
Ptr b -> Int -> IO DataGraphPipelineSessionBindPointTypeARM
forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DataGraphPipelineSessionBindPointTypeARM -> Int
sizeOf :: DataGraphPipelineSessionBindPointTypeARM -> Int
$calignment :: DataGraphPipelineSessionBindPointTypeARM -> Int
alignment :: DataGraphPipelineSessionBindPointTypeARM -> Int
$cpeekElemOff :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> IO DataGraphPipelineSessionBindPointTypeARM
peekElemOff :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> IO DataGraphPipelineSessionBindPointTypeARM
$cpokeElemOff :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ()
pokeElemOff :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ()
$cpeekByteOff :: forall b.
Ptr b -> Int -> IO DataGraphPipelineSessionBindPointTypeARM
peekByteOff :: forall b.
Ptr b -> Int -> IO DataGraphPipelineSessionBindPointTypeARM
$cpokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineSessionBindPointTypeARM -> IO ()
$cpeek :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> IO DataGraphPipelineSessionBindPointTypeARM
peek :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> IO DataGraphPipelineSessionBindPointTypeARM
$cpoke :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> IO ()
poke :: Ptr DataGraphPipelineSessionBindPointTypeARM
-> DataGraphPipelineSessionBindPointTypeARM -> IO ()
Storable, DataGraphPipelineSessionBindPointTypeARM
DataGraphPipelineSessionBindPointTypeARM
-> Zero DataGraphPipelineSessionBindPointTypeARM
forall a. a -> Zero a
$czero :: DataGraphPipelineSessionBindPointTypeARM
zero :: DataGraphPipelineSessionBindPointTypeARM
Zero)
pattern $mDATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM :: forall {r}.
DataGraphPipelineSessionBindPointTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bDATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM :: DataGraphPipelineSessionBindPointTypeARM
DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM = DataGraphPipelineSessionBindPointTypeARM 0
{-# COMPLETE DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM :: DataGraphPipelineSessionBindPointTypeARM #-}
conNameDataGraphPipelineSessionBindPointTypeARM :: String
conNameDataGraphPipelineSessionBindPointTypeARM :: String
conNameDataGraphPipelineSessionBindPointTypeARM = String
"DataGraphPipelineSessionBindPointTypeARM"
enumPrefixDataGraphPipelineSessionBindPointTypeARM :: String
enumPrefixDataGraphPipelineSessionBindPointTypeARM :: String
enumPrefixDataGraphPipelineSessionBindPointTypeARM = String
"DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM"
showTableDataGraphPipelineSessionBindPointTypeARM :: [(DataGraphPipelineSessionBindPointTypeARM, String)]
showTableDataGraphPipelineSessionBindPointTypeARM :: [(DataGraphPipelineSessionBindPointTypeARM, String)]
showTableDataGraphPipelineSessionBindPointTypeARM =
[
( DataGraphPipelineSessionBindPointTypeARM
DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TYPE_MEMORY_ARM
, String
""
)
]
instance Show DataGraphPipelineSessionBindPointTypeARM where
showsPrec :: Int -> DataGraphPipelineSessionBindPointTypeARM -> ShowS
showsPrec =
String
-> [(DataGraphPipelineSessionBindPointTypeARM, String)]
-> String
-> (DataGraphPipelineSessionBindPointTypeARM -> Int32)
-> (Int32 -> ShowS)
-> Int
-> DataGraphPipelineSessionBindPointTypeARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDataGraphPipelineSessionBindPointTypeARM
[(DataGraphPipelineSessionBindPointTypeARM, String)]
showTableDataGraphPipelineSessionBindPointTypeARM
String
conNameDataGraphPipelineSessionBindPointTypeARM
(\(DataGraphPipelineSessionBindPointTypeARM Int32
x) -> Int32
x)
(Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read DataGraphPipelineSessionBindPointTypeARM where
readPrec :: ReadPrec DataGraphPipelineSessionBindPointTypeARM
readPrec =
String
-> [(DataGraphPipelineSessionBindPointTypeARM, String)]
-> String
-> (Int32 -> DataGraphPipelineSessionBindPointTypeARM)
-> ReadPrec DataGraphPipelineSessionBindPointTypeARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDataGraphPipelineSessionBindPointTypeARM
[(DataGraphPipelineSessionBindPointTypeARM, String)]
showTableDataGraphPipelineSessionBindPointTypeARM
String
conNameDataGraphPipelineSessionBindPointTypeARM
Int32 -> DataGraphPipelineSessionBindPointTypeARM
DataGraphPipelineSessionBindPointTypeARM
newtype DataGraphPipelinePropertyARM = DataGraphPipelinePropertyARM Int32
deriving newtype (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
(DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool)
-> Eq DataGraphPipelinePropertyARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
== :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
$c/= :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
/= :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
Eq, Eq DataGraphPipelinePropertyARM
Eq DataGraphPipelinePropertyARM =>
(DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Ordering)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM)
-> (DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM)
-> Ord DataGraphPipelinePropertyARM
DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Ordering
DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Ordering
compare :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Ordering
$c< :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
< :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
$c<= :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
<= :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
$c> :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
> :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
$c>= :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
>= :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> Bool
$cmax :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM
max :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM
$cmin :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM
min :: DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> DataGraphPipelinePropertyARM
Ord, Ptr DataGraphPipelinePropertyARM -> IO DataGraphPipelinePropertyARM
Ptr DataGraphPipelinePropertyARM
-> Int -> IO DataGraphPipelinePropertyARM
Ptr DataGraphPipelinePropertyARM
-> Int -> DataGraphPipelinePropertyARM -> IO ()
Ptr DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> IO ()
DataGraphPipelinePropertyARM -> Int
(DataGraphPipelinePropertyARM -> Int)
-> (DataGraphPipelinePropertyARM -> Int)
-> (Ptr DataGraphPipelinePropertyARM
-> Int -> IO DataGraphPipelinePropertyARM)
-> (Ptr DataGraphPipelinePropertyARM
-> Int -> DataGraphPipelinePropertyARM -> IO ())
-> (forall b. Ptr b -> Int -> IO DataGraphPipelinePropertyARM)
-> (forall b.
Ptr b -> Int -> DataGraphPipelinePropertyARM -> IO ())
-> (Ptr DataGraphPipelinePropertyARM
-> IO DataGraphPipelinePropertyARM)
-> (Ptr DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> IO ())
-> Storable DataGraphPipelinePropertyARM
forall b. Ptr b -> Int -> IO DataGraphPipelinePropertyARM
forall b. Ptr b -> Int -> DataGraphPipelinePropertyARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DataGraphPipelinePropertyARM -> Int
sizeOf :: DataGraphPipelinePropertyARM -> Int
$calignment :: DataGraphPipelinePropertyARM -> Int
alignment :: DataGraphPipelinePropertyARM -> Int
$cpeekElemOff :: Ptr DataGraphPipelinePropertyARM
-> Int -> IO DataGraphPipelinePropertyARM
peekElemOff :: Ptr DataGraphPipelinePropertyARM
-> Int -> IO DataGraphPipelinePropertyARM
$cpokeElemOff :: Ptr DataGraphPipelinePropertyARM
-> Int -> DataGraphPipelinePropertyARM -> IO ()
pokeElemOff :: Ptr DataGraphPipelinePropertyARM
-> Int -> DataGraphPipelinePropertyARM -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelinePropertyARM
peekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelinePropertyARM
$cpokeByteOff :: forall b. Ptr b -> Int -> DataGraphPipelinePropertyARM -> IO ()
pokeByteOff :: forall b. Ptr b -> Int -> DataGraphPipelinePropertyARM -> IO ()
$cpeek :: Ptr DataGraphPipelinePropertyARM -> IO DataGraphPipelinePropertyARM
peek :: Ptr DataGraphPipelinePropertyARM -> IO DataGraphPipelinePropertyARM
$cpoke :: Ptr DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> IO ()
poke :: Ptr DataGraphPipelinePropertyARM
-> DataGraphPipelinePropertyARM -> IO ()
Storable, DataGraphPipelinePropertyARM
DataGraphPipelinePropertyARM -> Zero DataGraphPipelinePropertyARM
forall a. a -> Zero a
$czero :: DataGraphPipelinePropertyARM
zero :: DataGraphPipelinePropertyARM
Zero)
pattern $mDATA_GRAPH_PIPELINE_PROPERTY_CREATION_LOG_ARM :: forall {r}.
DataGraphPipelinePropertyARM -> ((# #) -> r) -> ((# #) -> r) -> r
$bDATA_GRAPH_PIPELINE_PROPERTY_CREATION_LOG_ARM :: DataGraphPipelinePropertyARM
DATA_GRAPH_PIPELINE_PROPERTY_CREATION_LOG_ARM = DataGraphPipelinePropertyARM 0
pattern $mDATA_GRAPH_PIPELINE_PROPERTY_IDENTIFIER_ARM :: forall {r}.
DataGraphPipelinePropertyARM -> ((# #) -> r) -> ((# #) -> r) -> r
$bDATA_GRAPH_PIPELINE_PROPERTY_IDENTIFIER_ARM :: DataGraphPipelinePropertyARM
DATA_GRAPH_PIPELINE_PROPERTY_IDENTIFIER_ARM = DataGraphPipelinePropertyARM 1
{-# COMPLETE
DATA_GRAPH_PIPELINE_PROPERTY_CREATION_LOG_ARM
, DATA_GRAPH_PIPELINE_PROPERTY_IDENTIFIER_ARM ::
DataGraphPipelinePropertyARM
#-}
conNameDataGraphPipelinePropertyARM :: String
conNameDataGraphPipelinePropertyARM :: String
conNameDataGraphPipelinePropertyARM = String
"DataGraphPipelinePropertyARM"
enumPrefixDataGraphPipelinePropertyARM :: String
enumPrefixDataGraphPipelinePropertyARM :: String
enumPrefixDataGraphPipelinePropertyARM = String
"DATA_GRAPH_PIPELINE_PROPERTY_"
showTableDataGraphPipelinePropertyARM :: [(DataGraphPipelinePropertyARM, String)]
showTableDataGraphPipelinePropertyARM :: [(DataGraphPipelinePropertyARM, String)]
showTableDataGraphPipelinePropertyARM =
[
( DataGraphPipelinePropertyARM
DATA_GRAPH_PIPELINE_PROPERTY_CREATION_LOG_ARM
, String
"CREATION_LOG_ARM"
)
,
( DataGraphPipelinePropertyARM
DATA_GRAPH_PIPELINE_PROPERTY_IDENTIFIER_ARM
, String
"IDENTIFIER_ARM"
)
]
instance Show DataGraphPipelinePropertyARM where
showsPrec :: Int -> DataGraphPipelinePropertyARM -> ShowS
showsPrec =
String
-> [(DataGraphPipelinePropertyARM, String)]
-> String
-> (DataGraphPipelinePropertyARM -> Int32)
-> (Int32 -> ShowS)
-> Int
-> DataGraphPipelinePropertyARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDataGraphPipelinePropertyARM
[(DataGraphPipelinePropertyARM, String)]
showTableDataGraphPipelinePropertyARM
String
conNameDataGraphPipelinePropertyARM
(\(DataGraphPipelinePropertyARM Int32
x) -> Int32
x)
(Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read DataGraphPipelinePropertyARM where
readPrec :: ReadPrec DataGraphPipelinePropertyARM
readPrec =
String
-> [(DataGraphPipelinePropertyARM, String)]
-> String
-> (Int32 -> DataGraphPipelinePropertyARM)
-> ReadPrec DataGraphPipelinePropertyARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDataGraphPipelinePropertyARM
[(DataGraphPipelinePropertyARM, String)]
showTableDataGraphPipelinePropertyARM
String
conNameDataGraphPipelinePropertyARM
Int32 -> DataGraphPipelinePropertyARM
DataGraphPipelinePropertyARM
type DataGraphPipelineDispatchFlagsARM = DataGraphPipelineDispatchFlagBitsARM
newtype DataGraphPipelineDispatchFlagBitsARM = DataGraphPipelineDispatchFlagBitsARM Flags64
deriving newtype (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
(DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool)
-> Eq DataGraphPipelineDispatchFlagsARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
== :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
$c/= :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
/= :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
Eq, Eq DataGraphPipelineDispatchFlagsARM
Eq DataGraphPipelineDispatchFlagsARM =>
(DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Ordering)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM)
-> Ord DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Ordering
DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Ordering
compare :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Ordering
$c< :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
< :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
$c<= :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
<= :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
$c> :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
> :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
$c>= :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
>= :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> Bool
$cmax :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
max :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
$cmin :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
min :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
Ord, Ptr DataGraphPipelineDispatchFlagsARM
-> IO DataGraphPipelineDispatchFlagsARM
Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> IO DataGraphPipelineDispatchFlagsARM
Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM -> IO ()
Ptr DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> IO ()
DataGraphPipelineDispatchFlagsARM -> Int
(DataGraphPipelineDispatchFlagsARM -> Int)
-> (DataGraphPipelineDispatchFlagsARM -> Int)
-> (Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> IO DataGraphPipelineDispatchFlagsARM)
-> (Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM -> IO ())
-> (forall b. Ptr b -> Int -> IO DataGraphPipelineDispatchFlagsARM)
-> (forall b.
Ptr b -> Int -> DataGraphPipelineDispatchFlagsARM -> IO ())
-> (Ptr DataGraphPipelineDispatchFlagsARM
-> IO DataGraphPipelineDispatchFlagsARM)
-> (Ptr DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> IO ())
-> Storable DataGraphPipelineDispatchFlagsARM
forall b. Ptr b -> Int -> IO DataGraphPipelineDispatchFlagsARM
forall b.
Ptr b -> Int -> DataGraphPipelineDispatchFlagsARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: DataGraphPipelineDispatchFlagsARM -> Int
sizeOf :: DataGraphPipelineDispatchFlagsARM -> Int
$calignment :: DataGraphPipelineDispatchFlagsARM -> Int
alignment :: DataGraphPipelineDispatchFlagsARM -> Int
$cpeekElemOff :: Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> IO DataGraphPipelineDispatchFlagsARM
peekElemOff :: Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> IO DataGraphPipelineDispatchFlagsARM
$cpokeElemOff :: Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM -> IO ()
pokeElemOff :: Ptr DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelineDispatchFlagsARM
peekByteOff :: forall b. Ptr b -> Int -> IO DataGraphPipelineDispatchFlagsARM
$cpokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineDispatchFlagsARM -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> DataGraphPipelineDispatchFlagsARM -> IO ()
$cpeek :: Ptr DataGraphPipelineDispatchFlagsARM
-> IO DataGraphPipelineDispatchFlagsARM
peek :: Ptr DataGraphPipelineDispatchFlagsARM
-> IO DataGraphPipelineDispatchFlagsARM
$cpoke :: Ptr DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> IO ()
poke :: Ptr DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM -> IO ()
Storable, DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM
-> Zero DataGraphPipelineDispatchFlagsARM
forall a. a -> Zero a
$czero :: DataGraphPipelineDispatchFlagsARM
zero :: DataGraphPipelineDispatchFlagsARM
Zero, Eq DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM
Eq DataGraphPipelineDispatchFlagsARM =>
(DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> DataGraphPipelineDispatchFlagsARM
-> (Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM -> Int -> Bool)
-> (DataGraphPipelineDispatchFlagsARM -> Maybe Int)
-> (DataGraphPipelineDispatchFlagsARM -> Int)
-> (DataGraphPipelineDispatchFlagsARM -> Bool)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM)
-> (DataGraphPipelineDispatchFlagsARM -> Int)
-> Bits DataGraphPipelineDispatchFlagsARM
Int -> DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM -> Bool
DataGraphPipelineDispatchFlagsARM -> Int
DataGraphPipelineDispatchFlagsARM -> Maybe Int
DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM -> Int -> Bool
DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
$c.&. :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
.&. :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
$c.|. :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
.|. :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
$cxor :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
xor :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
$ccomplement :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
complement :: DataGraphPipelineDispatchFlagsARM
-> DataGraphPipelineDispatchFlagsARM
$cshift :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
shift :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$crotate :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
rotate :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$czeroBits :: DataGraphPipelineDispatchFlagsARM
zeroBits :: DataGraphPipelineDispatchFlagsARM
$cbit :: Int -> DataGraphPipelineDispatchFlagsARM
bit :: Int -> DataGraphPipelineDispatchFlagsARM
$csetBit :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
setBit :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$cclearBit :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
clearBit :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$ccomplementBit :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
complementBit :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$ctestBit :: DataGraphPipelineDispatchFlagsARM -> Int -> Bool
testBit :: DataGraphPipelineDispatchFlagsARM -> Int -> Bool
$cbitSizeMaybe :: DataGraphPipelineDispatchFlagsARM -> Maybe Int
bitSizeMaybe :: DataGraphPipelineDispatchFlagsARM -> Maybe Int
$cbitSize :: DataGraphPipelineDispatchFlagsARM -> Int
bitSize :: DataGraphPipelineDispatchFlagsARM -> Int
$cisSigned :: DataGraphPipelineDispatchFlagsARM -> Bool
isSigned :: DataGraphPipelineDispatchFlagsARM -> Bool
$cshiftL :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
shiftL :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$cunsafeShiftL :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
unsafeShiftL :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$cshiftR :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
shiftR :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$cunsafeShiftR :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
unsafeShiftR :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$crotateL :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
rotateL :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$crotateR :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
rotateR :: DataGraphPipelineDispatchFlagsARM
-> Int -> DataGraphPipelineDispatchFlagsARM
$cpopCount :: DataGraphPipelineDispatchFlagsARM -> Int
popCount :: DataGraphPipelineDispatchFlagsARM -> Int
Bits, Bits DataGraphPipelineDispatchFlagsARM
Bits DataGraphPipelineDispatchFlagsARM =>
(DataGraphPipelineDispatchFlagsARM -> Int)
-> (DataGraphPipelineDispatchFlagsARM -> Int)
-> (DataGraphPipelineDispatchFlagsARM -> Int)
-> FiniteBits DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagsARM -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
$cfiniteBitSize :: DataGraphPipelineDispatchFlagsARM -> Int
finiteBitSize :: DataGraphPipelineDispatchFlagsARM -> Int
$ccountLeadingZeros :: DataGraphPipelineDispatchFlagsARM -> Int
countLeadingZeros :: DataGraphPipelineDispatchFlagsARM -> Int
$ccountTrailingZeros :: DataGraphPipelineDispatchFlagsARM -> Int
countTrailingZeros :: DataGraphPipelineDispatchFlagsARM -> Int
FiniteBits)
conNameDataGraphPipelineDispatchFlagBitsARM :: String
conNameDataGraphPipelineDispatchFlagBitsARM :: String
conNameDataGraphPipelineDispatchFlagBitsARM = String
"DataGraphPipelineDispatchFlagBitsARM"
enumPrefixDataGraphPipelineDispatchFlagBitsARM :: String
enumPrefixDataGraphPipelineDispatchFlagBitsARM :: String
enumPrefixDataGraphPipelineDispatchFlagBitsARM = String
""
showTableDataGraphPipelineDispatchFlagBitsARM :: [(DataGraphPipelineDispatchFlagBitsARM, String)]
showTableDataGraphPipelineDispatchFlagBitsARM :: [(DataGraphPipelineDispatchFlagsARM, String)]
showTableDataGraphPipelineDispatchFlagBitsARM = []
instance Show DataGraphPipelineDispatchFlagBitsARM where
showsPrec :: Int -> DataGraphPipelineDispatchFlagsARM -> ShowS
showsPrec =
String
-> [(DataGraphPipelineDispatchFlagsARM, String)]
-> String
-> (DataGraphPipelineDispatchFlagsARM -> Word64)
-> (Word64 -> ShowS)
-> Int
-> DataGraphPipelineDispatchFlagsARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixDataGraphPipelineDispatchFlagBitsARM
[(DataGraphPipelineDispatchFlagsARM, String)]
showTableDataGraphPipelineDispatchFlagBitsARM
String
conNameDataGraphPipelineDispatchFlagBitsARM
(\(DataGraphPipelineDispatchFlagBitsARM Word64
x) -> Word64
x)
(\Word64
x -> String -> ShowS
showString String
"0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Word64 -> ShowS
forall a. Integral a => a -> ShowS
showHex Word64
x)
instance Read DataGraphPipelineDispatchFlagBitsARM where
readPrec :: ReadPrec DataGraphPipelineDispatchFlagsARM
readPrec =
String
-> [(DataGraphPipelineDispatchFlagsARM, String)]
-> String
-> (Word64 -> DataGraphPipelineDispatchFlagsARM)
-> ReadPrec DataGraphPipelineDispatchFlagsARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixDataGraphPipelineDispatchFlagBitsARM
[(DataGraphPipelineDispatchFlagsARM, String)]
showTableDataGraphPipelineDispatchFlagBitsARM
String
conNameDataGraphPipelineDispatchFlagBitsARM
Word64 -> DataGraphPipelineDispatchFlagsARM
DataGraphPipelineDispatchFlagBitsARM
newtype PhysicalDeviceDataGraphProcessingEngineTypeARM = PhysicalDeviceDataGraphProcessingEngineTypeARM Int32
deriving newtype (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
(PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool)
-> Eq PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
== :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
$c/= :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
/= :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
Eq, Eq PhysicalDeviceDataGraphProcessingEngineTypeARM
Eq PhysicalDeviceDataGraphProcessingEngineTypeARM =>
(PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Ordering)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM)
-> Ord PhysicalDeviceDataGraphProcessingEngineTypeARM
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Ordering
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Ordering
compare :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Ordering
$c< :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
< :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
$c<= :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
<= :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
$c> :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
> :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
$c>= :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
>= :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> Bool
$cmax :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
max :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
$cmin :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
min :: PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
Ord, Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int
(PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int)
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int)
-> (Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM)
-> (Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ())
-> (forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM)
-> (forall b.
Ptr b
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ())
-> (Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> IO PhysicalDeviceDataGraphProcessingEngineTypeARM)
-> (Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ())
-> Storable PhysicalDeviceDataGraphProcessingEngineTypeARM
forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
forall b.
Ptr b
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int
sizeOf :: PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int
$calignment :: PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int
alignment :: PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int
$cpeekElemOff :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
peekElemOff :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
$cpokeElemOff :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
pokeElemOff :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
$cpeekByteOff :: forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
peekByteOff :: forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
$cpokeByteOff :: forall b.
Ptr b
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
pokeByteOff :: forall b.
Ptr b
-> Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
$cpeek :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
peek :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> IO PhysicalDeviceDataGraphProcessingEngineTypeARM
$cpoke :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
poke :: Ptr PhysicalDeviceDataGraphProcessingEngineTypeARM
-> PhysicalDeviceDataGraphProcessingEngineTypeARM -> IO ()
Storable, PhysicalDeviceDataGraphProcessingEngineTypeARM
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> Zero PhysicalDeviceDataGraphProcessingEngineTypeARM
forall a. a -> Zero a
$czero :: PhysicalDeviceDataGraphProcessingEngineTypeARM
zero :: PhysicalDeviceDataGraphProcessingEngineTypeARM
Zero)
pattern $mPHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM :: forall {r}.
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bPHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM :: PhysicalDeviceDataGraphProcessingEngineTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM = PhysicalDeviceDataGraphProcessingEngineTypeARM 0
pattern $mPHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM :: forall {r}.
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bPHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM :: PhysicalDeviceDataGraphProcessingEngineTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM = PhysicalDeviceDataGraphProcessingEngineTypeARM 1000629001
pattern $mPHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM :: forall {r}.
PhysicalDeviceDataGraphProcessingEngineTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bPHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM :: PhysicalDeviceDataGraphProcessingEngineTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM = PhysicalDeviceDataGraphProcessingEngineTypeARM 1000629000
{-# COMPLETE
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM
, PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM
, PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM ::
PhysicalDeviceDataGraphProcessingEngineTypeARM
#-}
conNamePhysicalDeviceDataGraphProcessingEngineTypeARM :: String
conNamePhysicalDeviceDataGraphProcessingEngineTypeARM :: String
conNamePhysicalDeviceDataGraphProcessingEngineTypeARM = String
"PhysicalDeviceDataGraphProcessingEngineTypeARM"
enumPrefixPhysicalDeviceDataGraphProcessingEngineTypeARM :: String
enumPrefixPhysicalDeviceDataGraphProcessingEngineTypeARM :: String
enumPrefixPhysicalDeviceDataGraphProcessingEngineTypeARM = String
"PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_"
showTablePhysicalDeviceDataGraphProcessingEngineTypeARM :: [(PhysicalDeviceDataGraphProcessingEngineTypeARM, String)]
showTablePhysicalDeviceDataGraphProcessingEngineTypeARM :: [(PhysicalDeviceDataGraphProcessingEngineTypeARM, String)]
showTablePhysicalDeviceDataGraphProcessingEngineTypeARM =
[
( PhysicalDeviceDataGraphProcessingEngineTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM
, String
"DEFAULT_ARM"
)
,
( PhysicalDeviceDataGraphProcessingEngineTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM
, String
"COMPUTE_QCOM"
)
,
( PhysicalDeviceDataGraphProcessingEngineTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM
, String
"NEURAL_QCOM"
)
]
instance Show PhysicalDeviceDataGraphProcessingEngineTypeARM where
showsPrec :: Int -> PhysicalDeviceDataGraphProcessingEngineTypeARM -> ShowS
showsPrec =
String
-> [(PhysicalDeviceDataGraphProcessingEngineTypeARM, String)]
-> String
-> (PhysicalDeviceDataGraphProcessingEngineTypeARM -> Int32)
-> (Int32 -> ShowS)
-> Int
-> PhysicalDeviceDataGraphProcessingEngineTypeARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixPhysicalDeviceDataGraphProcessingEngineTypeARM
[(PhysicalDeviceDataGraphProcessingEngineTypeARM, String)]
showTablePhysicalDeviceDataGraphProcessingEngineTypeARM
String
conNamePhysicalDeviceDataGraphProcessingEngineTypeARM
(\(PhysicalDeviceDataGraphProcessingEngineTypeARM Int32
x) -> Int32
x)
(Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read PhysicalDeviceDataGraphProcessingEngineTypeARM where
readPrec :: ReadPrec PhysicalDeviceDataGraphProcessingEngineTypeARM
readPrec =
String
-> [(PhysicalDeviceDataGraphProcessingEngineTypeARM, String)]
-> String
-> (Int32 -> PhysicalDeviceDataGraphProcessingEngineTypeARM)
-> ReadPrec PhysicalDeviceDataGraphProcessingEngineTypeARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixPhysicalDeviceDataGraphProcessingEngineTypeARM
[(PhysicalDeviceDataGraphProcessingEngineTypeARM, String)]
showTablePhysicalDeviceDataGraphProcessingEngineTypeARM
String
conNamePhysicalDeviceDataGraphProcessingEngineTypeARM
Int32 -> PhysicalDeviceDataGraphProcessingEngineTypeARM
PhysicalDeviceDataGraphProcessingEngineTypeARM
newtype PhysicalDeviceDataGraphOperationTypeARM = PhysicalDeviceDataGraphOperationTypeARM Int32
deriving newtype (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
(PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool)
-> Eq PhysicalDeviceDataGraphOperationTypeARM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
== :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
$c/= :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
/= :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
Eq, Eq PhysicalDeviceDataGraphOperationTypeARM
Eq PhysicalDeviceDataGraphOperationTypeARM =>
(PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Ordering)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM)
-> (PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM)
-> Ord PhysicalDeviceDataGraphOperationTypeARM
PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Ordering
PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Ordering
compare :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Ordering
$c< :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
< :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
$c<= :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
<= :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
$c> :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
> :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
$c>= :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
>= :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> Bool
$cmax :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
max :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
$cmin :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
min :: PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM
Ord, Ptr PhysicalDeviceDataGraphOperationTypeARM
-> IO PhysicalDeviceDataGraphOperationTypeARM
Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> IO PhysicalDeviceDataGraphOperationTypeARM
Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
Ptr PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
PhysicalDeviceDataGraphOperationTypeARM -> Int
(PhysicalDeviceDataGraphOperationTypeARM -> Int)
-> (PhysicalDeviceDataGraphOperationTypeARM -> Int)
-> (Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> IO PhysicalDeviceDataGraphOperationTypeARM)
-> (Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ())
-> (forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphOperationTypeARM)
-> (forall b.
Ptr b -> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ())
-> (Ptr PhysicalDeviceDataGraphOperationTypeARM
-> IO PhysicalDeviceDataGraphOperationTypeARM)
-> (Ptr PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> IO ())
-> Storable PhysicalDeviceDataGraphOperationTypeARM
forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphOperationTypeARM
forall b.
Ptr b -> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: PhysicalDeviceDataGraphOperationTypeARM -> Int
sizeOf :: PhysicalDeviceDataGraphOperationTypeARM -> Int
$calignment :: PhysicalDeviceDataGraphOperationTypeARM -> Int
alignment :: PhysicalDeviceDataGraphOperationTypeARM -> Int
$cpeekElemOff :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> IO PhysicalDeviceDataGraphOperationTypeARM
peekElemOff :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> IO PhysicalDeviceDataGraphOperationTypeARM
$cpokeElemOff :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
pokeElemOff :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
$cpeekByteOff :: forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphOperationTypeARM
peekByteOff :: forall b.
Ptr b -> Int -> IO PhysicalDeviceDataGraphOperationTypeARM
$cpokeByteOff :: forall b.
Ptr b -> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
pokeByteOff :: forall b.
Ptr b -> Int -> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
$cpeek :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> IO PhysicalDeviceDataGraphOperationTypeARM
peek :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> IO PhysicalDeviceDataGraphOperationTypeARM
$cpoke :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
poke :: Ptr PhysicalDeviceDataGraphOperationTypeARM
-> PhysicalDeviceDataGraphOperationTypeARM -> IO ()
Storable, PhysicalDeviceDataGraphOperationTypeARM
PhysicalDeviceDataGraphOperationTypeARM
-> Zero PhysicalDeviceDataGraphOperationTypeARM
forall a. a -> Zero a
$czero :: PhysicalDeviceDataGraphOperationTypeARM
zero :: PhysicalDeviceDataGraphOperationTypeARM
Zero)
pattern $mPHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM :: forall {r}.
PhysicalDeviceDataGraphOperationTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bPHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM :: PhysicalDeviceDataGraphOperationTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM = PhysicalDeviceDataGraphOperationTypeARM 0
pattern $mPHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM :: forall {r}.
PhysicalDeviceDataGraphOperationTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bPHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM :: PhysicalDeviceDataGraphOperationTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM = PhysicalDeviceDataGraphOperationTypeARM 1000629001
pattern $mPHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM :: forall {r}.
PhysicalDeviceDataGraphOperationTypeARM
-> ((# #) -> r) -> ((# #) -> r) -> r
$bPHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM :: PhysicalDeviceDataGraphOperationTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM = PhysicalDeviceDataGraphOperationTypeARM 1000629000
{-# COMPLETE
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM
, PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM
, PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM ::
PhysicalDeviceDataGraphOperationTypeARM
#-}
conNamePhysicalDeviceDataGraphOperationTypeARM :: String
conNamePhysicalDeviceDataGraphOperationTypeARM :: String
conNamePhysicalDeviceDataGraphOperationTypeARM = String
"PhysicalDeviceDataGraphOperationTypeARM"
enumPrefixPhysicalDeviceDataGraphOperationTypeARM :: String
enumPrefixPhysicalDeviceDataGraphOperationTypeARM :: String
enumPrefixPhysicalDeviceDataGraphOperationTypeARM = String
"PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_"
showTablePhysicalDeviceDataGraphOperationTypeARM :: [(PhysicalDeviceDataGraphOperationTypeARM, String)]
showTablePhysicalDeviceDataGraphOperationTypeARM :: [(PhysicalDeviceDataGraphOperationTypeARM, String)]
showTablePhysicalDeviceDataGraphOperationTypeARM =
[
( PhysicalDeviceDataGraphOperationTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM
, String
"SPIRV_EXTENDED_INSTRUCTION_SET_ARM"
)
,
( PhysicalDeviceDataGraphOperationTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM
, String
"BUILTIN_MODEL_QCOM"
)
,
( PhysicalDeviceDataGraphOperationTypeARM
PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM
, String
"NEURAL_MODEL_QCOM"
)
]
instance Show PhysicalDeviceDataGraphOperationTypeARM where
showsPrec :: Int -> PhysicalDeviceDataGraphOperationTypeARM -> ShowS
showsPrec =
String
-> [(PhysicalDeviceDataGraphOperationTypeARM, String)]
-> String
-> (PhysicalDeviceDataGraphOperationTypeARM -> Int32)
-> (Int32 -> ShowS)
-> Int
-> PhysicalDeviceDataGraphOperationTypeARM
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec
String
enumPrefixPhysicalDeviceDataGraphOperationTypeARM
[(PhysicalDeviceDataGraphOperationTypeARM, String)]
showTablePhysicalDeviceDataGraphOperationTypeARM
String
conNamePhysicalDeviceDataGraphOperationTypeARM
(\(PhysicalDeviceDataGraphOperationTypeARM Int32
x) -> Int32
x)
(Int -> Int32 -> ShowS
forall a. Show a => Int -> a -> ShowS
showsPrec Int
11)
instance Read PhysicalDeviceDataGraphOperationTypeARM where
readPrec :: ReadPrec PhysicalDeviceDataGraphOperationTypeARM
readPrec =
String
-> [(PhysicalDeviceDataGraphOperationTypeARM, String)]
-> String
-> (Int32 -> PhysicalDeviceDataGraphOperationTypeARM)
-> ReadPrec PhysicalDeviceDataGraphOperationTypeARM
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec
String
enumPrefixPhysicalDeviceDataGraphOperationTypeARM
[(PhysicalDeviceDataGraphOperationTypeARM, String)]
showTablePhysicalDeviceDataGraphOperationTypeARM
String
conNamePhysicalDeviceDataGraphOperationTypeARM
Int32 -> PhysicalDeviceDataGraphOperationTypeARM
PhysicalDeviceDataGraphOperationTypeARM
type ARM_DATA_GRAPH_SPEC_VERSION = 1
pattern ARM_DATA_GRAPH_SPEC_VERSION :: forall a . Integral a => a
pattern $mARM_DATA_GRAPH_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bARM_DATA_GRAPH_SPEC_VERSION :: forall a. Integral a => a
ARM_DATA_GRAPH_SPEC_VERSION = 1
type ARM_DATA_GRAPH_EXTENSION_NAME = "VK_ARM_data_graph"
pattern ARM_DATA_GRAPH_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $mARM_DATA_GRAPH_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bARM_DATA_GRAPH_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
ARM_DATA_GRAPH_EXTENSION_NAME = "VK_ARM_data_graph"