-- | Envelope generator module Sound.SC3.UGen.Record.EnvGen where import qualified Sound.SC3.UGen as S import Sound.SC3.UGen.Record data EnvGen = EnvGen { rate :: S.Rate, envelope :: S.UGen, gate :: S.UGen, levelScale :: S.UGen, levelBias :: S.UGen, timeScale :: S.UGen, doneAction :: S.UGen } deriving (Show) envGen :: EnvGen envGen = EnvGen { rate = S.AR, envelope = 0.0, gate = 1.0, levelScale = 1.0, levelBias = 0.0, timeScale = 1.0, doneAction = 0.0 } mkEnvGen :: EnvGen -> S.UGen mkEnvGen (EnvGen r a' b' c' d' e' f') = S.mkOsc r "EnvGen" [a',b',c',d',e',f'] 1 instance Make EnvGen where ugen = mkEnvGen