Skip to content

Commit

Permalink
Merge pull request #302 from ThreeOfTwelve/vulkan-update-v1.2.182
Browse files Browse the repository at this point in the history
Update Vulkan to v1.2.182
  • Loading branch information
expipiplus1 authored Jun 22, 2021
2 parents 94fad4f + 3818465 commit a5a91a4
Show file tree
Hide file tree
Showing 42 changed files with 4,471 additions and 192 deletions.
2 changes: 1 addition & 1 deletion VulkanMemoryAllocator/VulkanMemoryAllocator
Submodule VulkanMemoryAllocator updated 98 files
+12 −1 .gitignore
+4 −7 .travis.yml
+ bin/Shader.frag.spv
+ bin/Shader.vert.spv
+ bin/SparseBindingTest.comp.spv
+ bin/VmaReplay_Release_vs2019.exe
+ bin/VulkanSample_Release_vs2019.exe
+ build/src/Release/VmaSample.exe
+ build/src/VmaReplay/Release/VmaReplay.exe
+0 −0 docs/.nojekyll
+8 −8 docs/html/allocation_annotation.html
+8 −8 docs/html/choosing_memory_type.html
+8 −8 docs/html/custom_memory_pools.html
+11 −11 docs/html/defragmentation.html
+84 −0 docs/html/dir_d44c64559bbebec7f509842c48db8b23.html
+3 −2 docs/html/files.html
+6 −0 docs/html/functions.html
+6 −0 docs/html/functions_vars.html
+2 −2 docs/html/general_considerations.html
+1 −1 docs/html/index.html
+6 −6 docs/html/lost_allocations.html
+10 −11 docs/html/memory_mapping.html
+9 −9 docs/html/quick_start.html
+4 −4 docs/html/resource_aliasing.html
+8 −8 docs/html/search/all_10.js
+155 −155 docs/html/search/all_11.js
+3 −2 docs/html/search/all_9.js
+1 −1 docs/html/search/all_a.js
+23 −22 docs/html/search/all_b.js
+1 −1 docs/html/search/all_c.js
+4 −4 docs/html/search/all_d.js
+3 −3 docs/html/search/all_e.js
+1 −1 docs/html/search/all_f.js
+21 −21 docs/html/search/classes_0.js
+8 −8 docs/html/search/defines_0.js
+6 −6 docs/html/search/enums_0.js
+42 −42 docs/html/search/enumvalues_0.js
+1 −1 docs/html/search/files_0.js
+51 −51 docs/html/search/functions_0.js
+1 −1 docs/html/search/pages_0.js
+3 −3 docs/html/search/pages_1.js
+3 −3 docs/html/search/pages_2.js
+1 −1 docs/html/search/pages_3.js
+1 −1 docs/html/search/pages_4.js
+1 −1 docs/html/search/pages_5.js
+1 −1 docs/html/search/pages_6.js
+1 −1 docs/html/search/pages_7.js
+3 −3 docs/html/search/pages_8.js
+2 −2 docs/html/search/pages_9.js
+3 −3 docs/html/search/pages_a.js
+2 −2 docs/html/search/typedefs_0.js
+28 −28 docs/html/search/typedefs_1.js
+7 −7 docs/html/search/variables_0.js
+6 −6 docs/html/search/variables_1.js
+1 −1 docs/html/search/variables_2.js
+3 −3 docs/html/search/variables_3.js
+2 −2 docs/html/search/variables_4.js
+1 −1 docs/html/search/variables_5.js
+15 −14 docs/html/search/variables_6.js
+1 −1 docs/html/search/variables_7.js
+21 −20 docs/html/search/variables_8.js
+1 −1 docs/html/search/variables_9.js
+1 −1 docs/html/search/variables_a.js
+1 −1 docs/html/search/variables_b.js
+8 −8 docs/html/search/variables_c.js
+18 −18 docs/html/search/variables_d.js
+1 −1 docs/html/struct_vma_allocation.html
+1 −1 docs/html/struct_vma_allocation_create_info.html
+1 −1 docs/html/struct_vma_allocation_info.html
+1 −1 docs/html/struct_vma_allocator.html
+1 −1 docs/html/struct_vma_allocator_create_info.html
+1 −1 docs/html/struct_vma_allocator_info.html
+1 −1 docs/html/struct_vma_budget.html
+1 −1 docs/html/struct_vma_defragmentation_context.html
+1 −1 docs/html/struct_vma_defragmentation_info.html
+1 −1 docs/html/struct_vma_defragmentation_info2.html
+1 −1 docs/html/struct_vma_defragmentation_pass_info.html
+1 −1 docs/html/struct_vma_defragmentation_pass_move_info.html
+1 −1 docs/html/struct_vma_defragmentation_stats.html
+1 −1 docs/html/struct_vma_device_memory_callbacks.html
+1 −1 docs/html/struct_vma_pool.html
+3 −1 docs/html/struct_vma_pool_create_info-members.html
+42 −1 docs/html/struct_vma_pool_create_info.html
+1 −1 docs/html/struct_vma_pool_stats.html
+1 −1 docs/html/struct_vma_record_settings.html
+1 −1 docs/html/struct_vma_stat_info.html
+1 −1 docs/html/struct_vma_stats.html
+1 −1 docs/html/struct_vma_vulkan_functions.html
+1 −1 docs/html/usage_patterns.html
+9 −5 docs/html/vk__mem__alloc_8h.html
+16,018 −15,965 docs/html/vk__mem__alloc_8h_source.html
+2 −2 docs/html/vk_khr_dedicated_allocation.html
+65 −28 include/vk_mem_alloc.h
+0 −27 premake/LICENSE.txt
+ premake/premake5.exe
+0 −98 premake/premake5.lua
+47 −0 src/Tests.cpp
+3 −3 src/VmaReplay/VmaReplay.cpp
4 changes: 2 additions & 2 deletions VulkanMemoryAllocator/VulkanMemoryAllocator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ cabal-version: 2.2
-- see: https://github.com/sol/hpack

