Intensity statement in force from position until the next event. More...
#include <model.hpp>
Public Member Functions | |
| constexpr bool | operator== (const DynamicsEvent &) const =default |
Public Attributes | |
| timebase::TickPosition | position |
| Canonical tick at which this intensity statement takes effect. | |
| float | intensity = 0.0f |
| Normalized intensity in [0, 1]. | |
| AutomationInterpolation | interpolation = AutomationInterpolation::Continuous |
| How the segment leaving this event reaches the next one. | |
Intensity statement in force from position until the next event.
intensity is normalized to [0, 1] rather than carrying a dynamic marking (pp, mf, ff): a marking is a performance-practice label whose mapping to loudness is instrument- and era-dependent, so storing one would force every reader to agree on a conversion that does not exist. A generator that wants markings can label ranges; a generator that wants a number already has one.
interpolation describes the segment leaving this event, matching AutomationPoint's convention, so the last event's value simply holds.
|
constexprdefault |
| float pulp::timeline::DynamicsEvent::intensity = 0.0f |
Normalized intensity in [0, 1].
Must be finite; a value outside the range is rejected rather than clamped.
| AutomationInterpolation pulp::timeline::DynamicsEvent::interpolation = AutomationInterpolation::Continuous |
How the segment leaving this event reaches the next one.
The final event's value simply holds, whatever this says.
| timebase::TickPosition pulp::timeline::DynamicsEvent::position |
Canonical tick at which this intensity statement takes effect.