From e9941b4337a7c65272ee9145b3c496b7748dd1be Mon Sep 17 00:00:00 2001 From: Paul Fd Date: Sun, 3 Jan 2021 23:29:33 +0100 Subject: [PATCH] Scope the enums in sfz and remove the prefix --- src/sfizz/ADSREnvelope.cpp | 2 +- src/sfizz/Defaults.cpp | 10 ++--- src/sfizz/Defaults.h | 22 +++++----- src/sfizz/FileMetadata.h | 4 +- src/sfizz/ModifierHelpers.h | 12 ++--- src/sfizz/Opcode.cpp | 38 ++++++++-------- src/sfizz/Region.cpp | 26 +++++------ src/sfizz/Region.h | 20 ++++----- src/sfizz/Synth.cpp | 8 ++-- src/sfizz/SynthMessaging.cpp | 44 +++++++++---------- src/sfizz/Voice.cpp | 6 +-- src/sfizz/VoiceManager.cpp | 4 +- .../modulations/sources/FlexEnvelope.cpp | 2 +- tests/FilesT.cpp | 28 ++++++------ 14 files changed, 113 insertions(+), 113 deletions(-) diff --git a/src/sfizz/ADSREnvelope.cpp b/src/sfizz/ADSREnvelope.cpp index b6fab78e..be5b3199 100644 --- a/src/sfizz/ADSREnvelope.cpp +++ b/src/sfizz/ADSREnvelope.cpp @@ -53,7 +53,7 @@ void ADSREnvelope::reset(const EGDescription& desc, const Region& region, const shouldRelease = false; freeRunning = ( (this->sustain == Float(0.0)) - || (region.loopMode == SfzLoopMode::one_shot && region.isOscillator()) + || (region.loopMode == LoopMode::one_shot && region.isOscillator()) ); currentValue = this->start; currentState = State::Delay; diff --git a/src/sfizz/Defaults.cpp b/src/sfizz/Defaults.cpp index fc8be532..622b72f4 100644 --- a/src/sfizz/Defaults.cpp +++ b/src/sfizz/Defaults.cpp @@ -145,11 +145,11 @@ extern const OpcodeSpec lofiBitred { 0.0f, Range(0.0f, 100.0f), kI extern const OpcodeSpec lofiDecim { 0.0f, Range(0.0f, 100.0f), kIgnoreOOB }; extern const OpcodeSpec rectify { 0.0f, Range(0.0f, 100.0f), kIgnoreOOB }; extern const OpcodeSpec stringsNumber { maxStrings, Range(0, maxStrings), kEnforceLowerBound }; -extern const OpcodeSpec trigger { SfzTrigger::attack, Range(SfzTrigger::attack, SfzTrigger::release_key), 0}; -extern const OpcodeSpec crossfadeCurve { SfzCrossfadeCurve::power, Range(SfzCrossfadeCurve::gain, SfzCrossfadeCurve::power), 0}; -extern const OpcodeSpec offMode { SfzOffMode::fast, Range(SfzOffMode::fast, SfzOffMode::time), 0}; -extern const OpcodeSpec velocityOverride { SfzVelocityOverride::current, Range(SfzVelocityOverride::current, SfzVelocityOverride::previous), 0}; -extern const OpcodeSpec selfMask { SfzSelfMask::mask, Range(SfzSelfMask::mask, SfzSelfMask::dontMask), 0}; +extern const OpcodeSpec trigger { Trigger::attack, Range(Trigger::attack, Trigger::release_key), 0}; +extern const OpcodeSpec crossfadeCurve { CrossfadeCurve::power, Range(CrossfadeCurve::gain, CrossfadeCurve::power), 0}; +extern const OpcodeSpec offMode { OffMode::fast, Range(OffMode::fast, OffMode::time), 0}; +extern const OpcodeSpec velocityOverride { VelocityOverride::current, Range(VelocityOverride::current, VelocityOverride::previous), 0}; +extern const OpcodeSpec selfMask { SelfMask::mask, Range(SelfMask::mask, SelfMask::dontMask), 0}; extern const OpcodeSpec filter { FilterType::kFilterNone, Range(FilterType::kFilterNone, FilterType::kFilterPeq), 0}; extern const OpcodeSpec eq { EqType::kEqNone, Range(EqType::kEqNone, EqType::kEqHighShelf), 0}; } // namespace Default diff --git a/src/sfizz/Defaults.h b/src/sfizz/Defaults.h index 2c307e0c..98d34919 100644 --- a/src/sfizz/Defaults.h +++ b/src/sfizz/Defaults.h @@ -30,16 +30,16 @@ #include #include -enum class SfzTrigger { attack = 0, release, release_key, first, legato }; -enum class SfzLoopMode { no_loop = 0, one_shot, loop_continuous, loop_sustain }; -enum class SfzOffMode { fast = 0, normal, time }; -enum class SfzVelocityOverride { current = 0, previous }; -enum class SfzCrossfadeCurve { gain = 0, power }; -enum class SfzSelfMask { mask = 0, dontMask }; namespace sfz { +enum class Trigger { attack = 0, release, release_key, first, legato }; +enum class LoopMode { no_loop = 0, one_shot, loop_continuous, loop_sustain }; +enum class OffMode { fast = 0, normal, time }; +enum class VelocityOverride { current = 0, previous }; +enum class CrossfadeCurve { gain = 0, power }; +enum class SelfMask { mask = 0, dontMask }; enum class OscillatorEnabled { Auto = -1, Off = 0, On = 1 }; enum OpcodeFlags : int { @@ -199,11 +199,11 @@ namespace Default extern const OpcodeSpec lofiDecim; extern const OpcodeSpec rectify; extern const OpcodeSpec stringsNumber; - extern const OpcodeSpec trigger; - extern const OpcodeSpec offMode; - extern const OpcodeSpec crossfadeCurve; - extern const OpcodeSpec velocityOverride; - extern const OpcodeSpec selfMask; + extern const OpcodeSpec trigger; + extern const OpcodeSpec offMode; + extern const OpcodeSpec crossfadeCurve; + extern const OpcodeSpec velocityOverride; + extern const OpcodeSpec selfMask; extern const OpcodeSpec filter; extern const OpcodeSpec eq; diff --git a/src/sfizz/FileMetadata.h b/src/sfizz/FileMetadata.h index 96facb03..a6a152be 100644 --- a/src/sfizz/FileMetadata.h +++ b/src/sfizz/FileMetadata.h @@ -28,7 +28,7 @@ struct RiffChunkInfo { /** @brief Loop mode, like SF_LOOP_* */ -enum LoopMode { +enum FileLoopMode { LoopNone, LoopForward, LoopBackward, @@ -52,7 +52,7 @@ struct InstrumentInfo { } loops[16]; }; #else -enum LoopMode { +enum FileLoopMode { LoopNone = SF_LOOP_NONE, LoopForward = SF_LOOP_FORWARD, LoopBackward = SF_LOOP_BACKWARD, diff --git a/src/sfizz/ModifierHelpers.h b/src/sfizz/ModifierHelpers.h index e9b76361..f3061111 100644 --- a/src/sfizz/ModifierHelpers.h +++ b/src/sfizz/ModifierHelpers.h @@ -16,7 +16,7 @@ namespace sfz { * @brief Compute a crossfade in value with respect to a crossfade range (note, velocity, cc, ...) */ template -float crossfadeIn(const sfz::Range& crossfadeRange, U value, SfzCrossfadeCurve curve) +float crossfadeIn(const sfz::Range& crossfadeRange, U value, CrossfadeCurve curve) { if (value < crossfadeRange.getStart()) return 0.0f; @@ -27,9 +27,9 @@ float crossfadeIn(const sfz::Range& crossfadeRange, U value, SfzCrossfadeCurv else if (value < crossfadeRange.getEnd()) { const auto crossfadePosition = static_cast(value - crossfadeRange.getStart()) / length; - if (curve == SfzCrossfadeCurve::power) + if (curve == CrossfadeCurve::power) return sqrt(crossfadePosition); - if (curve == SfzCrossfadeCurve::gain) + if (curve == CrossfadeCurve::gain) return crossfadePosition; } @@ -40,7 +40,7 @@ float crossfadeIn(const sfz::Range& crossfadeRange, U value, SfzCrossfadeCurv * @brief Compute a crossfade out value with respect to a crossfade range (note, velocity, cc, ...) */ template -float crossfadeOut(const sfz::Range& crossfadeRange, U value, SfzCrossfadeCurve curve) +float crossfadeOut(const sfz::Range& crossfadeRange, U value, CrossfadeCurve curve) { if (value > crossfadeRange.getEnd()) return 0.0f; @@ -51,9 +51,9 @@ float crossfadeOut(const sfz::Range& crossfadeRange, U value, SfzCrossfadeCur else if (value > crossfadeRange.getStart()) { const auto crossfadePosition = static_cast(value - crossfadeRange.getStart()) / length; - if (curve == SfzCrossfadeCurve::power) + if (curve == CrossfadeCurve::power) return std::sqrt(1 - crossfadePosition); - if (curve == SfzCrossfadeCurve::gain) + if (curve == CrossfadeCurve::gain) return 1 - crossfadePosition; } diff --git a/src/sfizz/Opcode.cpp b/src/sfizz/Opcode.cpp index a2609ca6..7f5f59d1 100644 --- a/src/sfizz/Opcode.cpp +++ b/src/sfizz/Opcode.cpp @@ -305,14 +305,14 @@ absl::optional Opcode::read(OpcodeSpec) co } template <> -absl::optional Opcode::read(OpcodeSpec) const +absl::optional Opcode::read(OpcodeSpec) const { switch (hash(value)) { - case hash("attack"): return SfzTrigger::attack; - case hash("first"): return SfzTrigger::first; - case hash("legato"): return SfzTrigger::legato; - case hash("release"): return SfzTrigger::release; - case hash("release_key"): return SfzTrigger::release_key; + case hash("attack"): return Trigger::attack; + case hash("first"): return Trigger::first; + case hash("legato"): return Trigger::legato; + case hash("release"): return Trigger::release; + case hash("release_key"): return Trigger::release_key; } DBG("Unknown trigger value: " << value); @@ -320,11 +320,11 @@ absl::optional Opcode::read(OpcodeSpec) const } template <> -absl::optional Opcode::read(OpcodeSpec) const +absl::optional Opcode::read(OpcodeSpec) const { switch (hash(value)) { - case hash("power"): return SfzCrossfadeCurve::power; - case hash("gain"): return SfzCrossfadeCurve::gain; + case hash("power"): return CrossfadeCurve::power; + case hash("gain"): return CrossfadeCurve::gain; } DBG("Unknown crossfade power curve: " << value); @@ -332,12 +332,12 @@ absl::optional Opcode::read(OpcodeSpec) co } template <> -absl::optional Opcode::read(OpcodeSpec) const +absl::optional Opcode::read(OpcodeSpec) const { switch (hash(value)) { - case hash("fast"): return SfzOffMode::fast; - case hash("normal"): return SfzOffMode::normal; - case hash("time"): return SfzOffMode::time; + case hash("fast"): return OffMode::fast; + case hash("normal"): return OffMode::normal; + case hash("time"): return OffMode::time; } DBG("Unknown off mode: " << value); @@ -391,11 +391,11 @@ absl::optional Opcode::read(OpcodeSpec) const } template <> -absl::optional Opcode::read(OpcodeSpec) const +absl::optional Opcode::read(OpcodeSpec) const { switch (hash(value)) { - case hash("current"): return SfzVelocityOverride::current; - case hash("previous"): return SfzVelocityOverride::previous; + case hash("current"): return VelocityOverride::current; + case hash("previous"): return VelocityOverride::previous; } DBG("Unknown velocity override: " << value); @@ -403,12 +403,12 @@ absl::optional Opcode::read(OpcodeSpec } template <> -absl::optional Opcode::read(OpcodeSpec) const +absl::optional Opcode::read(OpcodeSpec) const { switch (hash(value)) { case hash("on"): - case hash("mask"): return SfzSelfMask::mask; - case hash("off"): return SfzSelfMask::dontMask; + case hash("mask"): return SelfMask::mask; + case hash("off"): return SelfMask::dontMask; } DBG("Unknown velocity override: " << value); diff --git a/src/sfizz/Region.cpp b/src/sfizz/Region.cpp index 22e0ef54..70d071ef 100644 --- a/src/sfizz/Region.cpp +++ b/src/sfizz/Region.cpp @@ -130,16 +130,16 @@ bool sfz::Region::parseOpcode(const Opcode& rawOpcode) case hash("loop_mode"): // also loopmode switch (hash(opcode.value)) { case hash("no_loop"): - loopMode = SfzLoopMode::no_loop; + loopMode = LoopMode::no_loop; break; case hash("one_shot"): - loopMode = SfzLoopMode::one_shot; + loopMode = LoopMode::one_shot; break; case hash("loop_continuous"): - loopMode = SfzLoopMode::loop_continuous; + loopMode = LoopMode::loop_continuous; break; case hash("loop_sustain"): - loopMode = SfzLoopMode::loop_sustain; + loopMode = LoopMode::loop_sustain; break; default: DBG("Unkown loop mode:" << opcode.value); @@ -207,7 +207,7 @@ bool sfz::Region::parseOpcode(const Opcode& rawOpcode) offMode = opcode.read(Default::offMode).value_or(offMode); break; case hash("off_time"): - offMode = SfzOffMode::time; + offMode = OffMode::time; offTime = opcode.read(Default::offTime).value_or(offTime); break; case hash("polyphony"): @@ -220,10 +220,10 @@ bool sfz::Region::parseOpcode(const Opcode& rawOpcode) case hash("note_selfmask"): switch (hash(opcode.value)) { case hash("on"): - selfMask = SfzSelfMask::mask; + selfMask = SelfMask::mask; break; case hash("off"): - selfMask = SfzSelfMask::dontMask; + selfMask = SelfMask::dontMask; break; default: DBG("Unkown self mask value:" << opcode.value); @@ -1608,9 +1608,9 @@ bool sfz::Region::registerNoteOn(int noteNumber, float velocity, float randValue const bool velOk = velocityRange.containsWithEnd(velocity); const bool randOk = randRange.contains(randValue) || (randValue == 1.0f && randRange.getEnd() == 1.0f); - const bool firstLegatoNote = (trigger == SfzTrigger::first && midiState.getActiveNotes() == 1); - const bool attackTrigger = (trigger == SfzTrigger::attack); - const bool notFirstLegatoNote = (trigger == SfzTrigger::legato && midiState.getActiveNotes() > 1); + const bool firstLegatoNote = (trigger == Trigger::first && midiState.getActiveNotes() == 1); + const bool attackTrigger = (trigger == Trigger::attack); + const bool notFirstLegatoNote = (trigger == Trigger::legato && midiState.getActiveNotes() > 1); return keyOk && velOk && randOk && (attackTrigger || firstLegatoNote || notFirstLegatoNote); } @@ -1636,10 +1636,10 @@ bool sfz::Region::registerNoteOff(int noteNumber, float velocity, float randValu // Release logic - if (trigger == SfzTrigger::release_key) + if (trigger == Trigger::release_key) return true; - if (trigger == SfzTrigger::release) { + if (trigger == Trigger::release) { if (midiState.getCCValue(sustainCC) < sustainThreshold) return true; @@ -1717,7 +1717,7 @@ float sfz::Region::getBaseVolumedB(int noteNumber) const noexcept baseVolumedB += globalVolume; baseVolumedB += masterVolume; baseVolumedB += groupVolume; - if (trigger == SfzTrigger::release || trigger == SfzTrigger::release_key) + if (trigger == Trigger::release || trigger == Trigger::release_key) baseVolumedB -= rtDecay * midiState.getNoteDuration(noteNumber); return baseVolumedB; } diff --git a/src/sfizz/Region.h b/src/sfizz/Region.h index e064e1b6..9260b8e7 100644 --- a/src/sfizz/Region.h +++ b/src/sfizz/Region.h @@ -61,7 +61,7 @@ struct Region { * @return true * @return false */ - bool isRelease() const noexcept { return trigger == SfzTrigger::release || trigger == SfzTrigger::release_key; } + bool isRelease() const noexcept { return trigger == Trigger::release || trigger == Trigger::release_key; } /** * @brief Is a generator (*sine or *silence mostly)? * @@ -97,7 +97,7 @@ struct Region { * @return true * @return false */ - bool shouldLoop() const noexcept { return (loopMode == SfzLoopMode::loop_continuous || loopMode == SfzLoopMode::loop_sustain); } + bool shouldLoop() const noexcept { return (loopMode == LoopMode::loop_continuous || loopMode == LoopMode::loop_sustain); } /** * @brief Given the current midi state, is the region switched on? * @@ -326,7 +326,7 @@ struct Region { CCMap offsetCC { Default::offsetMod.value }; uint32_t sampleEnd { Default::sampleEnd.value }; // end absl::optional sampleCount {}; // count - absl::optional loopMode {}; // loopmode + absl::optional loopMode {}; // loopmode Range loopRange { Default::loopRange.bounds }; //loopstart and loopend float loopCrossfade { Default::loopCrossfade.value }; // loop_crossfade @@ -343,11 +343,11 @@ struct Region { // Instrument settings: voice lifecycle uint32_t group { Default::group.value }; // group absl::optional offBy {}; // off_by - SfzOffMode offMode { Default::offMode.value }; // off_mode + OffMode offMode { Default::offMode.value }; // off_mode float offTime { Default::offTime.value }; // off_mode absl::optional notePolyphony {}; // note_polyphony uint32_t polyphony { config::maxVoices }; // polyphony - SfzSelfMask selfMask { Default::selfMask.value }; + SelfMask selfMask { Default::selfMask.value }; bool rtDead { Default::rtDead.value }; // Region logic: key mapping @@ -364,7 +364,7 @@ struct Region { absl::optional downKeyswitch {}; // sw_down absl::optional previousKeyswitch {}; // sw_previous absl::optional defaultSwitch {}; - SfzVelocityOverride velocityOverride { Default::velocityOverride.value }; // sw_vel + VelocityOverride velocityOverride { Default::velocityOverride.value }; // sw_vel bool checkSustain { Default::checkSustain.value }; // sustain_sw bool checkSostenuto { Default::checkSostenuto.value }; // sostenuto_sw uint16_t sustainCC { Default::sustainCC.value }; // sustain_cc @@ -378,7 +378,7 @@ struct Region { uint8_t sequencePosition { Default::sequence.value }; // seq_position // Region logic: triggers - SfzTrigger trigger { Default::trigger.value }; // trigger + Trigger trigger { Default::trigger.value }; // trigger CCMap> ccTriggers { Default::normalized.bounds }; // on_loccN on_hiccN // Performance parameters: amplifier @@ -397,9 +397,9 @@ struct Region { Range crossfadeKeyOutRange { Default::crossfadeKeyOutRange }; Range crossfadeVelInRange { Default::crossfadeVelInRange }; Range crossfadeVelOutRange { Default::crossfadeVelOutRange }; - SfzCrossfadeCurve crossfadeKeyCurve { Default::crossfadeCurve.value }; - SfzCrossfadeCurve crossfadeVelCurve { Default::crossfadeCurve.value }; - SfzCrossfadeCurve crossfadeCCCurve { Default::crossfadeCurve.value }; + CrossfadeCurve crossfadeKeyCurve { Default::crossfadeCurve.value }; + CrossfadeCurve crossfadeVelCurve { Default::crossfadeCurve.value }; + CrossfadeCurve crossfadeCCCurve { Default::crossfadeCurve.value }; CCMap> crossfadeCCInRange { Default::crossfadeCCInRange }; // xfin_loccN xfin_hiccN CCMap> crossfadeCCOutRange { Default::crossfadeCCOutRange }; // xfout_loccN xfout_hiccN float rtDecay { Default::rtDecay.value }; // rt_decay diff --git a/src/sfizz/Synth.cpp b/src/sfizz/Synth.cpp index 43ac6241..76f935d4 100644 --- a/src/sfizz/Synth.cpp +++ b/src/sfizz/Synth.cpp @@ -596,11 +596,11 @@ void Synth::Impl::finalizeSfzLoad() region->loopRange.setEnd(fileInformation->loopEnd); if (!region->loopMode) - region->loopMode = SfzLoopMode::loop_continuous; + region->loopMode = LoopMode::loop_continuous; } if (region->isRelease() && !region->loopMode) - region->loopMode = SfzLoopMode::one_shot; + region->loopMode = LoopMode::one_shot; if (region->loopRange.getEnd() == Default::loopRange.bounds.getEnd()) region->loopRange.setEnd(region->sampleEnd); @@ -656,7 +656,7 @@ void Synth::Impl::finalizeSfzLoad() for (int cc = 0; cc < config::numCCs; cc++) { if (region->ccTriggers.contains(cc) || region->ccConditions.contains(cc) - || (cc == region->sustainCC && region->trigger == SfzTrigger::release)) + || (cc == region->sustainCC && region->trigger == Trigger::release)) ccActivationLists_[cc].push_back(region); } @@ -1052,7 +1052,7 @@ void Synth::Impl::noteOffDispatch(int delay, int noteNumber, float velocity) noe for (auto& region : noteActivationLists_[noteNumber]) { if (region->registerNoteOff(noteNumber, velocity, randValue)) { - if (region->trigger == SfzTrigger::release && !region->rtDead && !voiceManager_.playingAttackVoice(region)) + if (region->trigger == Trigger::release && !region->rtDead && !voiceManager_.playingAttackVoice(region)) continue; startVoice(region, delay, triggerEvent, ring); diff --git a/src/sfizz/SynthMessaging.cpp b/src/sfizz/SynthMessaging.cpp index 0f6bd10b..62335993 100644 --- a/src/sfizz/SynthMessaging.cpp +++ b/src/sfizz/SynthMessaging.cpp @@ -167,16 +167,16 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co } switch (*region.loopMode) { - case SfzLoopMode::no_loop: + case LoopMode::no_loop: client.receive<'s'>(delay, path, "no_loop"); break; - case SfzLoopMode::loop_continuous: + case LoopMode::loop_continuous: client.receive<'s'>(delay, path, "loop_continuous"); break; - case SfzLoopMode::loop_sustain: + case LoopMode::loop_sustain: client.receive<'s'>(delay, path, "loop_sustain"); break; - case SfzLoopMode::one_shot: + case LoopMode::one_shot: client.receive<'s'>(delay, path, "one_shot"); break; } @@ -204,13 +204,13 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/off_mode", "") { GET_REGION_OR_BREAK(indices[0]) switch (region.offMode) { - case SfzOffMode::time: + case OffMode::time: client.receive<'s'>(delay, path, "time"); break; - case SfzOffMode::normal: + case OffMode::normal: client.receive<'s'>(delay, path, "normal"); break; - case SfzOffMode::fast: + case OffMode::fast: client.receive<'s'>(delay, path, "fast"); break; } @@ -313,10 +313,10 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/sw_vel", "") { GET_REGION_OR_BREAK(indices[0]) switch (region.velocityOverride) { - case SfzVelocityOverride::current: + case VelocityOverride::current: client.receive<'s'>(delay, path, "current"); break; - case SfzVelocityOverride::previous: + case VelocityOverride::previous: client.receive<'s'>(delay, path, "previous"); break; } @@ -359,19 +359,19 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/trigger", "") { GET_REGION_OR_BREAK(indices[0]) switch (region.trigger) { - case SfzTrigger::attack: + case Trigger::attack: client.receive<'s'>(delay, path, "attack"); break; - case SfzTrigger::first: + case Trigger::first: client.receive<'s'>(delay, path, "first"); break; - case SfzTrigger::release: + case Trigger::release: client.receive<'s'>(delay, path, "release"); break; - case SfzTrigger::release_key: + case Trigger::release_key: client.receive<'s'>(delay, path, "release_key"); break; - case SfzTrigger::legato: + case Trigger::legato: client.receive<'s'>(delay, path, "legato"); break; } @@ -696,10 +696,10 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/xf_keycurve", "") { GET_REGION_OR_BREAK(indices[0]) switch (region.crossfadeKeyCurve) { - case SfzCrossfadeCurve::gain: + case CrossfadeCurve::gain: client.receive<'s'>(delay, path, "gain"); break; - case SfzCrossfadeCurve::power: + case CrossfadeCurve::power: client.receive<'s'>(delay, path, "power"); break; } @@ -708,10 +708,10 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/xf_velcurve", "") { GET_REGION_OR_BREAK(indices[0]) switch (region.crossfadeVelCurve) { - case SfzCrossfadeCurve::gain: + case CrossfadeCurve::gain: client.receive<'s'>(delay, path, "gain"); break; - case SfzCrossfadeCurve::power: + case CrossfadeCurve::power: client.receive<'s'>(delay, path, "power"); break; } @@ -720,10 +720,10 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/xf_cccurve", "") { GET_REGION_OR_BREAK(indices[0]) switch (region.crossfadeCCCurve) { - case SfzCrossfadeCurve::gain: + case CrossfadeCurve::gain: client.receive<'s'>(delay, path, "gain"); break; - case SfzCrossfadeCurve::power: + case CrossfadeCurve::power: client.receive<'s'>(delay, path, "power"); break; } @@ -945,10 +945,10 @@ void sfz::Synth::dispatchMessage(Client& client, int delay, const char* path, co MATCH("/region&/note_selfmask", "") { GET_REGION_OR_BREAK(indices[0]) switch(region.selfMask) { - case SfzSelfMask::mask: + case SelfMask::mask: client.receive(delay, path, "T", nullptr); break; - case SfzSelfMask::dontMask: + case SelfMask::dontMask: client.receive(delay, path, "F", nullptr); break; } diff --git a/src/sfizz/Voice.cpp b/src/sfizz/Voice.cpp index 4ba91ba1..dae62336 100644 --- a/src/sfizz/Voice.cpp +++ b/src/sfizz/Voice.cpp @@ -464,9 +464,9 @@ void Voice::off(int delay, bool fast) noexcept { Impl& impl = *impl_; if (!impl.region_->flexAmpEG) { - if (impl.region_->offMode == SfzOffMode::fast || fast) { + if (impl.region_->offMode == OffMode::fast || fast) { impl.egAmplitude_.setReleaseTime(Default::offTime.value); - } else if (impl.region_->offMode == SfzOffMode::time) { + } else if (impl.region_->offMode == OffMode::time) { impl.egAmplitude_.setReleaseTime(impl.region_->offTime); } } @@ -492,7 +492,7 @@ void Voice::registerNoteOff(int delay, int noteNumber, float velocity) noexcept if (impl.triggerEvent_.number == noteNumber && impl.triggerEvent_.type == TriggerEventType::NoteOn) { impl.noteIsOff_ = true; - if (impl.region_->loopMode == SfzLoopMode::one_shot) + if (impl.region_->loopMode == LoopMode::one_shot) return; if (!impl.region_->checkSustain diff --git a/src/sfizz/VoiceManager.cpp b/src/sfizz/VoiceManager.cpp index 490927b2..ff978f18 100644 --- a/src/sfizz/VoiceManager.cpp +++ b/src/sfizz/VoiceManager.cpp @@ -198,7 +198,7 @@ void VoiceManager::checkNotePolyphony(const Region* region, int delay, const Tri && voiceTriggerEvent.type == triggerEvent.type) { notePolyphonyCounter += 1; switch (region->selfMask) { - case SfzSelfMask::mask: + case SelfMask::mask: if (voiceTriggerEvent.value <= triggerEvent.value) { if (!selfMaskCandidate || selfMaskCandidate->getTriggerEvent().value > voiceTriggerEvent.value) { @@ -206,7 +206,7 @@ void VoiceManager::checkNotePolyphony(const Region* region, int delay, const Tri } } break; - case SfzSelfMask::dontMask: + case SelfMask::dontMask: if (!selfMaskCandidate || selfMaskCandidate->getAge() < voice->getAge()) selfMaskCandidate = voice; break; diff --git a/src/sfizz/modulations/sources/FlexEnvelope.cpp b/src/sfizz/modulations/sources/FlexEnvelope.cpp index 5cea2ad8..c9112376 100644 --- a/src/sfizz/modulations/sources/FlexEnvelope.cpp +++ b/src/sfizz/modulations/sources/FlexEnvelope.cpp @@ -38,7 +38,7 @@ void FlexEnvelopeSource::init(const ModKey& sourceKey, NumericId voiceId, FlexEnvelope* eg = voice->getFlexEG(egIndex); eg->configure(®ion->flexEGs[egIndex]); bool freeRunning = ( - (region->loopMode == SfzLoopMode::one_shot && region->isOscillator()) + (region->loopMode == LoopMode::one_shot && region->isOscillator()) ); if (freeRunning && region->flexAmpEG && egIndex == *region->flexAmpEG) eg->setFreeRunning(true); diff --git a/tests/FilesT.cpp b/tests/FilesT.cpp index 2ed037a7..0c25cfc9 100644 --- a/tests/FilesT.cpp +++ b/tests/FilesT.cpp @@ -51,7 +51,7 @@ TEST_CASE("[Files] Underscore opcodes (underscore_opcodes.sfz)") Synth synth; synth.loadSfzFile(fs::current_path() / "tests/TestFiles/Regions/underscore_opcodes.sfz"); REQUIRE(synth.getNumRegions() == 1); - REQUIRE(synth.getRegionView(0)->loopMode == SfzLoopMode::loop_sustain); + REQUIRE(synth.getRegionView(0)->loopMode == LoopMode::loop_sustain); } TEST_CASE("[Files] (regions_bad.sfz)") @@ -505,11 +505,11 @@ TEST_CASE("[Files] Off modes") synth.noteOn(0, 64, 63); REQUIRE( synth.getNumActiveVoices() == 2 ); const auto* fastVoice = - synth.getVoiceView(0)->getRegion()->offMode == SfzOffMode::fast ? + synth.getVoiceView(0)->getRegion()->offMode == OffMode::fast ? synth.getVoiceView(0) : synth.getVoiceView(1) ; const auto* normalVoice = - synth.getVoiceView(0)->getRegion()->offMode == SfzOffMode::fast ? + synth.getVoiceView(0)->getRegion()->offMode == OffMode::fast ? synth.getVoiceView(1) : synth.getVoiceView(0) ; synth.noteOn(100, 63, 63); @@ -530,9 +530,9 @@ TEST_CASE("[Files] Looped regions taken from files and possibly overriden") synth.setSampleRate(44100); synth.loadSfzFile(fs::current_path() / "tests/TestFiles/looped_regions.sfz"); REQUIRE( synth.getNumRegions() == 3 ); - REQUIRE( synth.getRegionView(0)->loopMode == SfzLoopMode::loop_continuous ); - REQUIRE( synth.getRegionView(1)->loopMode == SfzLoopMode::no_loop ); - REQUIRE( synth.getRegionView(2)->loopMode == SfzLoopMode::loop_continuous ); + REQUIRE( synth.getRegionView(0)->loopMode == LoopMode::loop_continuous ); + REQUIRE( synth.getRegionView(1)->loopMode == LoopMode::no_loop ); + REQUIRE( synth.getRegionView(2)->loopMode == LoopMode::loop_continuous ); REQUIRE(synth.getRegionView(0)->loopRange == Range { 77554, 186581 }); REQUIRE(synth.getRegionView(1)->loopRange == Range { 77554, 186581 }); @@ -546,7 +546,7 @@ TEST_CASE("[Files] Looped regions can start at 0") sample=wavetable_with_loop_at_endings.wav )"); REQUIRE( synth.getNumRegions() == 1 ); - REQUIRE( synth.getRegionView(0)->loopMode == SfzLoopMode::loop_continuous ); + REQUIRE( synth.getRegionView(0)->loopMode == LoopMode::loop_continuous ); REQUIRE( synth.getRegionView(0)->loopRange == Range { 0, synth.getRegionView(0)->sampleEnd } ); } @@ -563,13 +563,13 @@ TEST_CASE("[Synth] Release triggers automatically sets the loop mode") sample=kick.wav pitch_keycenter=69 trigger=release )"); REQUIRE( synth.getNumRegions() == 7 ); - REQUIRE( synth.getRegionView(0)->loopMode == SfzLoopMode::loop_sustain ); - REQUIRE( synth.getRegionView(1)->loopMode == SfzLoopMode::loop_sustain ); - REQUIRE( synth.getRegionView(2)->loopMode == SfzLoopMode::loop_sustain ); - REQUIRE( synth.getRegionView(3)->loopMode == SfzLoopMode::loop_sustain ); - REQUIRE( synth.getRegionView(4)->loopMode == SfzLoopMode::loop_continuous ); - REQUIRE( synth.getRegionView(5)->loopMode == SfzLoopMode::one_shot ); - REQUIRE( synth.getRegionView(6)->loopMode == SfzLoopMode::one_shot ); + REQUIRE( synth.getRegionView(0)->loopMode == LoopMode::loop_sustain ); + REQUIRE( synth.getRegionView(1)->loopMode == LoopMode::loop_sustain ); + REQUIRE( synth.getRegionView(2)->loopMode == LoopMode::loop_sustain ); + REQUIRE( synth.getRegionView(3)->loopMode == LoopMode::loop_sustain ); + REQUIRE( synth.getRegionView(4)->loopMode == LoopMode::loop_continuous ); + REQUIRE( synth.getRegionView(5)->loopMode == LoopMode::one_shot ); + REQUIRE( synth.getRegionView(6)->loopMode == LoopMode::one_shot ); } TEST_CASE("[Files] Case sentitiveness")