name: VulkanMemoryAllocator
version: 0.5.1
version: 0.6
synopsis: Bindings to the VulkanMemoryAllocator library
category: Graphics
homepage: https://github.com/expipiplus1/vulkan#readme
Expand Down Expand Up @@ -96,7 +96,7 @@ library
, bytestring
, transformers
, vector
, vulkan >=3.6 && <3.11
, vulkan >=3.6 && <3.12
if flag(safe-foreign-calls)
cpp-options: -DSAFE_FOREIGN_CALLS
if flag(vma-ndebug)
Expand Down
3 changes: 3 additions & 0 deletions VulkanMemoryAllocator/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

## WIP

## [0.6] - 2021-06-22
- Bump VMA, adding alignment info to PoolCreateInfo

## [0.5.1] - 2021-06-05
- Bump VMA, documentation changes

Expand Down
4 changes: 2 additions & 2 deletions VulkanMemoryAllocator/package.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: VulkanMemoryAllocator
version: "0.5.1"
version: "0.6"
synopsis: Bindings to the VulkanMemoryAllocator library
category: Graphics
maintainer: Joe Hermaszewski <[email protected]>
Expand All @@ -20,7 +20,7 @@ library:
src/lib.cpp
dependencies:
- base <5
- vulkan >= 3.6 && < 3.11
- vulkan >= 3.6 && < 3.12
- bytestring
- transformers
- vector
Expand Down
39 changes: 34 additions & 5 deletions VulkanMemoryAllocator/src/VulkanMemoryAllocator.hs
Original file line number Diff line number Diff line change
Expand Up @@ -3987,15 +3987,37 @@ data PoolCreateInfo = PoolCreateInfo
-- used during creation of the 'Allocator' object. Otherwise, this variable
-- is ignored.
priority :: Float
, -- | Additional minimum alignment to be used for all allocations created from
-- this pool. Can be 0.
--
-- Leave 0 (default) not to impose any additional alignment. If not 0, it
-- must be a power of two. It can be useful in cases where alignment
-- returned by Vulkan by functions like @vkGetBufferMemoryRequirements@ is
-- not enough, e.g. when doing interop with OpenGL.
minAllocationAlignment :: DeviceSize
, -- | Additional @pNext@ chain to be attached to @VkMemoryAllocateInfo@ used
-- for every allocation made by this pool. Optional.
--
-- Optional, can be null. If not null, it must point to a @pNext@ chain of
-- structures that can be attached to @VkMemoryAllocateInfo@. It can be
-- useful for special needs such as adding @VkExportMemoryAllocateInfoKHR@.
-- Structures pointed by this member must remain alive and unchanged for
-- the whole lifetime of the custom pool.
--
-- Please note that some structures, e.g.
-- @VkMemoryPriorityAllocateInfoEXT@, @VkMemoryDedicatedAllocateInfoKHR@,
-- can be attached automatically by this library when using other, more
-- convenient of its features.
memoryAllocateNext :: Ptr ()
}
deriving (Typeable, Eq)
deriving (Typeable)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PoolCreateInfo)
#endif
deriving instance Show PoolCreateInfo

