Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- (>>-^) :: Monad m => ResamplingBuffer m cl1 cl2 a b -> SyncSF m cl2 b c -> ResamplingBuffer m cl1 cl2 a c
- (^->>) :: Monad m => SyncSF m cl1 a b -> ResamplingBuffer m cl1 cl2 b c -> ResamplingBuffer m cl1 cl2 a c
- (*-*) :: Monad m => ResamplingBuffer m cl1 cl2 a b -> ResamplingBuffer m cl1 cl2 c d -> ResamplingBuffer m cl1 cl2 (a, c) (b, d)
- timestamped :: Monad m => (forall b. ResamplingBuffer m cl clf b (f b)) -> ResamplingBuffer m cl clf a (f (a, TimeInfo cl))
Utilities to build ResamplingBuffer
s from smaller components
(>>-^) :: Monad m => ResamplingBuffer m cl1 cl2 a b -> SyncSF m cl2 b c -> ResamplingBuffer m cl1 cl2 a c infix 2 Source #
Postcompose a ResamplingBuffer
with a matching SyncSF
.
(^->>) :: Monad m => SyncSF m cl1 a b -> ResamplingBuffer m cl1 cl2 b c -> ResamplingBuffer m cl1 cl2 a c infix 1 Source #
Precompose a ResamplingBuffer
with a matching SyncSF
.
(*-*) :: Monad m => ResamplingBuffer m cl1 cl2 a b -> ResamplingBuffer m cl1 cl2 c d -> ResamplingBuffer m cl1 cl2 (a, c) (b, d) infix 4 Source #
Parallely compose two ResamplingBuffer
s.
timestamped :: Monad m => (forall b. ResamplingBuffer m cl clf b (f b)) -> ResamplingBuffer m cl clf a (f (a, TimeInfo cl)) Source #
Given a ResamplingBuffer
where the output type depends on the input type polymorphically,
we can produce a timestamped version that simply annotates every input value
with the TimeInfo
when it arrived.