Karya, built on 2023-08-29T07:47:28 (patch 7a412d5d6ba4968ca4155ef276a062ccdeb9109a)
Safe HaskellSafe-Inferred

Derive.Call.Speed

Description

Utilities dealing with speeds.

Synopsis

Documentation

starts Source #

Arguments

:: Internal.Time t 
=> Typecheck.RealTimeFunctionT 
-> (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.CurveF 
-> 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 :: ScoreT.Function -> 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 :: ScoreT.Function -> 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 :: ScoreT.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 #