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


{-# LANGUAGE DataKinds             #-}
{-# LANGUAGE FlexibleInstances     #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE Strict                #-}
{-# LANGUAGE TypeFamilies          #-}
module Graphics.Vulkan.Types.Struct.External
       (VkExternalBufferProperties, VkExternalBufferPropertiesKHR,
        VkExternalFenceProperties, VkExternalFencePropertiesKHR,
        VkExternalImageFormatProperties,
        VkExternalImageFormatPropertiesKHR,
        VkExternalImageFormatPropertiesNV,
        VkExternalMemoryBufferCreateInfo,
        VkExternalMemoryBufferCreateInfoKHR,
        VkExternalMemoryImageCreateInfo,
        VkExternalMemoryImageCreateInfoKHR,
        VkExternalMemoryImageCreateInfoNV, VkExternalMemoryProperties,
        VkExternalMemoryPropertiesKHR, VkExternalSemaphoreProperties,
        VkExternalSemaphorePropertiesKHR)
       where
import Graphics.Vulkan.Marshal
import Graphics.Vulkan.Marshal.Internal
import Graphics.Vulkan.Types.Enum.External      (VkExternalFenceFeatureFlags,
                                                 VkExternalFenceHandleTypeFlags,
                                                 VkExternalMemoryFeatureFlags,
                                                 VkExternalMemoryFeatureFlagsNV,
                                                 VkExternalMemoryHandleTypeFlags,
                                                 VkExternalMemoryHandleTypeFlagsNV,
                                                 VkExternalSemaphoreFeatureFlags,
                                                 VkExternalSemaphoreHandleTypeFlags)
import Graphics.Vulkan.Types.Enum.StructureType (VkStructureType)
import Graphics.Vulkan.Types.Struct.Buffer      (VkBufferCreateInfo)
import Graphics.Vulkan.Types.Struct.Image       (VkImageCreateInfo,
                                                 VkImageFormatProperties,
                                                 VkImageFormatProperties2)

-- | > typedef struct VkExternalBufferProperties {
--   >     VkStructureType sType;
--   >     void*                            pNext;
--   >     VkExternalMemoryProperties    externalMemoryProperties;
--   > } VkExternalBufferProperties;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalBufferProperties VkExternalBufferProperties registry at www.khronos.org>
type VkExternalBufferProperties =
     VkStruct VkExternalBufferProperties' -- ' closing tick for hsc2hs

data VkExternalBufferProperties' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalBufferProperties where
    type StructRep VkExternalBufferProperties =
         'StructMeta "VkExternalBufferProperties" VkExternalBufferProperties -- ' closing tick for hsc2hs
           (32)
{-# LINE 54 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 55 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 57 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 62 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "externalMemoryProperties" VkExternalMemoryProperties -- ' closing tick for hsc2hs
                'False -- ' closing tick for hsc2hs
                (16)
{-# LINE 68 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'True -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalBufferProperties`
type VkExternalBufferPropertiesKHR = VkExternalBufferProperties

-- | > typedef struct VkExternalFenceProperties {
--   >     VkStructureType sType;
--   >     void*                            pNext;
--   >     VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;
--   >     VkExternalFenceHandleTypeFlags compatibleHandleTypes;
--   >     VkExternalFenceFeatureFlags externalFenceFeatures;
--   > } VkExternalFenceProperties;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalFenceProperties VkExternalFenceProperties registry at www.khronos.org>
type VkExternalFenceProperties =
     VkStruct VkExternalFenceProperties' -- ' closing tick for hsc2hs

data VkExternalFenceProperties' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalFenceProperties where
    type StructRep VkExternalFenceProperties =
         'StructMeta "VkExternalFenceProperties" VkExternalFenceProperties -- ' closing tick for hsc2hs
           (32)
{-# LINE 96 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 97 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 99 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 104 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "exportFromImportedHandleTypes" -- ' closing tick for hsc2hs
                VkExternalFenceHandleTypeFlags
                'False -- ' closing tick for hsc2hs
                (16)
{-# LINE 111 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "compatibleHandleTypes" VkExternalFenceHandleTypeFlags -- ' closing tick for hsc2hs
                'False -- ' closing tick for hsc2hs
                (20)
{-# LINE 117 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "externalFenceFeatures" VkExternalFenceFeatureFlags -- ' closing tick for hsc2hs
                'True -- ' closing tick for hsc2hs
                (24)
{-# LINE 123 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'True -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalFenceProperties`
type VkExternalFencePropertiesKHR = VkExternalFenceProperties

-- | > typedef struct VkExternalImageFormatProperties {
--   >     VkStructureType sType;
--   >     void*                            pNext;
--   >     VkExternalMemoryProperties externalMemoryProperties;
--   > } VkExternalImageFormatProperties;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalImageFormatProperties VkExternalImageFormatProperties registry at www.khronos.org>
type VkExternalImageFormatProperties =
     VkStruct VkExternalImageFormatProperties' -- ' closing tick for hsc2hs

data VkExternalImageFormatProperties' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalImageFormatProperties where
    type StructRep VkExternalImageFormatProperties =
         'StructMeta "VkExternalImageFormatProperties" -- ' closing tick for hsc2hs
           VkExternalImageFormatProperties
           (32)
{-# LINE 150 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 151 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 153 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 158 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "externalMemoryProperties" VkExternalMemoryProperties -- ' closing tick for hsc2hs
                'False -- ' closing tick for hsc2hs
                (16)
{-# LINE 164 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'True -- ' closing tick for hsc2hs
           '[VkImageFormatProperties2] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalImageFormatProperties`
type VkExternalImageFormatPropertiesKHR =
     VkExternalImageFormatProperties

-- | > typedef struct VkExternalImageFormatPropertiesNV {
--   >     VkImageFormatProperties          imageFormatProperties;
--   >     VkExternalMemoryFeatureFlagsNV   externalMemoryFeatures;
--   >     VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes;
--   >     VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes;
--   > } VkExternalImageFormatPropertiesNV;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalImageFormatPropertiesNV VkExternalImageFormatPropertiesNV registry at www.khronos.org>
type VkExternalImageFormatPropertiesNV =
     VkStruct VkExternalImageFormatPropertiesNV' -- ' closing tick for hsc2hs

data VkExternalImageFormatPropertiesNV' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalImageFormatPropertiesNV where
    type StructRep VkExternalImageFormatPropertiesNV =
         'StructMeta "VkExternalImageFormatPropertiesNV" -- ' closing tick for hsc2hs
           VkExternalImageFormatPropertiesNV
           (48)
{-# LINE 193 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 194 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "imageFormatProperties" VkImageFormatProperties
                'False -- ' closing tick for hsc2hs
                (0)
{-# LINE 197 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "externalMemoryFeatures" VkExternalMemoryFeatureFlagsNV -- ' closing tick for hsc2hs
                'True -- ' closing tick for hsc2hs
                (32)
{-# LINE 203 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "exportFromImportedHandleTypes" -- ' closing tick for hsc2hs
                VkExternalMemoryHandleTypeFlagsNV
                'True -- ' closing tick for hsc2hs
                (36)
{-# LINE 210 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "compatibleHandleTypes" -- ' closing tick for hsc2hs
                VkExternalMemoryHandleTypeFlagsNV
                'True -- ' closing tick for hsc2hs
                (40)
{-# LINE 217 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'True -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | > typedef struct VkExternalMemoryBufferCreateInfo {
--   >     VkStructureType sType;
--   >     const void*                      pNext;
--   >     VkExternalMemoryHandleTypeFlags handleTypes;
--   > } VkExternalMemoryBufferCreateInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfo registry at www.khronos.org>
type VkExternalMemoryBufferCreateInfo =
     VkStruct VkExternalMemoryBufferCreateInfo' -- ' closing tick for hsc2hs

data VkExternalMemoryBufferCreateInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalMemoryBufferCreateInfo where
    type StructRep VkExternalMemoryBufferCreateInfo =
         'StructMeta "VkExternalMemoryBufferCreateInfo" -- ' closing tick for hsc2hs
           VkExternalMemoryBufferCreateInfo
           (24)
{-# LINE 241 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 242 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 244 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 249 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "handleTypes" VkExternalMemoryHandleTypeFlags 'True
                (16)
{-# LINE 254 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkBufferCreateInfo] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalMemoryBufferCreateInfo`
type VkExternalMemoryBufferCreateInfoKHR =
     VkExternalMemoryBufferCreateInfo

-- | > typedef struct VkExternalMemoryImageCreateInfo {
--   >     VkStructureType sType;
--   >     const void*                      pNext;
--   >     VkExternalMemoryHandleTypeFlags handleTypes;
--   > } VkExternalMemoryImageCreateInfo;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfo registry at www.khronos.org>
type VkExternalMemoryImageCreateInfo =
     VkStruct VkExternalMemoryImageCreateInfo' -- ' closing tick for hsc2hs

data VkExternalMemoryImageCreateInfo' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalMemoryImageCreateInfo where
    type StructRep VkExternalMemoryImageCreateInfo =
         'StructMeta "VkExternalMemoryImageCreateInfo" -- ' closing tick for hsc2hs
           VkExternalMemoryImageCreateInfo
           (24)
{-# LINE 282 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 283 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 285 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 290 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "handleTypes" VkExternalMemoryHandleTypeFlags 'False
                (16)
{-# LINE 295 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkImageCreateInfo] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalMemoryImageCreateInfo`
type VkExternalMemoryImageCreateInfoKHR =
     VkExternalMemoryImageCreateInfo

-- | > typedef struct VkExternalMemoryImageCreateInfoNV {
--   >     VkStructureType sType;
--   >     const void*                      pNext;
--   >     VkExternalMemoryHandleTypeFlagsNV handleTypes;
--   > } VkExternalMemoryImageCreateInfoNV;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalMemoryImageCreateInfoNV VkExternalMemoryImageCreateInfoNV registry at www.khronos.org>
type VkExternalMemoryImageCreateInfoNV =
     VkStruct VkExternalMemoryImageCreateInfoNV' -- ' closing tick for hsc2hs

data VkExternalMemoryImageCreateInfoNV' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalMemoryImageCreateInfoNV where
    type StructRep VkExternalMemoryImageCreateInfoNV =
         'StructMeta "VkExternalMemoryImageCreateInfoNV" -- ' closing tick for hsc2hs
           VkExternalMemoryImageCreateInfoNV
           (24)
{-# LINE 323 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 324 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 326 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 331 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "handleTypes" VkExternalMemoryHandleTypeFlagsNV 'True
                (16)
{-# LINE 336 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           '[VkImageCreateInfo] -- ' closing tick for hsc2hs

-- | > typedef struct VkExternalMemoryProperties {
--   >     VkExternalMemoryFeatureFlags  externalMemoryFeatures;
--   >     VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;
--   >     VkExternalMemoryHandleTypeFlags compatibleHandleTypes;
--   > } VkExternalMemoryProperties;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalMemoryProperties VkExternalMemoryProperties registry at www.khronos.org>
type VkExternalMemoryProperties =
     VkStruct VkExternalMemoryProperties' -- ' closing tick for hsc2hs

data VkExternalMemoryProperties' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalMemoryProperties where
    type StructRep VkExternalMemoryProperties =
         'StructMeta "VkExternalMemoryProperties" VkExternalMemoryProperties -- ' closing tick for hsc2hs
           (12)
{-# LINE 359 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           4
{-# LINE 360 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "externalMemoryFeatures" VkExternalMemoryFeatureFlags
                'False -- ' closing tick for hsc2hs
                (0)
{-# LINE 363 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "exportFromImportedHandleTypes" -- ' closing tick for hsc2hs
                VkExternalMemoryHandleTypeFlags
                'True -- ' closing tick for hsc2hs
                (4)
{-# LINE 370 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "compatibleHandleTypes" VkExternalMemoryHandleTypeFlags -- ' closing tick for hsc2hs
                'False -- ' closing tick for hsc2hs
                (8)
{-# LINE 376 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'True -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalMemoryProperties`
type VkExternalMemoryPropertiesKHR = VkExternalMemoryProperties

-- | > typedef struct VkExternalSemaphoreProperties {
--   >     VkStructureType sType;
--   >     void*                            pNext;
--   >     VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes;
--   >     VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes;
--   >     VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures;
--   > } VkExternalSemaphoreProperties;
--
--   <https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VkExternalSemaphoreProperties VkExternalSemaphoreProperties registry at www.khronos.org>
type VkExternalSemaphoreProperties =
     VkStruct VkExternalSemaphoreProperties' -- ' closing tick for hsc2hs

data VkExternalSemaphoreProperties' -- ' closing tick for hsc2hs

instance VulkanMarshal VkExternalSemaphoreProperties where
    type StructRep VkExternalSemaphoreProperties =
         'StructMeta "VkExternalSemaphoreProperties" -- ' closing tick for hsc2hs
           VkExternalSemaphoreProperties
           (32)
{-# LINE 405 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           8
{-# LINE 406 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
           '[('FieldMeta "sType" VkStructureType 'False  -- ' closing tick for hsc2hs
                                                        (0)
{-# LINE 408 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "pNext" (Ptr Void) 'False 
                                                   (8)
{-# LINE 413 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "exportFromImportedHandleTypes" -- ' closing tick for hsc2hs
                VkExternalSemaphoreHandleTypeFlags
                'False -- ' closing tick for hsc2hs
                (16)
{-# LINE 420 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "compatibleHandleTypes" -- ' closing tick for hsc2hs
                VkExternalSemaphoreHandleTypeFlags
                'False -- ' closing tick for hsc2hs
                (20)
{-# LINE 427 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True), -- ' closing tick for hsc2hs
             ('FieldMeta "externalSemaphoreFeatures" -- ' closing tick for hsc2hs
                VkExternalSemaphoreFeatureFlags
                'True -- ' closing tick for hsc2hs
                (24)
{-# LINE 434 "src-gen/Graphics/Vulkan/Types/Struct/External.hsc" #-}
                1
                'True -- ' closing tick for hsc2hs
                'True)] -- ' closing tick for hsc2hs
           'False -- ' closing tick for hsc2hs
           'True -- ' closing tick for hsc2hs
           '[] -- ' closing tick for hsc2hs

-- | Alias for `VkExternalSemaphoreProperties`
type VkExternalSemaphorePropertiesKHR =
     VkExternalSemaphoreProperties