{-# LINE 1 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TupleSections #-}
{-# LANGUAGE PatternSynonyms, ViewPatterns #-}
{-# OPTIONS_GHC -Wall -fno-warn-tabs #-}
module Gpu.Vulkan.Subpass.Core (
Description, PtrDescription, pattern Description,
descriptionFlags, descriptionPipelineBindPoint,
descriptionInputAttachmentCount, descriptionPInputAttachments,
descriptionColorAttachmentCount, descriptionPColorAttachments,
descriptionPResolveAttachments, descriptionPDepthStencilAttachment,
descriptionPreserveAttachmentCount, descriptionPPreserveAttachments,
Dependency, PtrDependency, pattern Dependency,
dependencySrcSubpass, dependencyDstSubpass,
dependencySrcStageMask, dependencyDstStageMask,
dependencySrcAccessMask, dependencyDstAccessMask,
dependencyDependencyFlags
) where
import Foreign.Ptr
import Foreign.Storable
import Foreign.C.Struct
import Data.Word
import Gpu.Vulkan.TypeSynonyms.Core
import Gpu.Vulkan.Attachment.Core qualified as Attachment
struct "Description" (72)
{-# LINE 39 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
8 [
{-# LINE 40 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("flags", ''Word32,
{-# LINE 41 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 0) |],
{-# LINE 42 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 0) |]),
{-# LINE 43 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("pipelineBindPoint", ''Word32,
{-# LINE 44 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 4) |],
{-# LINE 45 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 4) |]),
{-# LINE 46 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("inputAttachmentCount", ''Word32,
{-# LINE 47 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 8) |],
{-# LINE 48 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 8) |]),
{-# LINE 49 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("pInputAttachments", ''Attachment.PtrReference,
[| (\hsc_ptr -> peekByteOff hsc_ptr 16) |],
{-# LINE 51 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 16) |]),
{-# LINE 52 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("colorAttachmentCount", ''Word32,
{-# LINE 53 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 24) |],
{-# LINE 54 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 24) |]),
{-# LINE 55 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("pColorAttachments", ''Attachment.PtrReference,
[| (\hsc_ptr -> peekByteOff hsc_ptr 32) |],
{-# LINE 57 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 32) |]),
{-# LINE 58 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("pResolveAttachments", ''Attachment.PtrReference,
[| (\hsc_ptr -> peekByteOff hsc_ptr 40) |],
{-# LINE 60 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 40) |]),
{-# LINE 61 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("pDepthStencilAttachment", ''Attachment.PtrReference,
[| (\hsc_ptr -> peekByteOff hsc_ptr 48) |],
{-# LINE 63 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 48) |]),
{-# LINE 64 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("preserveAttachmentCount", ''Word32,
{-# LINE 65 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 56) |],
{-# LINE 66 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 56) |]),
{-# LINE 67 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("pPreserveAttachments", ''PtrUint32T,
[| (\hsc_ptr -> peekByteOff hsc_ptr 64) |],
{-# LINE 69 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 64) |]) ]
{-# LINE 70 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[''Show, ''Storable]
type PtrDescription = Ptr Description
struct "Dependency" (28)
{-# LINE 75 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
4 [
{-# LINE 76 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("srcSubpass", ''Word32,
{-# LINE 77 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 0) |],
{-# LINE 78 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 0) |]),
{-# LINE 79 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("dstSubpass", ''Word32,
{-# LINE 80 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 4) |],
{-# LINE 81 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 4) |]),
{-# LINE 82 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("srcStageMask", ''Word32,
{-# LINE 83 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 8) |],
{-# LINE 84 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 8) |]),
{-# LINE 85 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("dstStageMask", ''Word32,
{-# LINE 86 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 12) |],
{-# LINE 87 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 12) |]),
{-# LINE 88 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("srcAccessMask", ''Word32,
{-# LINE 89 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 16) |],
{-# LINE 90 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 16) |]),
{-# LINE 91 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("dstAccessMask", ''Word32,
{-# LINE 92 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 20) |],
{-# LINE 93 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 20) |]),
{-# LINE 94 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
("dependencyFlags", ''Word32,
{-# LINE 95 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> peekByteOff hsc_ptr 24) |],
{-# LINE 96 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[| (\hsc_ptr -> pokeByteOff hsc_ptr 24) |]) ]
{-# LINE 97 "src/Gpu/Vulkan/Subpass/Core.hsc" #-}
[''Show, ''Storable]
type PtrDependency = Ptr Dependency