instance ToCStruct PoolCreateInfo where
withCStruct x f = allocaBytesAligned 40 8 $ \p -> pokeCStruct p x (f p)
withCStruct x f = allocaBytesAligned 56 8 $ \p -> pokeCStruct p x (f p)
pokeCStruct p PoolCreateInfo{..} f = do
poke ((p `plusPtr` 0 :: Ptr Word32)) (memoryTypeIndex)
poke ((p `plusPtr` 4 :: Ptr PoolCreateFlags)) (flags)
Expand All @@ -4004,8 +4026,10 @@ instance ToCStruct PoolCreateInfo where
poke ((p `plusPtr` 24 :: Ptr CSize)) (CSize (maxBlockCount))
poke ((p `plusPtr` 32 :: Ptr Word32)) (frameInUseCount)
poke ((p `plusPtr` 36 :: Ptr CFloat)) (CFloat (priority))
poke ((p `plusPtr` 40 :: Ptr DeviceSize)) (minAllocationAlignment)
poke ((p `plusPtr` 48 :: Ptr (Ptr ()))) (memoryAllocateNext)
f
cStructSize = 40
cStructSize = 56
cStructAlignment = 8
pokeZeroCStruct p f = do
poke ((p `plusPtr` 0 :: Ptr Word32)) (zero)
Expand All @@ -4015,6 +4039,7 @@ instance ToCStruct PoolCreateInfo where
poke ((p `plusPtr` 24 :: Ptr CSize)) (CSize (zero))
poke ((p `plusPtr` 32 :: Ptr Word32)) (zero)
poke ((p `plusPtr` 36 :: Ptr CFloat)) (CFloat (zero))
poke ((p `plusPtr` 40 :: Ptr DeviceSize)) (zero)
f

instance FromCStruct PoolCreateInfo where
Expand All @@ -4026,11 +4051,13 @@ instance FromCStruct PoolCreateInfo where
maxBlockCount <- peek @CSize ((p `plusPtr` 24 :: Ptr CSize))
frameInUseCount <- peek @Word32 ((p `plusPtr` 32 :: Ptr Word32))
priority <- peek @CFloat ((p `plusPtr` 36 :: Ptr CFloat))
minAllocationAlignment <- peek @DeviceSize ((p `plusPtr` 40 :: Ptr DeviceSize))
pMemoryAllocateNext <- peek @(Ptr ()) ((p `plusPtr` 48 :: Ptr (Ptr ())))
pure $ PoolCreateInfo
memoryTypeIndex flags blockSize (coerce @CSize @Word64 minBlockCount) (coerce @CSize @Word64 maxBlockCount) frameInUseCount (coerce @CFloat @Float priority)
memoryTypeIndex flags blockSize (coerce @CSize @Word64 minBlockCount) (coerce @CSize @Word64 maxBlockCount) frameInUseCount (coerce @CFloat @Float priority) minAllocationAlignment pMemoryAllocateNext

instance Storable PoolCreateInfo where
sizeOf ~_ = 40
sizeOf ~_ = 56
alignment ~_ = 8
peek = peekCStruct
poke ptr poked = pokeCStruct ptr poked (pure ())
Expand All @@ -4044,6 +4071,8 @@ instance Zero PoolCreateInfo where
zero
zero
zero
zero
zero


-- | VmaPoolStats
Expand Down
3 changes: 3 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

## WIP

## [3.11] - 2021-06-21
- Bump API version to v1.2.182

## [3.10.4] - 2021-06-14
- Bump API version to v1.2.181

