Karya, built on Mon Jul 24 11:39:07 PDT 2017 (patch 33511aca01257b76b88de7c7a2763b7a965c084e)

Safe HaskellNone

Derive.Call.Speed

Description

Utilities dealing with speeds.

Synopsis

Documentation

starts Source #

Arguments

:: Internal.Time t 
=> BaseTypes.ControlRef 
-> (t, t) 
-> Bool

If True, include a sample at the end time.

-> Deriver [RealTime.RealTime] 

Get start times until the end of the range, at the given speed.

starts_curve Source #

Arguments

:: ControlUtil.Curve 
-> Speed 
-> Speed 
-> (RealTime.RealTime, RealTime.RealTime) 
-> Bool

If True, include a sample at the end time.

-> Deriver [RealTime.RealTime] 

Get start times for a changing speed. The difference with starts is that the start and end speeds can be different types.

real_starts :: (RealTime.RealTime -> Signal.Y) -> RealTime.RealTime -> RealTime.RealTime -> Deriver [RealTime.RealTime] Source #

Emit RealTimes at the given speed, which may change over time. The speed is taken as hertz in real time, and must be >0.

This returns samples up to and including the end.

score_starts :: (RealTime.RealTime -> Signal.Y) -> ScoreTime.ScoreTime -> ScoreTime.ScoreTime -> Deriver [ScoreTime.ScoreTime] Source #

Emit ScoreTimes at the given speed, which may change over time. The ScoreTimes are emitted as the reciprocal of the signal at the given point in time, so it must be >0.

The result is that the speed of the emitted samples should depend on the tempo in effect.

This returns samples up to and including the end.

convert_score_signal :: Typecheck.Function -> Deriver (ScoreTime.ScoreTime -> ScoreTime.ScoreTime) Source #

Convert a function from RealTime to a ScoreTime duration to a function from ScoreTime to ScoreTime duration.

duration_starts :: (Num a, Ord a, Show a) => (a -> a) -> a -> a -> Either Text [a] Source #