This is a variant of the Haskore.Interface.SuperCollider.Play.Install module. It assigns output channels to instruments such that instrument specific global effects can be applied to them.
- type Environment t a = StateT Channel (ReaderT t IO) a
- installUGen :: Transport t => String -> UGen -> Environment t (Channel, NumberChannels)
- installSound :: (Transport t, SoundParameters params) => (parameterTuple -> AttributeList, graph -> Sound params) -> String -> graph -> Environment t (Sound params parameterTuple)
- reset :: Transport t => Environment t ()
- playMusic :: Transport t => UGen -> T DrumAttributes InstrumentAttributes -> Environment t ()
- run :: Environment UDP a -> IO a
- writeScript :: FilePath -> Environment T a -> IO a
- example :: IO ()
Install instruments
installUGen :: Transport t => String -> UGen -> Environment t (Channel, NumberChannels)Source
installSound :: (Transport t, SoundParameters params) => (parameterTuple -> AttributeList, graph -> Sound params) -> String -> graph -> Environment t (Sound params parameterTuple)Source
Play music
reset :: Transport t => Environment t ()Source
playMusic :: Transport t => UGen -> T DrumAttributes InstrumentAttributes -> Environment t ()Source
run :: Environment UDP a -> IO aSource
writeScript :: FilePath -> Environment T a -> IO aSource