Safe Haskell | None |
---|
- data T amp yv = Cons amp yv
- cons :: C amp => amp -> yv -> T amp yv
- type Dimensional v y yv = T (Dimensional v y) yv
- type Numeric amp yv = T (Numeric amp) yv
- type Flat y = T (Flat y) y
- type Abstract y = T Abstract y
- type family Amplitude sample
- type family Displacement sample
- class Build sample where
- build :: Amplitude sample -> Displacement sample -> sample
- class Inspect sample where
- amplitude :: sample -> Amplitude sample
- displacement :: sample -> Displacement sample
Documentation
The constructor is only needed for arr
,
which is a kind of a hack.
Cons amp yv |
C q yv => C AllpassCascadeGlobal (Parameter q) (T amp yv) (T amp yv) | |
C q yv => C MoogLowpassGlobal (Parameter q) (T amp yv) (T amp yv) | |
C q yv => C UniversalGlobal (Parameter q) (T amp yv) (T amp (Result yv)) | |
(Storable q, Storable yv, C q yv) => C SecondOrderCascadeGlobal (Parameter q) (T amp yv) (T amp yv) | |
C q yv => C FirstOrderGlobal (Parameter q) (T amp yv) (T amp (Result yv)) | |
C q yv => C AllpassPhaserGlobal (q, Parameter q) (T amp yv) (T amp yv) | |
Inspect (T amp yv) | |
Build (T amp yv) |
type Dimensional v y yv = T (Dimensional v y) yvSource
type family Amplitude sample Source
When you define additional instances, take care that displacements and amplitudes cannot be brought out of order!
type family Displacement sample Source
class Inspect sample whereSource
amplitude :: sample -> Amplitude sampleSource
displacement :: sample -> Displacement sampleSource