hsc3-0.8: Haskell SuperCollider

Sound.SC3.UGen.UGen

Contents

Synopsis

Documentation

class ID a whereSource

Typeclass to constrain UGen identifiers.

Methods

resolveID :: a -> IntSource

Instances

type Output = RateSource

Unit generator output descriptor.

newtype Special Source

Operating mode of unary and binary operators.

Constructors

Special Int 

Instances

Unit generator node constructors

hashUGen :: UGen -> IntSource

Hash function for unit generators.

constant :: Real a => a -> UGenSource

Constant value node constructor.

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

Control input node constructor.

Note that if the name begins with a t_ prefix the control is not converted to a triggered control. Please see tr_control.

tr_control :: String -> Double -> UGenSource

Triggered (kr) 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.

mceMap :: (UGen -> UGen) -> UGen -> UGenSource

Apply a function to each channel at a unit generator.

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}}.

mceSum :: UGen -> UGenSource

Collapse mce by summing (see also mix and mixN).

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 :: ID a => Rate -> String -> [UGen] -> [Output] -> Special -> a -> 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.

mk_osc :: ID a => [Rate] -> a -> Rate -> String -> [UGen] -> Int -> UGenSource

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

Oscillator constructor.

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

Oscillator constructor, rate restricted variant.

mkOscId :: ID a => a -> Rate -> String -> [UGen] -> Int -> UGenSource

Oscillator constructor, setting identifier.

mk_osc_mce :: ID a => a -> Rate -> String -> [UGen] -> UGen -> Int -> UGenSource

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

Variant oscillator constructor with MCE collapsing input.

mkOscMCEId :: ID a => a -> Rate -> String -> [UGen] -> UGen -> Int -> UGenSource

Variant oscillator constructor with MCE collapsing input.

mk_filter :: ID a => [Rate] -> a -> String -> [UGen] -> Int -> UGenSource

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

Filter UGen constructor.

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

Filter UGen constructor.

mkFilterId :: ID a => a -> String -> [UGen] -> Int -> UGenSource

Filter UGen constructor.

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

Variant filter with rate derived from keyed input.

mk_filter_mce :: ID a => [Rate] -> a -> String -> [UGen] -> UGen -> Int -> UGenSource

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

Variant filter constructor with MCE collapsing input.

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

Variant filter constructor with MCE collapsing input.

mkFilterMCEId :: ID a => a -> String -> [UGen] -> UGen -> Int -> UGenSource

Variant filter constructor with MCE collapsing input.

mkInfo :: String -> UGenSource

Information unit generators are very specialized.