cleanup envelopeGenerator initialization

This commit is contained in:
2025-12-26 15:37:20 -06:00
parent cbd60e2701
commit d0bf55faf7
3 changed files with 26 additions and 24 deletions

View File

@@ -25,7 +25,6 @@ enum class ParamId : uint16_t {
Count // for sizing
};
// TODO: might make a map of EnvelopeIds to a struct of 4 ParamIds
enum class EnvelopeId : uint16_t {
Osc1Volume,
Osc2Volume,
@@ -35,6 +34,22 @@ enum class EnvelopeId : uint16_t {
Count
};
struct EnvelopeParam {
ParamId a;
ParamId d;
ParamId s;
ParamId r;
};
constexpr std::array<EnvelopeParam, static_cast<size_t>(EnvelopeId::Count)> ENV_PARAMS {{
{ ParamId::Osc1VolumeEnvA, ParamId::Osc1VolumeEnvR, ParamId::Osc1VolumeEnvS, ParamId::Osc1VolumeEnvR }, // Osc1Volume
{ ParamId::Osc1VolumeEnvA, ParamId::Osc1VolumeEnvR, ParamId::Osc1VolumeEnvS, ParamId::Osc1VolumeEnvR }, // Osc2Volume (not implemented)
{ ParamId::Osc1VolumeEnvA, ParamId::Osc1VolumeEnvR, ParamId::Osc1VolumeEnvS, ParamId::Osc1VolumeEnvR }, // Osc3Volume (not implemented)
{ ParamId::FilterCutoffEnvA, ParamId::FilterCutoffEnvR, ParamId::FilterCutoffEnvS, ParamId::FilterCutoffEnvR }, // FilterCutoff
{ ParamId::FilterResonanceEnvA, ParamId::FilterResonanceEnvR, ParamId::FilterResonanceEnvS, ParamId::FilterResonanceEnvR }, // FilterResonance
}};
struct ParamDefault {
float def;
float min;