hsc3-rec-0.14: Sound/SC3/UGen/Record/Fold.hs
-- | Fold a signal outside given thresholds.
module Sound.SC3.UGen.Record.Fold where
import qualified Sound.SC3.UGen as S
import Sound.SC3.UGen.Record
data Fold = Fold {
rate :: S.Rate,
in :: S.UGen,
lo :: S.UGen,
hi :: S.UGen
} deriving (Show)
fold :: Fold
fold = Fold {
rate = S.AR,
in = 0.0,
lo = 0.0,
hi = 1.0
}
mkFold :: Fold -> S.UGen
mkFold (Fold r a' b' c') = S.mkOsc r "Fold" [a',b',c'] 1
instance Make Fold where
ugen = mkFold