vivid-0.1.0.2: Sound synthesis with SuperCollider

Safe HaskellSafe-Inferred
LanguageHaskell98

Vivid.SynthDef.Types

Description

Internal. Just use Vivid.SynthDef

Synopsis

Documentation

data CalculationRate Source

The rate that a UGen computes at

Constructors

IR

constant value

KR

control rate

AR

audio rate

DR

demand rate

data SynthDef Source

Internal representation of Synth Definitions. Usually, use sd instead of making these by hand.

This representation (especially _sdUGens) might change in the future.

Constructors

SynthDef 

Instances

Show SynthDef 
Hashable SynthDef

This is the hash of the UGen graph and params, but not the name! So (re)naming a SynthDef will not change its hash.

HasSynthRef SynthDef 
ToSigM (SDState Signal) 

type SDState = State ([Int], SynthDef) Source

State monad to construct SynthDefs

The SynthDef is an under-construction synth definition The [Int] is the id supply. Its type definitely could change in the future

data UGen Source

Representation of Unit Generators. You usually won't be creating these by hand, but instead using things from the library in UGens

Instances

data UnaryOp Source

Unary signal operations. Many of these have functions so you don't need to use this internal representation (e.g. Neg has neg, etc).

This type might not be exposed in the future.

data BinaryOp Source

Binary signal operations. For the simple ones (like Add, Mul, etc.), there are functions (like ~+, ~*, etc.) that wrap them up so you don't have to make a ugen for them yourself.

In the future these may not be exported -- we'll just have functions for all of them.

Constructors

Add 
Sub 
Mul 
IDiv

Integer division

FDiv

Float division

Mod 
Eq 
Ne 
Lt 
Gt 
Le 
Ge 
Min 
Max 
BitAnd 
BitOr 
BitXor 
Lcm 
Gcd 
Round 
RoundUp 
Trunc 
Atan2 
Hypot 
Hypotx 
Pow 
ShiftLeft 
ShiftRight 
UnsignedShift 
Fill 
Ring1

a * (b + 1) == a * b + a

Ring2

a * b + a + b

Ring3

a * a * b

Ring4

a * a * b - a * b * b

DifSqr

a * a - b * b

SumSqr

a * a + b * b

SqrSum

(a + b) ^ 2

SqrDif

(a - b) ^ 2

AbsDif

abs(a - b)

Thresh 
AMClip 
ScaleNeg 
Clip2 
Excess 
Fold2 
Wrap2 
FirstArg 
RandRange 
ExpRandRange 
NumBinarySelectors