module Sound.SC3.UGen.Record.GrainSin where
import qualified Sound.SC3.UGen as S
import Sound.SC3.UGen.Record
data GrainSin = GrainSin {
numChannels :: S.UGen,
trigger :: S.UGen,
dur :: S.UGen,
freq :: S.UGen,
pan :: S.UGen,
envbufnum :: S.UGen,
maxGrains :: S.UGen
} deriving (Show)
grainSin :: GrainSin
grainSin = GrainSin {
numChannels = 1.0,
trigger = 0.0,
dur = 1.0,
freq = 440.0,
pan = 0.0,
envbufnum = 1.0,
maxGrains = 512.0
}
mkGrainSin :: GrainSin -> S.UGen
mkGrainSin (GrainSin a' b' c' d' e' f' g') = S.mkOsc S.AR "GrainSin" [a',b',c',d',e',f',g'] 1
instance Make GrainSin where
ugen = mkGrainSin