-- | Band limited pulse wave. module Sound.SC3.UGen.Record.Pulse where import qualified Sound.SC3.UGen as S import Sound.SC3.UGen.Record data Pulse = Pulse { rate :: S.Rate, freq :: S.UGen, width :: S.UGen } deriving (Show) pulse :: Pulse pulse = Pulse { rate = S.AR, freq = 440.0, width = 0.5 } mkPulse :: Pulse -> S.UGen mkPulse (Pulse r a' b') = S.mkOsc r "Pulse" [a',b'] 1 instance Make Pulse where ugen = mkPulse