-- | Dynamic stochastic synthesis generator.
module Sound.SC3.UGen.Record.Gendy2 where
import qualified Sound.SC3.UGen as S
import Sound.SC3.UGen.Record
data Gendy2 = Gendy2 {
  rate :: S.Rate,
  ampdist :: S.UGen,
  durdist :: S.UGen,
  adparam :: S.UGen,
  ddparam :: S.UGen,
  minfreq :: S.UGen,
  maxfreq :: S.UGen,
  ampscale :: S.UGen,
  durscale :: S.UGen,
  initCPs :: S.UGen,
  knum :: S.UGen,
  a :: S.UGen,
  c :: S.UGen
  } deriving (Show)
gendy2 :: Gendy2
gendy2 = Gendy2 {
  rate = S.AR,
  ampdist = 1.0,
  durdist = 1.0,
  adparam = 1.0,
  ddparam = 1.0,
  minfreq = 440.0,
  maxfreq = 660.0,
  ampscale = 0.5,
  durscale = 0.5,
  initCPs = 12.0,
  knum = 0.0,
  a = 1.17,
  c = 0.31
  }
mkGendy2 :: Gendy2 -> S.UGen
mkGendy2 (Gendy2 r a' b' c' d' e' f' g' h' i' j' k' l') = S.mkOsc r "Gendy2" [a',b',c',d',e',f',g',h',i',j',k',l'] 1
instance Make Gendy2 where
  ugen = mkGendy2