-- | Interpolating wavetable oscillator. module Sound.SC3.UGen.Record.Osc where import qualified Sound.SC3.UGen as S import Sound.SC3.UGen.Record data Osc = Osc { rate :: S.Rate, bufnum :: S.UGen, freq :: S.UGen, phase :: S.UGen } deriving (Show) osc :: Osc osc = Osc { rate = S.AR, bufnum = 0.0, freq = 440.0, phase = 0.0 } mkOsc :: Osc -> S.UGen mkOsc (Osc r a' b' c') = S.mkOsc r "Osc" [a',b',c'] 1 instance Make Osc where ugen = mkOsc