Safe Haskell | Safe |
---|---|
Language | Haskell98 |
UGen data structure representation and associated functions.
- toUId :: ID a => a -> UGenId
- ugen_user_name :: String -> Special -> String
- ugenTraverse :: (UGen -> UGen) -> UGen -> UGen
- ugenFoldr :: (UGen -> a -> a) -> a -> UGen -> a
- control_f64 :: Rate -> Maybe Int -> String -> Sample -> UGen
- control :: Rate -> String -> Double -> UGen
- meta_control :: Rate -> String -> Double -> C_Meta_T5 Double -> UGen
- tr_control_f64 :: Maybe Int -> String -> Sample -> UGen
- tr_control :: String -> Double -> UGen
- control_set :: [UGen] -> [UGen]
- mrg2 :: UGen -> UGen -> UGen
- mce2 :: UGen -> UGen -> UGen
- mce2c :: UGen -> (UGen, UGen)
- t2_from_list :: [t] -> (t, t)
- unmce2 :: UGen -> (UGen, UGen)
- mce3 :: UGen -> UGen -> UGen -> UGen
- mceMap :: (UGen -> UGen) -> UGen -> UGen
- map_ix :: ((Int, a) -> b) -> [a] -> [b]
- mce_map_ix :: ((Int, UGen) -> UGen) -> UGen -> UGen
- mceEdit :: ([UGen] -> [UGen]) -> UGen -> UGen
- mceReverse :: UGen -> UGen
- mceChannel :: Int -> UGen -> UGen
- mceTranspose :: UGen -> UGen
- mceSum :: UGen -> UGen
- halt_mce_transform' :: (a -> [a]) -> [a] -> [a]
- halt_mce_transform :: [UGen] -> [UGen]
- label :: String -> UGen
- unpackLabel :: UGen -> [UGen]
- envelope_to_ugen :: Envelope UGen -> UGen
- bitAnd :: UGen -> UGen -> UGen
- bitOr :: UGen -> UGen -> UGen
- bitXOr :: UGen -> UGen -> UGen
- bitNot :: UGen -> UGen
- shiftLeft :: UGen -> UGen -> UGen
- shiftRight :: UGen -> UGen -> UGen
- unsignedShift :: UGen -> UGen -> UGen
- (.<<.) :: UGen -> UGen -> UGen
- (.>>.) :: UGen -> UGen -> UGen
Documentation
ugen_user_name :: String -> Special -> String Source #
Lookup operator name for operator UGens, else UGen name.
UGen graph functions
ugenTraverse :: (UGen -> UGen) -> UGen -> UGen Source #
Depth first traversal of graph at u
applying f
to each node.
Unit generator node constructors
control_f64 :: Rate -> Maybe Int -> String -> Sample -> UGen Source #
Control input node constructor.
control :: Rate -> String -> Double -> UGen Source #
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
.
meta_control :: Rate -> String -> Double -> C_Meta_T5 Double -> UGen Source #
Variant of control
with meta data.
tr_control_f64 :: Maybe Int -> String -> Sample -> UGen Source #
Triggered (kr) control input node constructor.
control_set :: [UGen] -> [UGen] Source #
Set indices at a list of controls.
Multiple channel expansion
mce2c :: UGen -> (UGen, UGen) Source #
Extract two channels from possible MCE, if there is only one channel it is duplicated.
t2_from_list :: [t] -> (t, t) Source #
mceMap :: (UGen -> UGen) -> UGen -> UGen Source #
Apply a function to each channel at a unit generator.
mceReverse :: UGen -> UGen Source #
Reverse order of channels at MCE.
mceTranspose :: UGen -> UGen Source #
Transpose rows and columns, ie. {{a,b},{c,d}} to {{a,c},{b,d}}.
Transform
halt_mce_transform' :: (a -> [a]) -> [a] -> [a] Source #
Given unmce function make halt mce transform.
halt_mce_transform :: [UGen] -> [UGen] Source #
The halt MCE transform, ie. lift channels of last input into list.
halt_mce_transform [1,2,mce2 3 4] == [1,2,3,4]
Multiple root graphs
Labels
unpackLabel :: UGen -> [UGen] Source #
Unpack a label to a length prefixed list of Constant
s. There
is a special case for mce nodes, but it requires labels to be equal
length. Properly, poll
would not unpack the label, it would be
done by the synthdef builder.