Tabula Sonora 0.1.0
A native C++20 implementation of the Roland Sound Canvas VA synth voice
Loading...
Searching...
No Matches
ts::ControlMatrix::Law Struct Reference

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.

Detailed Description

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.

Member Data Documentation

◆ clamp

int ts::ControlMatrix::Law::clamp

The magnitude ceiling, applied before the scale.

◆ shift

int ts::ControlMatrix::Law::shift

The left shift the magnitude takes first.

◆ multiplier

int ts::ControlMatrix::Law::multiplier

The 16.16 multiplier whose high word is the result.


The documentation for this struct was generated from the following file: