aboutsummaryrefslogtreecommitdiffstats
path: root/al/effects/echo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'al/effects/echo.cpp')
-rw-r--r--al/effects/echo.cpp74
1 files changed, 37 insertions, 37 deletions
diff --git a/al/effects/echo.cpp b/al/effects/echo.cpp
index c0968676..05218793 100644
--- a/al/effects/echo.cpp
+++ b/al/effects/echo.cpp
@@ -127,7 +127,7 @@ public:
{}
}; // EaxEchoEffectException
-class EaxEchoEffect final : public EaxEffect4<EaxEchoEffectException, EAXECHOPROPERTIES>
+class EaxEchoEffect final : public EaxEffect4<EaxEchoEffectException>
{
public:
EaxEchoEffect(int eax_version);
@@ -189,7 +189,7 @@ private:
}; // SpreadValidator
struct AllValidator {
- void operator()(const Props& all) const
+ void operator()(const EAXECHOPROPERTIES& all) const
{
DelayValidator{}(all.flDelay);
LrDelayValidator{}(all.flLRDelay);
@@ -199,7 +199,7 @@ private:
}
}; // AllValidator
- void set_defaults(Props& props) override;
+ void set_defaults(Props4& props) override;
void set_efx_delay() noexcept;
void set_efx_lr_delay() noexcept;
@@ -208,28 +208,28 @@ private:
void set_efx_spread() noexcept;
void set_efx_defaults() override;
- void get(const EaxCall& call, const Props& props) override;
- void set(const EaxCall& call, Props& props) override;
- bool commit_props(const Props& props) override;
+ void get(const EaxCall& call, const Props4& props) override;
+ void set(const EaxCall& call, Props4& props) override;
+ bool commit_props(const Props4& props) override;
}; // EaxEchoEffect
EaxEchoEffect::EaxEchoEffect(int eax_version)
: EaxEffect4{AL_EFFECT_ECHO, eax_version}
{}
-void EaxEchoEffect::set_defaults(Props& props)
+void EaxEchoEffect::set_defaults(Props4& props)
{
- props.flDelay = EAXECHO_DEFAULTDELAY;
- props.flLRDelay = EAXECHO_DEFAULTLRDELAY;
- props.flDamping = EAXECHO_DEFAULTDAMPING;
- props.flFeedback = EAXECHO_DEFAULTFEEDBACK;
- props.flSpread = EAXECHO_DEFAULTSPREAD;
+ props.mEcho.flDelay = EAXECHO_DEFAULTDELAY;
+ props.mEcho.flLRDelay = EAXECHO_DEFAULTLRDELAY;
+ props.mEcho.flDamping = EAXECHO_DEFAULTDAMPING;
+ props.mEcho.flFeedback = EAXECHO_DEFAULTFEEDBACK;
+ props.mEcho.flSpread = EAXECHO_DEFAULTSPREAD;
}
void EaxEchoEffect::set_efx_delay() noexcept
{
al_effect_props_.Echo.Delay = clamp(
- props_.flDelay,
+ props_.mEcho.flDelay,
AL_ECHO_MIN_DELAY,
AL_ECHO_MAX_DELAY);
}
@@ -237,7 +237,7 @@ void EaxEchoEffect::set_efx_delay() noexcept
void EaxEchoEffect::set_efx_lr_delay() noexcept
{
al_effect_props_.Echo.LRDelay = clamp(
- props_.flLRDelay,
+ props_.mEcho.flLRDelay,
AL_ECHO_MIN_LRDELAY,
AL_ECHO_MAX_LRDELAY);
}
@@ -245,7 +245,7 @@ void EaxEchoEffect::set_efx_lr_delay() noexcept
void EaxEchoEffect::set_efx_damping() noexcept
{
al_effect_props_.Echo.Damping = clamp(
- props_.flDamping,
+ props_.mEcho.flDamping,
AL_ECHO_MIN_DAMPING,
AL_ECHO_MAX_DAMPING);
}
@@ -253,7 +253,7 @@ void EaxEchoEffect::set_efx_damping() noexcept
void EaxEchoEffect::set_efx_feedback() noexcept
{
al_effect_props_.Echo.Feedback = clamp(
- props_.flFeedback,
+ props_.mEcho.flFeedback,
AL_ECHO_MIN_FEEDBACK,
AL_ECHO_MAX_FEEDBACK);
}
@@ -261,7 +261,7 @@ void EaxEchoEffect::set_efx_feedback() noexcept
void EaxEchoEffect::set_efx_spread() noexcept
{
al_effect_props_.Echo.Spread = clamp(
- props_.flSpread,
+ props_.mEcho.flSpread,
AL_ECHO_MIN_SPREAD,
AL_ECHO_MAX_SPREAD);
}
@@ -275,65 +275,65 @@ void EaxEchoEffect::set_efx_defaults()
set_efx_spread();
}
-void EaxEchoEffect::get(const EaxCall& call, const Props& props)
+void EaxEchoEffect::get(const EaxCall& call, const Props4& props)
{
switch(call.get_property_id())
{
case EAXECHO_NONE: break;
- case EAXECHO_ALLPARAMETERS: call.set_value<Exception>(props); break;
- case EAXECHO_DELAY: call.set_value<Exception>(props.flDelay); break;
- case EAXECHO_LRDELAY: call.set_value<Exception>(props.flLRDelay); break;
- case EAXECHO_DAMPING: call.set_value<Exception>(props.flDamping); break;
- case EAXECHO_FEEDBACK: call.set_value<Exception>(props.flFeedback); break;
- case EAXECHO_SPREAD: call.set_value<Exception>(props.flSpread); break;
+ case EAXECHO_ALLPARAMETERS: call.set_value<Exception>(props.mEcho); break;
+ case EAXECHO_DELAY: call.set_value<Exception>(props.mEcho.flDelay); break;
+ case EAXECHO_LRDELAY: call.set_value<Exception>(props.mEcho.flLRDelay); break;
+ case EAXECHO_DAMPING: call.set_value<Exception>(props.mEcho.flDamping); break;
+ case EAXECHO_FEEDBACK: call.set_value<Exception>(props.mEcho.flFeedback); break;
+ case EAXECHO_SPREAD: call.set_value<Exception>(props.mEcho.flSpread); break;
default: fail_unknown_property_id();
}
}
-void EaxEchoEffect::set(const EaxCall& call, Props& props)
+void EaxEchoEffect::set(const EaxCall& call, Props4& props)
{
switch(call.get_property_id())
{
case EAXECHO_NONE: break;
- case EAXECHO_ALLPARAMETERS: defer<AllValidator>(call, props); break;
- case EAXECHO_DELAY: defer<DelayValidator>(call, props.flDelay); break;
- case EAXECHO_LRDELAY: defer<LrDelayValidator>(call, props.flLRDelay); break;
- case EAXECHO_DAMPING: defer<DampingValidator>(call, props.flDamping); break;
- case EAXECHO_FEEDBACK: defer<FeedbackValidator>(call, props.flFeedback); break;
- case EAXECHO_SPREAD: defer<SpreadValidator>(call, props.flSpread); break;
+ case EAXECHO_ALLPARAMETERS: defer<AllValidator>(call, props.mEcho); break;
+ case EAXECHO_DELAY: defer<DelayValidator>(call, props.mEcho.flDelay); break;
+ case EAXECHO_LRDELAY: defer<LrDelayValidator>(call, props.mEcho.flLRDelay); break;
+ case EAXECHO_DAMPING: defer<DampingValidator>(call, props.mEcho.flDamping); break;
+ case EAXECHO_FEEDBACK: defer<FeedbackValidator>(call, props.mEcho.flFeedback); break;
+ case EAXECHO_SPREAD: defer<SpreadValidator>(call, props.mEcho.flSpread); break;
default: fail_unknown_property_id();
}
}
-bool EaxEchoEffect::commit_props(const Props& props)
+bool EaxEchoEffect::commit_props(const Props4& props)
{
auto is_dirty = false;
- if (props_.flDelay != props.flDelay)
+ if (props_.mEcho.flDelay != props.mEcho.flDelay)
{
is_dirty = true;
set_efx_delay();
}
- if (props_.flLRDelay != props.flLRDelay)
+ if (props_.mEcho.flLRDelay != props.mEcho.flLRDelay)
{
is_dirty = true;
set_efx_lr_delay();
}
- if (props_.flDamping != props.flDamping)
+ if (props_.mEcho.flDamping != props.mEcho.flDamping)
{
is_dirty = true;
set_efx_damping();
}
- if (props_.flFeedback != props.flFeedback)
+ if (props_.mEcho.flFeedback != props.mEcho.flFeedback)
{
is_dirty = true;
set_efx_feedback();
}
- if (props_.flSpread != props.flSpread)
+ if (props_.mEcho.flSpread != props.mEcho.flSpread)
{
is_dirty = true;
set_efx_spread();