synthesizer-0.2: Audio signal processing coded in HaskellSource codeContentsIndex
Sound.Signal.Block
Synopsis
type ChunkSize = Int
defaultChunkSize :: ChunkSize
newtype T a = Cons {
chunks :: [Chunk a]
}
data Chunk a = Chunk {
offset :: Int
size :: ChunkSize
body :: Array Int a
}
singleton :: a -> T a
isEmpty :: T a -> Bool
head :: T a -> a
tail :: T a -> T a
tails :: T a -> [T a]
toList :: T a -> [a]
toListAlt :: T a -> [a]
fromList :: ChunkSize -> [a] -> T a
minLength :: Int -> [a] -> Int
unfoldR :: ChunkSize -> (acc -> Maybe (y, acc)) -> acc -> (acc, T y)
reduceL :: (a -> acc -> Maybe acc) -> acc -> T a -> acc
mapAccumL :: ChunkSize -> (x -> acc -> Maybe (y, acc)) -> acc -> T x -> (acc, T y)
append :: T a -> T a -> T a
zipWith :: ChunkSize -> (a -> b -> c) -> T a -> T b -> T c
Documentation
type ChunkSize = IntSource
defaultChunkSize :: ChunkSizeSource
newtype T a Source
Constructors
Cons
chunks :: [Chunk a]
show/hide Instances
C T
Show a => Show (T a)
data Chunk a Source
The array starts with index 0. We always consider a subarray of body starting at offset with size size. This way we safe copy operations and we can efficiently drop, take and append chunk lists. Unfortunately, Data.Array does not provide subarrays with sharing. Every chunk must have at least size 1.
Constructors
Chunk
offset :: Int
size :: ChunkSize
body :: Array Int a
show/hide Instances
Show a => Show (Chunk a)
singleton :: a -> T aSource
isEmpty :: T a -> BoolSource
head :: T a -> aSource
tail :: T a -> T aSource
tails :: T a -> [T a]Source
toList :: T a -> [a]Source
toListAlt :: T a -> [a]Source
fromList :: ChunkSize -> [a] -> T aSource
minLength :: Int -> [a] -> IntSource
unfoldR :: ChunkSize -> (acc -> Maybe (y, acc)) -> acc -> (acc, T y)Source
reduceL :: (a -> acc -> Maybe acc) -> acc -> T a -> accSource
mapAccumL :: ChunkSize -> (x -> acc -> Maybe (y, acc)) -> acc -> T x -> (acc, T y)Source
append :: T a -> T a -> T aSource
zipWith :: ChunkSize -> (a -> b -> c) -> T a -> T b -> T cSource
Produced by Haddock version 2.4.2