synthesizer-core-0.3: src/Synthesizer/ChunkySize.hs
module Synthesizer.ChunkySize where
import qualified Synthesizer.Generic.Signal as SigG
import qualified Number.NonNegativeChunky as Chunky
import qualified Numeric.NonNegative.Chunky as Chunky98
import qualified Data.StorableVector.Lazy as SigSt
import qualified Data.StorableVector.Lazy.Pattern as SigStV
import qualified Data.List as List
type T = Chunky.T SigG.LazySize
fromStorableVectorSize ::
SigStV.LazySize -> T
fromStorableVectorSize =
Chunky.fromChunks .
List.map (\(SigSt.ChunkSize size) -> (SigG.LazySize size)) .
Chunky98.toChunks
toStorableVectorSize ::
T -> SigStV.LazySize
toStorableVectorSize =
Chunky98.fromChunks .
List.map (\(SigG.LazySize size) -> (SigSt.ChunkSize size)) .
Chunky.toChunks
toNullList :: T -> [()]
toNullList =
List.concatMap (\(SigG.LazySize n) -> List.replicate n ()) .
Chunky.toChunks