{-# OPTIONS_GHC -fno-warn-missing-pattern-synonym-signatures#-} {-# OPTIONS_GHC -fno-warn-orphans#-} {-# OPTIONS_HADDOCK not-home#-} {-# LANGUAGE CPP #-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE Strict #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ViewPatterns #-} module Graphics.Vulkan.Ext.VK_KHR_device_group_creation (-- * Vulkan extension: @VK_KHR_device_group_creation@ -- | -- -- supported: @vulkan@ -- -- contact: @Jeff Bolz @jeffbolznv@ -- -- author: @KHR@ -- -- type: @instance@ -- -- Extension number: @71@ VkDeviceGroupDeviceCreateInfoKHR, VkPhysicalDeviceGroupPropertiesKHR, VkEnumeratePhysicalDeviceGroupsKHR, pattern VkEnumeratePhysicalDeviceGroupsKHR, HS_vkEnumeratePhysicalDeviceGroupsKHR, PFN_vkEnumeratePhysicalDeviceGroupsKHR, module Graphics.Vulkan.Marshal, AHardwareBuffer(), ANativeWindow(), CAMetalLayer(), VkBool32(..), VkDeviceAddress(..), VkDeviceSize(..), VkFlags(..), VkSampleMask(..), VkResult(..), VkStructureType(..), VkAccelerationStructureKHR, VkAccelerationStructureKHR_T(), VkAccelerationStructureNV, VkAccelerationStructureNV_T(), VkBuffer, VkBufferView, VkBufferView_T(), VkBuffer_T(), VkCommandBuffer, VkCommandBuffer_T(), VkCommandPool, VkCommandPool_T(), VkDebugReportCallbackEXT, VkDebugReportCallbackEXT_T(), VkDebugUtilsMessengerEXT, VkDebugUtilsMessengerEXT_T(), VkDeferredOperationKHR, VkDeferredOperationKHR_T(), VkDescriptorPool, VkDescriptorPool_T(), VkDescriptorSet, VkDescriptorSetLayout, VkDescriptorSetLayout_T(), VkDescriptorSet_T(), VkDescriptorUpdateTemplate, VkDescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR_T(), VkDescriptorUpdateTemplate_T(), VkDevice, VkDeviceMemory, VkDeviceMemory_T(), VkDevice_T(), VkDisplayKHR, VkDisplayKHR_T(), VkDisplayModeKHR, VkDisplayModeKHR_T(), VkEvent, VkEvent_T(), VkFence, VkFence_T(), VkFramebuffer, VkFramebuffer_T(), VkImage, VkImageView, VkImageView_T(), VkImage_T(), VkIndirectCommandsLayoutNV, VkIndirectCommandsLayoutNV_T(), VkInstance, VkInstance_T(), VkPerformanceConfigurationINTEL, VkPerformanceConfigurationINTEL_T(), VkPhysicalDevice, VkPhysicalDevice_T(), VkPipeline, VkPipelineCache, VkPipelineCache_T(), VkPipelineLayout, VkPipelineLayout_T(), VkPipeline_T(), VkPrivateDataSlotEXT, VkPrivateDataSlotEXT_T(), VkQueryPool, VkQueryPool_T(), VkQueue, VkQueue_T(), VkRenderPass, VkRenderPass_T(), VkSampler, VkSamplerYcbcrConversion, VkSamplerYcbcrConversionKHR, VkSamplerYcbcrConversionKHR_T(), VkSamplerYcbcrConversion_T(), VkSampler_T(), VkSemaphore, VkSemaphore_T(), VkShaderModule, VkShaderModule_T(), VkSurfaceKHR, VkSurfaceKHR_T(), VkSwapchainKHR, VkSwapchainKHR_T(), VkValidationCacheEXT, VkValidationCacheEXT_T(), VkPhysicalDevice16BitStorageFeatures, VkPhysicalDevice16BitStorageFeaturesKHR, VkPhysicalDevice4444FormatsFeaturesEXT, VkPhysicalDevice8BitStorageFeatures, VkPhysicalDevice8BitStorageFeaturesKHR, VkPhysicalDeviceASTCDecodeFeaturesEXT, VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceBufferAddressFeaturesEXT, VkPhysicalDeviceBufferDeviceAddressFeatures, VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, VkPhysicalDeviceBufferDeviceAddressFeaturesKHR, VkPhysicalDeviceCoherentMemoryFeaturesAMD, VkPhysicalDeviceComputeShaderDerivativesFeaturesNV, VkPhysicalDeviceConditionalRenderingFeaturesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceCooperativeMatrixFeaturesNV, VkPhysicalDeviceCooperativeMatrixPropertiesNV, VkPhysicalDeviceCornerSampledImageFeaturesNV, VkPhysicalDeviceCoverageReductionModeFeaturesNV, VkPhysicalDeviceCustomBorderColorFeaturesEXT, VkPhysicalDeviceCustomBorderColorPropertiesEXT, VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, VkPhysicalDeviceDepthClipEnableFeaturesEXT, VkPhysicalDeviceDepthStencilResolveProperties, VkPhysicalDeviceDepthStencilResolvePropertiesKHR, VkPhysicalDeviceDescriptorIndexingFeatures, VkPhysicalDeviceDescriptorIndexingFeaturesEXT, VkPhysicalDeviceDescriptorIndexingProperties, VkPhysicalDeviceDescriptorIndexingPropertiesEXT, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV, VkPhysicalDeviceDiagnosticsConfigFeaturesNV, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceDriverProperties, VkPhysicalDeviceDriverPropertiesKHR, VkPhysicalDeviceExclusiveScissorFeaturesNV, VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalBufferInfoKHR, VkPhysicalDeviceExternalFenceInfo, VkPhysicalDeviceExternalFenceInfoKHR, VkPhysicalDeviceExternalImageFormatInfo, VkPhysicalDeviceExternalImageFormatInfoKHR, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceExternalSemaphoreInfo, VkPhysicalDeviceExternalSemaphoreInfoKHR, VkPhysicalDeviceFeatures2, VkPhysicalDeviceFeatures2KHR, VkPhysicalDeviceFloat16Int8FeaturesKHR, VkPhysicalDeviceFloatControlsProperties, VkPhysicalDeviceFloatControlsPropertiesKHR, VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, VkPhysicalDeviceFragmentDensityMap2PropertiesEXT, VkPhysicalDeviceFragmentDensityMapFeaturesEXT, VkPhysicalDeviceFragmentDensityMapPropertiesEXT, VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV, VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT, VkPhysicalDeviceGroupProperties, VkPhysicalDeviceHostQueryResetFeatures, VkPhysicalDeviceHostQueryResetFeaturesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceIDPropertiesKHR, VkPhysicalDeviceImageDrmFormatModifierInfoEXT, VkPhysicalDeviceImageFormatInfo2, VkPhysicalDeviceImageFormatInfo2KHR, VkPhysicalDeviceImageRobustnessFeaturesEXT, VkPhysicalDeviceImageViewImageFormatInfoEXT, VkPhysicalDeviceImagelessFramebufferFeatures, VkPhysicalDeviceImagelessFramebufferFeaturesKHR, VkPhysicalDeviceIndexTypeUint8FeaturesEXT, VkPhysicalDeviceInlineUniformBlockFeaturesEXT, VkPhysicalDeviceInlineUniformBlockPropertiesEXT, VkPhysicalDeviceLimits, VkPhysicalDeviceLineRasterizationFeaturesEXT, VkPhysicalDeviceLineRasterizationPropertiesEXT, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMaintenance3PropertiesKHR, VkPhysicalDeviceMemoryBudgetPropertiesEXT, VkPhysicalDeviceMemoryPriorityFeaturesEXT, VkPhysicalDeviceMemoryProperties, VkPhysicalDeviceMemoryProperties2, VkPhysicalDeviceMemoryProperties2KHR, VkPhysicalDeviceMeshShaderFeaturesNV, VkPhysicalDeviceMeshShaderPropertiesNV, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceMultiviewFeaturesKHR, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDeviceMultiviewPropertiesKHR, VkPhysicalDevicePCIBusInfoPropertiesEXT, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePerformanceQueryPropertiesKHR, VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT, VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, VkPhysicalDevicePointClippingProperties, VkPhysicalDevicePointClippingPropertiesKHR, VkPhysicalDevicePrivateDataFeaturesEXT, VkPhysicalDeviceProperties, VkPhysicalDeviceProperties2, VkPhysicalDeviceProperties2KHR, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceRayTracingPropertiesNV, VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, VkPhysicalDeviceRobustness2FeaturesEXT, VkPhysicalDeviceRobustness2PropertiesEXT, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxProperties, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceSamplerYcbcrConversionFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR, VkPhysicalDeviceScalarBlockLayoutFeatures, VkPhysicalDeviceScalarBlockLayoutFeaturesEXT, VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR, VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, VkPhysicalDeviceShaderAtomicInt64Features, VkPhysicalDeviceShaderAtomicInt64FeaturesKHR, VkPhysicalDeviceShaderClockFeaturesKHR, VkPhysicalDeviceShaderCoreProperties2AMD, VkPhysicalDeviceShaderCorePropertiesAMD, VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, VkPhysicalDeviceShaderDrawParameterFeatures, VkPhysicalDeviceShaderDrawParametersFeatures, VkPhysicalDeviceShaderFloat16Int8Features, VkPhysicalDeviceShaderFloat16Int8FeaturesKHR, VkPhysicalDeviceShaderImageFootprintFeaturesNV, VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, VkPhysicalDeviceShaderSMBuiltinsPropertiesNV, VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR, VkPhysicalDeviceShadingRateImageFeaturesNV, VkPhysicalDeviceShadingRateImagePropertiesNV, VkPhysicalDeviceSparseImageFormatInfo2, VkPhysicalDeviceSparseImageFormatInfo2KHR, VkPhysicalDeviceSparseProperties, VkPhysicalDeviceSubgroupProperties, VkPhysicalDeviceSubgroupSizeControlFeaturesEXT, VkPhysicalDeviceSubgroupSizeControlPropertiesEXT, VkPhysicalDeviceSurfaceInfo2KHR, VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT, VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, VkPhysicalDeviceTimelineSemaphoreFeatures, VkPhysicalDeviceTimelineSemaphoreFeaturesKHR, VkPhysicalDeviceTimelineSemaphoreProperties, VkPhysicalDeviceTimelineSemaphorePropertiesKHR, VkPhysicalDeviceToolPropertiesEXT, VkPhysicalDeviceTransformFeedbackFeaturesEXT, VkPhysicalDeviceTransformFeedbackPropertiesEXT, VkPhysicalDeviceUniformBufferStandardLayoutFeatures, VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR, VkPhysicalDeviceVariablePointerFeatures, VkPhysicalDeviceVariablePointerFeaturesKHR, VkPhysicalDeviceVariablePointersFeatures, VkPhysicalDeviceVariablePointersFeaturesKHR, VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT, VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT, VkPhysicalDeviceVulkan11Features, VkPhysicalDeviceVulkan11Properties, VkPhysicalDeviceVulkan12Features, VkPhysicalDeviceVulkan12Properties, VkPhysicalDeviceVulkanMemoryModelFeatures, VkPhysicalDeviceVulkanMemoryModelFeaturesKHR, VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION, pattern VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION, VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME, pattern VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR, pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR, pattern VK_MAX_DEVICE_GROUP_SIZE_KHR, pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR) where import GHC.Ptr (Ptr (..)) import Graphics.Vulkan.Constants (pattern VK_MAX_DEVICE_GROUP_SIZE_KHR) import Graphics.Vulkan.Core_1_1 (pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT, pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO, pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES) import Graphics.Vulkan.Marshal import Graphics.Vulkan.Marshal.Proc (VulkanProc (..)) import Graphics.Vulkan.Types.BaseTypes import Graphics.Vulkan.Types.Enum.Result import Graphics.Vulkan.Types.Enum.StructureType import Graphics.Vulkan.Types.Handles import Graphics.Vulkan.Types.Struct.Device (VkDeviceGroupDeviceCreateInfoKHR) import Graphics.Vulkan.Types.Struct.PhysicalDevice pattern VkEnumeratePhysicalDeviceGroupsKHR :: CString pattern VkEnumeratePhysicalDeviceGroupsKHR <- (is_VkEnumeratePhysicalDeviceGroupsKHR -> True) where VkEnumeratePhysicalDeviceGroupsKHR = _VkEnumeratePhysicalDeviceGroupsKHR {-# INLINE _VkEnumeratePhysicalDeviceGroupsKHR #-} _VkEnumeratePhysicalDeviceGroupsKHR :: CString _VkEnumeratePhysicalDeviceGroupsKHR = Ptr "vkEnumeratePhysicalDeviceGroupsKHR\NUL"# {-# INLINE is_VkEnumeratePhysicalDeviceGroupsKHR #-} is_VkEnumeratePhysicalDeviceGroupsKHR :: CString -> Bool is_VkEnumeratePhysicalDeviceGroupsKHR = (EQ ==) . cmpCStrings _VkEnumeratePhysicalDeviceGroupsKHR type VkEnumeratePhysicalDeviceGroupsKHR = "vkEnumeratePhysicalDeviceGroupsKHR" -- | This is an alias for `vkEnumeratePhysicalDeviceGroups`. -- -- Success codes: 'VK_SUCCESS', 'VK_INCOMPLETE'. -- -- Error codes: 'VK_ERROR_OUT_OF_HOST_MEMORY', 'VK_ERROR_OUT_OF_DEVICE_MEMORY', 'VK_ERROR_INITIALIZATION_FAILED'. -- -- > VkResult vkEnumeratePhysicalDeviceGroupsKHR -- > ( VkInstance instance -- > , uint32_t* pPhysicalDeviceGroupCount -- > , VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties -- > ) -- -- type HS_vkEnumeratePhysicalDeviceGroupsKHR = VkInstance -- ^ instance -> Ptr Word32 -- ^ pPhysicalDeviceGroupCount -> Ptr VkPhysicalDeviceGroupProperties -- ^ pPhysicalDeviceGroupProperties -> IO VkResult type PFN_vkEnumeratePhysicalDeviceGroupsKHR = FunPtr HS_vkEnumeratePhysicalDeviceGroupsKHR foreign import ccall unsafe "dynamic" unwrapVkEnumeratePhysicalDeviceGroupsKHRUnsafe :: PFN_vkEnumeratePhysicalDeviceGroupsKHR -> HS_vkEnumeratePhysicalDeviceGroupsKHR foreign import ccall safe "dynamic" unwrapVkEnumeratePhysicalDeviceGroupsKHRSafe :: PFN_vkEnumeratePhysicalDeviceGroupsKHR -> HS_vkEnumeratePhysicalDeviceGroupsKHR instance VulkanProc "vkEnumeratePhysicalDeviceGroupsKHR" where type VkProcType "vkEnumeratePhysicalDeviceGroupsKHR" = HS_vkEnumeratePhysicalDeviceGroupsKHR vkProcSymbol = _VkEnumeratePhysicalDeviceGroupsKHR {-# INLINE vkProcSymbol #-} unwrapVkProcPtrUnsafe = unwrapVkEnumeratePhysicalDeviceGroupsKHRUnsafe {-# INLINE unwrapVkProcPtrUnsafe #-} unwrapVkProcPtrSafe = unwrapVkEnumeratePhysicalDeviceGroupsKHRSafe {-# INLINE unwrapVkProcPtrSafe #-} pattern VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION :: (Num a, Eq a) => a pattern VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION = 1 type VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION = 1 pattern VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString pattern VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME <- (is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME -> True) where VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME = _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME {-# INLINE _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME #-} _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME = Ptr "VK_KHR_device_group_creation\NUL"# {-# INLINE is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME #-} is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: CString -> Bool is_VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME = (EQ ==) . cmpCStrings _VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME type VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME = "VK_KHR_device_group_creation" pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES pattern VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO pattern VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT