{-# LINE 1 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}


{-# LANGUAGE DataKinds             #-}
{-# LANGUAGE FlexibleInstances     #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict                #-}
{-# LANGUAGE TypeFamilies          #-}
module Graphics.Vulkan.Types.Struct.AcquireNextImageInfoKHR
       (VkAcquireNextImageInfoKHR) where
import Graphics.Vulkan.Marshal
import Graphics.Vulkan.Marshal.Internal
import Graphics.Vulkan.Types.Enum.StructureType (VkStructureType)
import Graphics.Vulkan.Types.Handles            (VkFence, VkSemaphore,
                                                 VkSwapchainKHR)

-- | > typedef struct VkAcquireNextImageInfoKHR {
--   >     VkStructureType sType;
--   >     const void*                      pNext;
--   >     VkSwapchainKHR swapchain;
--   >     uint64_t                         timeout;
--   >     VkSemaphore semaphore;
--   >     VkFence fence;
--   >     uint32_t                         deviceMask;
--   > } VkAcquireNextImageInfoKHR;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VkAcquireNextImageInfoKHR VkAcquireNextImageInfoKHR registry at www.khronos.org>
type VkAcquireNextImageInfoKHR =
     VkStruct VkAcquireNextImageInfoKHR' -- ' closing tick for hsc2hs

data VkAcquireNextImageInfoKHR' -- ' closing tick for hsc2hs

instance VulkanMarshal VkAcquireNextImageInfoKHR where
    type StructRep VkAcquireNextImageInfoKHR =
         'StructMeta "VkAcquireNextImageInfoKHR" VkAcquireNextImageInfoKHR -- ' closing tick for hsc2hs
           (56)
{-# LINE 36 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
           8
{-# LINE 37 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 39 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False
                                                   (8)
{-# LINE 44 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "swapchain" VkSwapchainKHR 'False
                                                           (16)
{-# LINE 49 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "timeout" Word64 'False
                                                 (24)
{-# LINE 54 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "semaphore" VkSemaphore 'True
                                                       (32)
{-# LINE 59 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "fence" VkFence 'True
                                               (40)
{-# LINE 64 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "deviceMask" Word32 'False
                                                    (48)
{-# LINE 69 "src-gen/Graphics/Vulkan/Types/Struct/AcquireNextImageInfoKHR.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs