Safe Haskell | Safe-Inferred |
---|
- data UGenId
- data Constant = Constant {}
- data Control = Control {}
- data Label = Label {}
- type Output = Rate
- newtype Special = Special Int
- data Primitive = Primitive {
- ugenRate :: Rate
- ugenName :: String
- ugenInputs :: [UGen]
- ugenOutputs :: [Output]
- ugenSpecial :: Special
- ugenId :: UGenId
- data Proxy = Proxy {}
- data MRG = MRG {}
- data UGen
- isConstant :: UGen -> Bool
- isSink :: UGen -> Bool
- checkInput :: UGen -> UGen
- u_constant :: UGen -> Double
- constant :: Real a => a -> UGen
- mce :: [UGen] -> UGen
- mrg :: [UGen] -> UGen
- proxy :: UGen -> Int -> UGen
- mceProxies :: MCE UGen -> [UGen]
- isMCE :: UGen -> Bool
- mceChannels :: UGen -> [UGen]
- mceDegree :: UGen -> Int
- mceExtend :: Int -> UGen -> [UGen]
- mceInputTransform :: [UGen] -> Maybe [[UGen]]
- mceBuild :: ([UGen] -> UGen) -> [UGen] -> UGen
- rateOf :: UGen -> Rate
- proxify :: UGen -> UGen
- mkUGen :: Maybe ([Double] -> Double) -> [Rate] -> Maybe Rate -> String -> [UGen] -> Int -> Special -> UGenId -> UGen
- mkOperator :: ([Double] -> Double) -> String -> [UGen] -> Int -> UGen
- mkUnaryOperator :: Unary -> (Double -> Double) -> UGen -> UGen
- mkBinaryOperator_optimize :: Binary -> (Double -> Double -> Double) -> (Either Double Double -> Bool) -> UGen -> UGen -> UGen
- mkBinaryOperator :: Binary -> (Double -> Double -> Double) -> UGen -> UGen -> UGen
- hashUGen :: UGen -> Int
Basic types
Constants.
Constant 3 == Constant 3 (Constant 3 > Constant 1) == True
Control inputs.
Operating mode of unary and binary operators.
UGen primitives.
Primitive | |
|
Proxy to multiple channel input.
Proxy | |
|
Union type of Unit Generator forms.
Constant_U Constant | |
Control_U Control | |
Label_U Label | |
Primitive_U Primitive | |
Proxy_U Proxy | |
MCE_U (MCE UGen) | |
MRG_U MRG |
Enum UGen | Unit generators are enumerable. |
Eq UGen | |
Floating UGen | Unit generators are floating point. |
Fractional UGen | Unit generators are fractional. |
Integral UGen | Unit generators are integral. |
Num UGen | Unit generators are numbers. |
Ord UGen | Unit generators are orderable (when (constant 2 > constant 1) == True |
Real UGen | Unit generators are real. |
Show UGen | |
Bits UGen | UGens are bit patterns. |
Random UGen | Unit generators are stochastic. |
ID UGen | |
BinaryOp UGen | |
UnaryOp UGen | |
RealFracE UGen | |
OrdE UGen | |
EqE UGen | |
Audible UGen | |
Audible UGen |
Predicates
isConstant :: UGen -> BoolSource
Constant node predicate.
Validators
checkInput :: UGen -> UGenSource
Ensure input UGen
is valid, ie. not a sink.
Accessors
u_constant :: UGen -> DoubleSource
Value of Constant_U
Constant
.
Constructors
MCE
mceChannels :: UGen -> [UGen]Source
Output channels of UGen as a list.
mceInputTransform :: [UGen] -> Maybe [[UGen]]Source
Apply MCE transform to a list of inputs.
mceBuild :: ([UGen] -> UGen) -> [UGen] -> UGenSource
Build a UGen after MCE transformation of inputs.
mkUGen :: Maybe ([Double] -> Double) -> [Rate] -> Maybe Rate -> String -> [UGen] -> Int -> Special -> UGenId -> UGenSource
Construct proxied and multiple channel expanded UGen.
Operators
mkOperator :: ([Double] -> Double) -> String -> [UGen] -> Int -> UGenSource
Operator UGen constructor.
mkUnaryOperator :: Unary -> (Double -> Double) -> UGen -> UGenSource
Unary math constructor with constant optimization.
mkBinaryOperator_optimize :: Binary -> (Double -> Double -> Double) -> (Either Double Double -> Bool) -> UGen -> UGen -> UGenSource
Binary math constructor with constant optimization.
let o = sinOsc AR 440 0
o * 1 == o && 1 * o == o && o * 2 /= o o + 0 == o && 0 + o == o && o + 1 /= o o - 0 == o && 0 - o /= o o / 1 == o && 1 / o /= o o ** 1 == o && o ** 2 /= o
mkBinaryOperator :: Binary -> (Double -> Double -> Double) -> UGen -> UGen -> UGenSource
Binary math constructor with constant optimization.