gpu-vulkan 0.1.0.154 → 0.1.0.155
raw patch · 3 files changed
+8/−4 lines, 3 filesPVP: minor bump suggested
API additions: PVP suggests at least a minor version bump
API changes (from Hackage documentation)
+ Gpu.Vulkan.Object: sizeAlignmentListWholeAlignment :: SizeAlignmentList objs => ObjAlignment
Files
- gpu-vulkan.cabal +1/−1
- src/Gpu/Vulkan/Memory/Bind.hs +3/−3
- src/Gpu/Vulkan/Object.hs +4/−0
gpu-vulkan.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: gpu-vulkan-version: 0.1.0.154+version: 0.1.0.155 synopsis: Vulkan library description: Please see the README on GitHub at <https://github.com/YoshikuniJujo/gpu-vulkan#readme> category: GPU
src/Gpu/Vulkan/Memory/Bind.hs view
@@ -58,13 +58,13 @@ (U2 (ImageBinded $ Image.Binded i) :**) <$> bindAll dv ibs m (ost' + sz) -instance (VObj.SizeAlignment obj, BindAll ibargs mibargs) =>- BindAll ('(sb, ('BufferArg nm (obj ': objs))) ': ibargs) mibargs where+instance (VObj.SizeAlignmentList objs, BindAll ibargs mibargs) =>+ BindAll ('(sb, ('BufferArg nm objs)) ': ibargs) mibargs where bindAll dv@(Device.D mdv) (U2 bb@(Buffer (Buffer.B lns b)) :** ibs) m ost = do (_, mm) <- readM m (ost', sz) <- adjustOffsetSize dv bb ost- let ost'' = adjust (VObj.alignment @obj) ost'+ let ost'' = adjust (VObj.sizeAlignmentListWholeAlignment @objs) ost' when debug . putStrLn $ "Gpu.Vulkan.Memory.Bind.BindAll (BufferArg): " ++ show (ost', sz) when debug . putStrLn $ "Gpu.Vulkan.Memory.Bind.BindAll (BufferArg): ost'' = " ++ show ost'' Buffer.M.bindMemory mdv b mm ost''
src/Gpu/Vulkan/Object.hs view
@@ -350,14 +350,18 @@ type ObjAlignment = Device.M.Size class SizeAlignmentList objs where+ sizeAlignmentListWholeAlignment :: ObjAlignment sizeAlignmentList :: HeteroParList.PL Length objs -> HeteroParList.PL SizeAlignmentOf objs instance SizeAlignmentList '[] where+ sizeAlignmentListWholeAlignment = 1 sizeAlignmentList HeteroParList.Nil = HeteroParList.Nil instance (SizeAlignment obj, SizeAlignmentList objs) => SizeAlignmentList (obj ': objs) where+ sizeAlignmentListWholeAlignment =+ alignment @obj `lcm` sizeAlignmentListWholeAlignment @objs sizeAlignmentList (ln :** lns) = SizeAlignmentOf (dynNum @obj) (size ln) (alignment @obj) :**