hsc3-0.3: Haskell SuperCollider

Sound.SC3.UGen.UGen

Contents

Synopsis

Documentation

type Output = RateSource

Unit generator output descriptor.

newtype Special Source

Operating mode of unary and binary operators.

Constructors

Special Int 

Instances

newtype UGenId Source

Identifier for non-functional unit generators.

Constructors

UGenId Int 

Instances

Unit generator node constructors.

uid :: Int -> UGenIdSource

Unit generator identifier constructor.

constant :: Real a => a -> UGenSource

Constant value node constructor.

control :: Rate -> String -> Double -> UGenSource

Control input node constructor.

mce :: [UGen] -> UGenSource

Multiple channel expansion node constructor.

mrg2 :: UGen -> UGen -> UGenSource

Multiple root graph node constructor.

proxy :: UGen -> Int -> UGenSource

Unit generator proxy node constructor.

Unit generator node predicates.

isConstant :: UGen -> BoolSource

Constant node predicate.

isControl :: UGen -> BoolSource

Control node predicate.

isUGen :: UGen -> BoolSource

Unit generator primitive node predicate.

isProxy :: UGen -> BoolSource

Proxy node predicate.

isMCE :: UGen -> BoolSource

Multiple channel expansion node predicate.

isMRG :: UGen -> BoolSource

MRG predicate.

Multiple channel expansion.

mce2 :: UGen -> UGen -> UGenSource

Multiple channel expansion for two inputs.

clone :: UId m => Int -> m UGen -> m UGenSource

Clone a unit generator (mce . replicateM).

mceDegree :: UGen -> IntSource

Number of channels to expand to.

mceExtend :: Int -> UGen -> [UGen]Source

Extend UGen to specified degree.

mceTransform :: UGen -> UGenSource

Apply MCE transformation.

mceExpand :: UGen -> UGenSource

Apply MCE transformation if required.

mceEdit :: ([UGen] -> [UGen]) -> UGen -> UGenSource

Apply UGen list operation on MCE contents.

mceReverse :: UGen -> UGenSource

Reverse order of channels at MCE.

mceChannel :: Int -> UGen -> UGenSource

Obtain indexed channel at MCE.

mceChannels :: UGen -> [UGen]Source

Output channels of UGen as a list.

mceTranspose :: UGen -> UGenSource

Transpose rows and columns, ie. {{a,b},{c,d}} to {{a,c},{b,d}}.

Multiple root graphs.

mrg :: [UGen] -> UGenSource

Multiple root graph constructor.

Unit generator function builders.

proxify :: UGen -> UGenSource

Apply proxy transformation if required.

rateOf :: UGen -> RateSource

Determine the rate of a UGen.

mkUGen :: Rate -> String -> [UGen] -> [Output] -> Special -> Maybe UGenId -> UGenSource

Construct proxied and multiple channel expanded UGen.

mkOperator :: String -> [UGen] -> Int -> UGenSource

Operator UGen constructor.

mkUnaryOperator :: Unary -> (Double -> Double) -> UGen -> UGenSource

Unary math constructor with constant optimization.

mkBinaryOperator :: Binary -> (Double -> Double -> Double) -> UGen -> UGen -> UGenSource

Binary math constructor with constant optimization.

mkOsc :: Rate -> String -> [UGen] -> Int -> UGenSource

Oscillator constructor.

mkOscId :: UGenId -> Rate -> String -> [UGen] -> Int -> UGenSource

Oscillator constructor, setting identifier.

mkOscMCE :: Rate -> String -> [UGen] -> UGen -> Int -> UGenSource

Variant oscillator constructor with MCE collapsing input.

mkOscMCEId :: UGenId -> Rate -> String -> [UGen] -> UGen -> Int -> UGenSource

Variant oscillator constructor with MCE collapsing input.

mkFilter :: String -> [UGen] -> Int -> UGenSource

Filter UGen constructor.

mkFilterId :: UGenId -> String -> [UGen] -> Int -> UGenSource

Filter UGen constructor.

mkFilterKeyed :: String -> Int -> [UGen] -> Int -> UGenSource

Variant filter with rate derived from keyed input.

mkFilterMCE :: String -> [UGen] -> UGen -> Int -> UGenSource

Variant filter constructor with MCE collapsing input.

mkFilterMCEId :: UGenId -> String -> [UGen] -> UGen -> Int -> UGenSource

Variant filter constructor with MCE collapsing input.

mkInfo :: String -> UGenSource

Information unit generators are very specialized.