Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::signal::DiatonicMapping Struct Reference

The result of one key+scale interval mapping. More...

#include <harmony_engine.hpp>

Public Attributes

int shift_semitones = 0
 The concrete shift. THIS is the "intelligent" bit.
int input_midi = 0
 The chromatic note the tracker was rounded to.
int snapped_midi = 0
 The in-scale note the input was snapped to.
int target_midi = 0
 The in-scale note the harmony voice plays.
int degree = 0
 Index of snapped_midi in the scale's degree list.
bool chromatic = false
 The input was off-scale and had to be snapped.
bool clamped = false
 The shift hit the ±1 octave ratio clamp.

Detailed Description

The result of one key+scale interval mapping.

Everything a caller or a test needs to check the answer against the mask rather than against a literal.

Member Data Documentation

◆ chromatic

bool pulp::signal::DiatonicMapping::chromatic = false

The input was off-scale and had to be snapped.

◆ clamped

bool pulp::signal::DiatonicMapping::clamped = false

The shift hit the ±1 octave ratio clamp.

◆ degree

int pulp::signal::DiatonicMapping::degree = 0

Index of snapped_midi in the scale's degree list.

◆ input_midi

int pulp::signal::DiatonicMapping::input_midi = 0

The chromatic note the tracker was rounded to.

◆ shift_semitones

int pulp::signal::DiatonicMapping::shift_semitones = 0

The concrete shift. THIS is the "intelligent" bit.

◆ snapped_midi

int pulp::signal::DiatonicMapping::snapped_midi = 0

The in-scale note the input was snapped to.

◆ target_midi

int pulp::signal::DiatonicMapping::target_midi = 0

The in-scale note the harmony voice plays.


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