|
Tabula Sonora 0.1.0
A native C++20 implementation of the Roland Sound Canvas VA synth voice
|
What turns a summed destination into its own unit — part_mod_depth_recalc, once per destination. More...
#include <tabulasonora/control_matrix.hpp>
Public Attributes | |
| int | clamp |
| The magnitude ceiling, applied before the scale. | |
| int | shift |
| The left shift the magnitude takes first. | |
| int | multiplier |
| The 16.16 multiplier whose high word is the result. | |
What turns a summed destination into its own unit — part_mod_depth_recalc, once per destination.
The engine keeps eleven running sums per part, one a destination, each the total of the five part-wide sources. A sum is a raw depth x amount product in no unit at all; this is the step that gives it one. Every destination does the same three things — clamp the magnitude, shift it, take the high word of a 16-bit multiply — and differs only in the three constants.
| int ts::ControlMatrix::Law::clamp |
The magnitude ceiling, applied before the scale.
| int ts::ControlMatrix::Law::shift |
The left shift the magnitude takes first.
| int ts::ControlMatrix::Law::multiplier |
The 16.16 multiplier whose high word is the result.