Expand Down
2 changes: 1 addition & 1 deletion openxr/package.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ library:
cpp-options: -DTRACE_CALLS
- condition: flag(use-vulkan-types)
cpp-options: -DUSE_VULKAN_TYPES
dependencies: vulkan >= 3.0 && < 3.11
dependencies: vulkan >= 3.0 && < 3.12
ghc-options:
- -Wall
- -Wno-unticked-promoted-constructors
Expand Down
2 changes: 1 addition & 1 deletion package.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: vulkan
version: "3.10.4"
version: "3.11"
synopsis: Bindings to the Vulkan graphics API.
category: Graphics
maintainer: Joe Hermaszewski <[email protected]>
Expand Down
32 changes: 32 additions & 0 deletions src/Vulkan/CStruct/Extends.hs
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,15 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (Accelerat
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (AccelerationStructureGeometryAabbsDataKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (AccelerationStructureGeometryInstancesDataKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (AccelerationStructureGeometryKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (AccelerationStructureGeometryMotionTrianglesDataNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (AccelerationStructureGeometryTrianglesDataKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (AccelerationStructureInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (AccelerationStructureInstanceKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (AccelerationStructureMatrixMotionInstanceNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (AccelerationStructureMemoryRequirementsInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (AccelerationStructureMotionInfoNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (AccelerationStructureMotionInstanceNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (AccelerationStructureSRTMotionInstanceNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_acceleration_structure (AccelerationStructureVersionInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_swapchain (AcquireNextImageInfoKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_performance_query (AcquireProfilingLockInfoKHR)
Expand Down Expand Up @@ -321,6 +326,8 @@ import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (MemoryType)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_external_memory_win32 (MemoryWin32HandlePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_FUCHSIA_external_memory (MemoryZirconHandlePropertiesFUCHSIA)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_metal_surface (MetalSurfaceCreateInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_multi_draw (MultiDrawIndexedInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_multi_draw (MultiDrawInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (MultisamplePropertiesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_VALVE_mutable_descriptor_type (MutableDescriptorTypeCreateInfoVALVE)
import {-# SOURCE #-} Vulkan.Extensions.VK_VALVE_mutable_descriptor_type (MutableDescriptorTypeListVALVE)
Expand Down Expand Up @@ -367,6 +374,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_device_memory_report (PhysicalDev
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_device_diagnostics_config (PhysicalDeviceDiagnosticsConfigFeaturesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_discard_rectangles (PhysicalDeviceDiscardRectanglePropertiesEXT)
import {-# SOURCE #-} Vulkan.Core12.Promoted_From_VK_KHR_driver_properties (PhysicalDeviceDriverProperties)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_physical_device_drm (PhysicalDeviceDrmPropertiesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_scissor_exclusive (PhysicalDeviceExclusiveScissorFeaturesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_extended_dynamic_state2 (PhysicalDeviceExtendedDynamicState2FeaturesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_extended_dynamic_state (PhysicalDeviceExtendedDynamicStateFeaturesEXT)
Expand Down Expand Up @@ -412,6 +420,8 @@ import {-# SOURCE #-} Vulkan.Core10.DeviceInitialization (PhysicalDeviceMemoryPr
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2 (PhysicalDeviceMemoryProperties2)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_mesh_shader (PhysicalDeviceMeshShaderFeaturesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_mesh_shader (PhysicalDeviceMeshShaderPropertiesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_multi_draw (PhysicalDeviceMultiDrawFeaturesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_multi_draw (PhysicalDeviceMultiDrawPropertiesEXT)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_multiview (PhysicalDeviceMultiviewFeatures)
import {-# SOURCE #-} Vulkan.Extensions.VK_NVX_multiview_per_view_attributes (PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)
import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_multiview (PhysicalDeviceMultiviewProperties)
Expand All @@ -433,6 +443,7 @@ import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_provoking_vertex (PhysicalDeviceP
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_provoking_vertex (PhysicalDeviceProvokingVertexPropertiesEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_push_descriptor (PhysicalDevicePushDescriptorPropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_query (PhysicalDeviceRayQueryFeaturesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (PhysicalDeviceRayTracingMotionBlurFeaturesNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing_pipeline (PhysicalDeviceRayTracingPipelineFeaturesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_ray_tracing_pipeline (PhysicalDeviceRayTracingPipelinePropertiesKHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing (PhysicalDeviceRayTracingPropertiesNV)
Expand Down Expand Up @@ -572,6 +583,7 @@ import {-# SOURCE #-} Vulkan.Core11.Promoted_From_VK_KHR_multiview (RenderPassMu
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (RenderPassSampleLocationsBeginInfoEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_QCOM_render_pass_transform (RenderPassTransformBeginInfoQCOM)
import {-# SOURCE #-} Vulkan.Extensions.VK_KHR_copy_commands2 (ResolveImageInfo2KHR)
import {-# SOURCE #-} Vulkan.Extensions.VK_NV_ray_tracing_motion_blur (SRTDataNV)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (SampleLocationEXT)
import {-# SOURCE #-} Vulkan.Extensions.VK_EXT_sample_locations (SampleLocationsInfoEXT)
import {-# SOURCE #-} Vulkan.Core10.Sampler (SamplerCreateInfo)
Expand Down Expand Up @@ -771,6 +783,8 @@ instance Zero BaseInStructure where


type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends AccelerationStructureCreateInfoKHR AccelerationStructureMotionInfoNV = ()
Extends AccelerationStructureGeometryTrianglesDataKHR AccelerationStructureGeometryMotionTrianglesDataNV = ()
Extends AndroidHardwareBufferPropertiesANDROID AndroidHardwareBufferFormatPropertiesANDROID = ()
Extends AttachmentDescription2 AttachmentDescriptionStencilLayout = ()
Extends AttachmentReference2 AttachmentReferenceStencilLayout = ()
Expand Down Expand Up @@ -809,6 +823,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends DeviceCreateInfo PhysicalDeviceSamplerYcbcrConversionFeatures = ()
Extends DeviceCreateInfo PhysicalDeviceProtectedMemoryFeatures = ()
Extends DeviceCreateInfo PhysicalDeviceBlendOperationAdvancedFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceMultiDrawFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceInlineUniformBlockFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceShaderDrawParametersFeatures = ()
Extends DeviceCreateInfo PhysicalDeviceShaderFloat16Int8Features = ()
Expand Down Expand Up @@ -890,6 +905,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends DeviceCreateInfo PhysicalDeviceInheritedViewportScissorFeaturesNV = ()
Extends DeviceCreateInfo PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceProvokingVertexFeaturesEXT = ()
Extends DeviceCreateInfo PhysicalDeviceRayTracingMotionBlurFeaturesNV = ()
Extends DeviceQueueCreateInfo DeviceQueueGlobalPriorityCreateInfoEXT = ()
Extends FenceCreateInfo ExportFenceCreateInfo = ()
Extends FenceCreateInfo ExportFenceWin32HandleInfoKHR = ()
Expand Down Expand Up @@ -953,6 +969,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends PhysicalDeviceFeatures2 PhysicalDeviceSamplerYcbcrConversionFeatures = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceProtectedMemoryFeatures = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceBlendOperationAdvancedFeaturesEXT = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceMultiDrawFeaturesEXT = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceInlineUniformBlockFeaturesEXT = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderDrawParametersFeatures = ()
Extends PhysicalDeviceFeatures2 PhysicalDeviceShaderFloat16Int8Features = ()
Expand Down Expand Up @@ -1039,6 +1056,7 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends PhysicalDeviceImageFormatInfo2 PhysicalDeviceImageViewImageFormatInfoEXT = ()
Extends PhysicalDeviceMemoryProperties2 PhysicalDeviceMemoryBudgetPropertiesEXT = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceDeviceGeneratedCommandsPropertiesNV = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceMultiDrawPropertiesEXT = ()
Extends PhysicalDeviceProperties2 PhysicalDevicePushDescriptorPropertiesKHR = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceDriverProperties = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceIDProperties = ()
Expand Down Expand Up @@ -1085,6 +1103,8 @@ type family Extends (a :: [Type] -> Type) (b :: Type) :: Constraint where
Extends PhysicalDeviceProperties2 PhysicalDeviceFragmentShadingRatePropertiesKHR = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceFragmentShadingRateEnumsPropertiesNV = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceProvokingVertexPropertiesEXT = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceDrmPropertiesEXT = ()
Extends PhysicalDeviceProperties2 PhysicalDeviceRayTracingMotionBlurFeaturesNV = ()
Extends PhysicalDeviceSurfaceInfo2KHR SurfaceFullScreenExclusiveInfoEXT = ()
Extends PhysicalDeviceSurfaceInfo2KHR SurfaceFullScreenExclusiveWin32InfoEXT = ()
Extends PipelineColorBlendStateCreateInfo PipelineColorBlendAdvancedStateCreateInfoEXT = ()
Expand Down Expand Up @@ -1280,6 +1300,7 @@ peekChainHead ty p c = case ty of
STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT -> go @DevicePrivateDataCreateInfoEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT -> go @PhysicalDevicePrivateDataFeaturesEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV -> go @PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT -> go @PhysicalDeviceMultiDrawPropertiesEXT
STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV -> go @GraphicsPipelineShaderGroupsCreateInfoNV
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 -> go @(PhysicalDeviceFeatures2 '[])
STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR -> go @PhysicalDevicePushDescriptorPropertiesKHR
Expand Down Expand Up @@ -1353,6 +1374,7 @@ peekChainHead ty p c = case ty of
STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT -> go @PhysicalDeviceSampleLocationsPropertiesEXT
STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO -> go @SamplerReductionModeCreateInfo
STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT -> go @PhysicalDeviceBlendOperationAdvancedFeaturesEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT -> go @PhysicalDeviceMultiDrawFeaturesEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT -> go @PhysicalDeviceBlendOperationAdvancedPropertiesEXT
STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT -> go @PipelineColorBlendAdvancedStateCreateInfoEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT -> go @PhysicalDeviceInlineUniformBlockFeaturesEXT
Expand Down Expand Up @@ -1546,6 +1568,10 @@ peekChainHead ty p c = case ty of
STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT -> go @PhysicalDeviceProvokingVertexFeaturesEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT -> go @PhysicalDeviceProvokingVertexPropertiesEXT
STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT -> go @PipelineRasterizationProvokingVertexStateCreateInfoEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT -> go @PhysicalDeviceDrmPropertiesEXT
STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV -> go @PhysicalDeviceRayTracingMotionBlurFeaturesNV
STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV -> throwIO $ IOError Nothing InvalidArgument "peekChainHead" ("struct type STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV contains an undiscriminated union (DeviceOrHostAddressConstKHR) and can't be safely peeked") Nothing Nothing
STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV -> go @AccelerationStructureMotionInfoNV
t -> throwIO $ IOError Nothing InvalidArgument "peekChainHead" ("Unrecognized struct type: " <> show t) Nothing Nothing
where
go :: forall e . (Typeable e, FromCStruct e, ToCStruct e, Show e) => IO b
Expand Down Expand Up @@ -1616,6 +1642,7 @@ infix 6 ::&
{-# complete (::&) :: DevicePrivateDataCreateInfoEXT #-}
{-# complete (::&) :: PhysicalDevicePrivateDataFeaturesEXT #-}
{-# complete (::&) :: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV #-}
{-# complete (::&) :: PhysicalDeviceMultiDrawPropertiesEXT #-}
{-# complete (::&) :: GraphicsPipelineShaderGroupsCreateInfoNV #-}
{-# complete (::&) :: PhysicalDeviceFeatures2 #-}
{-# complete (::&) :: PhysicalDevicePushDescriptorPropertiesKHR #-}
Expand Down Expand Up @@ -1689,6 +1716,7 @@ infix 6 ::&
{-# complete (::&) :: PhysicalDeviceSampleLocationsPropertiesEXT #-}
{-# complete (::&) :: SamplerReductionModeCreateInfo #-}
{-# complete (::&) :: PhysicalDeviceBlendOperationAdvancedFeaturesEXT #-}
{-# complete (::&) :: PhysicalDeviceMultiDrawFeaturesEXT #-}
{-# complete (::&) :: PhysicalDeviceBlendOperationAdvancedPropertiesEXT #-}
{-# complete (::&) :: PipelineColorBlendAdvancedStateCreateInfoEXT #-}
{-# complete (::&) :: PhysicalDeviceInlineUniformBlockFeaturesEXT #-}
Expand Down Expand Up @@ -1882,6 +1910,10 @@ infix 6 ::&
{-# complete (::&) :: PhysicalDeviceProvokingVertexFeaturesEXT #-}
{-# complete (::&) :: PhysicalDeviceProvokingVertexPropertiesEXT #-}
{-# complete (::&) :: PipelineRasterizationProvokingVertexStateCreateInfoEXT #-}
{-# complete (::&) :: PhysicalDeviceDrmPropertiesEXT #-}
{-# complete (::&) :: PhysicalDeviceRayTracingMotionBlurFeaturesNV #-}
{-# complete (::&) :: AccelerationStructureGeometryMotionTrianglesDataNV #-}
{-# complete (::&) :: AccelerationStructureMotionInfoNV #-}

-- | View the head and tail of a 'Chain', see '::&'
--
Expand Down
Loading

0 comments on commit a5a91a4

Please sign in to comment.