|
Synthesizer.Plain.Modifier |
|
|
Description |
Support for stateful modifiers like controlled filters.
This is similar to Synthesizer.Causal.Process
but we cannot replace the Modifier structure by the Causal structure
because the Modifier structure exhibits the state
which allows stacking of modifiers
using an efficient storage for the stacked state.
More precisely, because Modifiers exhibits the type of the state,
we can ensure that the state type of several modifiers is equal
and thus the individual states can be stored in an array or a StorableVector.
|
|
Synopsis |
|
|
|
Documentation |
|
|
|
|
Constructors | Simple | | init :: s | | step :: ctrl -> a -> State s b | |
|
|
|
|
|
modif is a process controlled by values of type c
with an internal state of type s,
it converts an input value of type a into an output value of type b
while turning into a new state
ToDo:
Shall finite signals be padded with zeros?
|
|
|
Here the control may vary over the time.
|
|
data Initialized s init ctrl a b | Source |
|
Constructors | Initialized | | initInit :: init -> s | | initStep :: ctrl -> a -> State s b | |
|
|
|
|
|
|
|
|
|
Here the control may vary over the time.
|
|
|
The number of stacked state monads
depends on the size of the list of state values.
This is like a dynamically nested StateT.
|
|
|
|
|
|
|
|
|
|
Produced by Haddock version 2.4.2 |