gpu-vulkan 0.1.0.164 → 0.1.0.165
raw patch · 5 files changed
+38/−6 lines, 5 filesdep +fixed-genericPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: fixed-generic
API changes (from Hackage documentation)
+ Gpu.Vulkan: Sec :: F E9 Word64 -> Sec
+ Gpu.Vulkan: newtype Sec
+ Gpu.Vulkan: pattern MicroSec :: F E3 Word64 -> Sec
+ Gpu.Vulkan: pattern MilliSec :: F E6 Word64 -> Sec
+ Gpu.Vulkan: pattern NanoSec :: Word64 -> Sec
+ Gpu.Vulkan: remainingArrayLayers :: Word32
+ Gpu.Vulkan: remainingMipLevels :: Word32
+ Gpu.Vulkan.Fence: waitForFs' :: forall sd (sfs :: [Type]). D sd -> PL F sfs -> Bool -> Maybe DiffTime -> IO ()
+ Gpu.Vulkan.Fence.Internal: waitForFs' :: forall sd (sfs :: [Type]). D sd -> PL F sfs -> Bool -> Maybe DiffTime -> IO ()
- Gpu.Vulkan.Fence: waitForFs :: forall sd (sfs :: [Type]). D sd -> PL F sfs -> Bool -> Maybe DiffTime -> IO ()
+ Gpu.Vulkan.Fence: waitForFs :: forall sd (sfs :: [Type]). D sd -> PL F sfs -> Bool -> Maybe Sec -> IO ()
- Gpu.Vulkan.Fence.Internal: waitForFs :: forall sd (sfs :: [Type]). D sd -> PL F sfs -> Bool -> Maybe DiffTime -> IO ()
+ Gpu.Vulkan.Fence.Internal: waitForFs :: forall sd (sfs :: [Type]). D sd -> PL F sfs -> Bool -> Maybe Sec -> IO ()
Files
- gpu-vulkan.cabal +3/−1
- src/Gpu/Vulkan.hs +4/−0
- src/Gpu/Vulkan/Fence.hs +1/−1
- src/Gpu/Vulkan/Fence/Internal.hs +9/−3
- src/Gpu/Vulkan/Internal.hs +21/−1
gpu-vulkan.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: gpu-vulkan-version: 0.1.0.164+version: 0.1.0.165 synopsis: Vulkan library description: Please see the README on GitHub at <https://github.com/YoshikuniJujo/gpu-vulkan#readme> category: GPU@@ -193,6 +193,7 @@ , bytestring <1 , containers <1 , data-default <1+ , fixed-generic <1 , gpu-vulkan-middle >=0.1.0.60 && <1 , hetero-parameter-list <1 , hetero-parameter-list-with-typelevel-tools <1@@ -232,6 +233,7 @@ , bytestring <1 , containers <1 , data-default <1+ , fixed-generic <1 , gpu-vulkan , gpu-vulkan-middle >=0.1.0.60 && <1 , hetero-parameter-list <1
src/Gpu/Vulkan.hs view
@@ -89,6 +89,10 @@ DependencyInfo(..), BlitImageInfo2(..), + Sec(..), pattern NanoSec, pattern MicroSec, pattern MilliSec,++ remainingMipLevels, remainingArrayLayers,+ -- * ENUM module Gpu.Vulkan.Enum,
src/Gpu/Vulkan/Fence.hs view
@@ -12,7 +12,7 @@ -- * WAIT FOR FENCES AND RESET FENCES - waitForFs, resetFs,+ waitForFs, waitForFs', resetFs, -- * ENUM
src/Gpu/Vulkan/Fence/Internal.hs view
@@ -18,7 +18,7 @@ -- * WAIT FOR FENCES AND RESET FENCES - waitForFs, resetFs+ waitForFs, waitForFs', resetFs ) where @@ -33,8 +33,10 @@ import Data.HeteroParList qualified as HeteroParList import Data.Map qualified as Map import Data.Word+import Data.Fixed.Generic qualified as FixedG import Data.Time +import Gpu.Vulkan import Gpu.Vulkan.Fence.Type import qualified Gpu.Vulkan.Device.Type as Device@@ -49,8 +51,12 @@ create (Device.D dvc) ci (AllocationCallbacks.toMiddle -> mac) f = bracket (M.create dvc ci mac) (\fnc -> M.destroy dvc fnc mac) (f . F) -waitForFs :: Device.D sd -> HeteroParList.PL F sfs -> Bool -> Maybe DiffTime -> IO ()-waitForFs (Device.D dvc) fs wa (maybe maxBound diffTimeToNanoseconds -> to) =+waitForFs :: Device.D sd -> HeteroParList.PL F sfs -> Bool -> Maybe Sec -> IO ()+waitForFs (Device.D dvc) fs wa (maybe maxBound (\(Sec (FixedG.MkF ns)) -> ns) -> to) =+ M.waitForFs dvc (HeteroParList.toList (\(F f) -> f) fs) wa to++waitForFs' :: Device.D sd -> HeteroParList.PL F sfs -> Bool -> Maybe DiffTime -> IO ()+waitForFs' (Device.D dvc) fs wa (maybe maxBound diffTimeToNanoseconds -> to) = M.waitForFs dvc (HeteroParList.toList (\(F f) -> f) fs) wa to resetFs :: Device.D sd -> HeteroParList.PL F sfs -> IO ()
src/Gpu/Vulkan/Internal.hs view
@@ -88,8 +88,12 @@ M.Size(..), DependencyInfo(..), dependencyInfoToMiddle,- BlitImageInfo2(..), blitImageInfo2ToMiddle+ BlitImageInfo2(..), blitImageInfo2ToMiddle, + Sec(..), pattern NanoSec, pattern MicroSec, pattern MilliSec,++ M.remainingMipLevels, M.remainingArrayLayers+ ) where import Foreign.Storable.PeekPoke@@ -101,6 +105,9 @@ import Data.HeteroParList qualified as HeteroParList import Data.HeteroParList qualified as HPList import Data.HeteroParList (pattern (:**))+import Data.Word+import Data.Fixed+import Data.Fixed.Generic qualified as FixedG import Data.Text qualified as T import qualified Gpu.Vulkan.Middle as M@@ -347,3 +354,16 @@ M.blitImageInfo2SrcImage = si, M.blitImageInfo2SrcImageLayout = sil, M.blitImageInfo2DstImage = di, M.blitImageInfo2DstImageLayout = dil, M.blitImageInfo2Regions = rs, M.blitImageInfo2Filter = flt }++newtype Sec = Sec (FixedG.F E9 Word64)++pattern NanoSec :: Word64 -> Sec+pattern NanoSec ns = Sec (FixedG.MkF ns)++pattern MicroSec :: FixedG.F E3 Word64 -> Sec+pattern MicroSec ms <- Sec (FixedG.changeUnit -> ms) where+ MicroSec ms = Sec $ FixedG.changeUnit ms++pattern MilliSec :: FixedG.F E6 Word64 -> Sec+pattern MilliSec ms <- Sec (FixedG.changeUnit -> ms) where+ MilliSec ms = Sec $ FixedG.changeUnit ms