-- | Variable shaped lag
module Sound.SC3.UGen.Record.VarLag where
import qualified Sound.SC3.UGen as S
import Sound.SC3.UGen.Record
data VarLag = VarLag {
  rate :: S.Rate,
  input :: S.UGen,
  time :: S.UGen,
  curvature :: S.UGen,
  warp :: S.UGen,
  start :: S.UGen
  } deriving (Show)
varLag :: VarLag
varLag = VarLag {
  rate = S.AR,
  input = 0.0,
  time = 0.1,
  curvature = 0.0,
  warp = 5.0,
  start = 0.0
  }
mkVarLag :: VarLag -> S.UGen
mkVarLag (VarLag r a' b' c' d' e') = S.mkOsc r "VarLag" [a',b',c',d',e'] 1
instance Make VarLag where
  ugen = mkVarLag