Portability | requires multi-parameter type classes |
---|---|

Stability | provisional |

Maintainer | synthesizer@henning-thielemann.de |

# dissection

takeUntilPause :: C a => a -> Int -> T a -> T aSource

Take signal until it falls short of a certain amplitude for a given time.

takeUntilInterval :: (a -> Bool) -> Int -> T a -> T aSource

Take values until the predicate p holds for n successive values. The list is truncated at the beginning of the interval of matching values.

# glueing

:: C v | |

=> T Int (T v) | A list of pairs: (relative start time, signal part), The start time is relative to the start time of the previous event. |

-> T v | The mixed signal. |

Given a list of signals with time stamps, mix them into one signal as they occur in time. Ideally for composing music.

Cf. `MathObj.LaurentPolynomial.series`