-- | Simple linear envelope generator. module Sound.SC3.UGen.Record.Linen where import qualified Sound.SC3.UGen as S import Sound.SC3.UGen.Record data Linen = Linen { gate :: S.UGen, attackTime :: S.UGen, susLevel :: S.UGen, releaseTime :: S.UGen, doneAction :: S.UGen } deriving (Show) linen :: Linen linen = Linen { gate = 1.0, attackTime = 0.01, susLevel = 1.0, releaseTime = 1.0, doneAction = 0.0 } mkLinen :: Linen -> S.UGen mkLinen (Linen a' b' c' d' e') = S.mkOsc S.KR "Linen" [a',b',c',d',e'] 1 instance Make Linen where ugen = mkLinen