aboutsummaryrefslogtreecommitdiffstats
path: root/al/effects/dedicated.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'al/effects/dedicated.cpp')
-rw-r--r--al/effects/dedicated.cpp91
1 files changed, 75 insertions, 16 deletions
diff --git a/al/effects/dedicated.cpp b/al/effects/dedicated.cpp
index db57003c..f5edfd51 100644
--- a/al/effects/dedicated.cpp
+++ b/al/effects/dedicated.cpp
@@ -12,61 +12,120 @@
namespace {
-void Dedicated_setParami(EffectProps*, ALenum param, int)
+void DedicatedDialog_setParami(EffectProps*, ALenum param, int)
{ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer property 0x%04x", param}; }
-void Dedicated_setParamiv(EffectProps*, ALenum param, const int*)
+void DedicatedDialog_setParamiv(EffectProps*, ALenum param, const int*)
{
throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer-vector property 0x%04x",
param};
}
-void Dedicated_setParamf(EffectProps *props, ALenum param, float val)
+void DedicatedDialog_setParamf(EffectProps *props, ALenum param, float val)
{
switch(param)
{
case AL_DEDICATED_GAIN:
if(!(val >= 0.0f && std::isfinite(val)))
throw effect_exception{AL_INVALID_VALUE, "Dedicated gain out of range"};
- props->Dedicated.Gain = val;
+ props->DedicatedDialog.Gain = val;
break;
default:
throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated float property 0x%04x", param};
}
}
-void Dedicated_setParamfv(EffectProps *props, ALenum param, const float *vals)
-{ Dedicated_setParamf(props, param, vals[0]); }
+void DedicatedDialog_setParamfv(EffectProps *props, ALenum param, const float *vals)
+{ DedicatedDialog_setParamf(props, param, vals[0]); }
-void Dedicated_getParami(const EffectProps*, ALenum param, int*)
+void DedicatedDialog_getParami(const EffectProps*, ALenum param, int*)
{ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer property 0x%04x", param}; }
-void Dedicated_getParamiv(const EffectProps*, ALenum param, int*)
+void DedicatedDialog_getParamiv(const EffectProps*, ALenum param, int*)
{
throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer-vector property 0x%04x",
param};
}
-void Dedicated_getParamf(const EffectProps *props, ALenum param, float *val)
+void DedicatedDialog_getParamf(const EffectProps *props, ALenum param, float *val)
{
switch(param)
{
case AL_DEDICATED_GAIN:
- *val = props->Dedicated.Gain;
+ *val = props->DedicatedDialog.Gain;
break;
default:
throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated float property 0x%04x", param};
}
}
-void Dedicated_getParamfv(const EffectProps *props, ALenum param, float *vals)
-{ Dedicated_getParamf(props, param, vals); }
+void DedicatedDialog_getParamfv(const EffectProps *props, ALenum param, float *vals)
+{ DedicatedDialog_getParamf(props, param, vals); }
-EffectProps genDefaultProps() noexcept
+
+void DedicatedLfe_setParami(EffectProps*, ALenum param, int)
+{ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer property 0x%04x", param}; }
+void DedicatedLfe_setParamiv(EffectProps*, ALenum param, const int*)
+{
+ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer-vector property 0x%04x",
+ param};
+}
+void DedicatedLfe_setParamf(EffectProps *props, ALenum param, float val)
+{
+ switch(param)
+ {
+ case AL_DEDICATED_GAIN:
+ if(!(val >= 0.0f && std::isfinite(val)))
+ throw effect_exception{AL_INVALID_VALUE, "Dedicated gain out of range"};
+ props->DedicatedLfe.Gain = val;
+ break;
+
+ default:
+ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated float property 0x%04x", param};
+ }
+}
+void DedicatedLfe_setParamfv(EffectProps *props, ALenum param, const float *vals)
+{ DedicatedLfe_setParamf(props, param, vals[0]); }
+
+void DedicatedLfe_getParami(const EffectProps*, ALenum param, int*)
+{ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer property 0x%04x", param}; }
+void DedicatedLfe_getParamiv(const EffectProps*, ALenum param, int*)
+{
+ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated integer-vector property 0x%04x",
+ param};
+}
+void DedicatedLfe_getParamf(const EffectProps *props, ALenum param, float *val)
+{
+ switch(param)
+ {
+ case AL_DEDICATED_GAIN:
+ *val = props->DedicatedLfe.Gain;
+ break;
+
+ default:
+ throw effect_exception{AL_INVALID_ENUM, "Invalid dedicated float property 0x%04x", param};
+ }
+}
+void DedicatedLfe_getParamfv(const EffectProps *props, ALenum param, float *vals)
+{ DedicatedLfe_getParamf(props, param, vals); }
+
+
+EffectProps genDefaultDialogProps() noexcept
+{
+ EffectProps props{};
+ props.DedicatedDialog.Gain = 1.0f;
+ return props;
+}
+
+EffectProps genDefaultLfeProps() noexcept
{
EffectProps props{};
- props.Dedicated.Gain = 1.0f;
+ props.DedicatedLfe.Gain = 1.0f;
return props;
}
} // namespace
-DEFINE_ALEFFECT_VTABLE(Dedicated);
+DEFINE_ALEFFECT_VTABLE(DedicatedDialog);
+
+const EffectProps DedicatedDialogEffectProps{genDefaultDialogProps()};
+
+DEFINE_ALEFFECT_VTABLE(DedicatedLfe);
-const EffectProps DedicatedEffectProps{genDefaultProps()};
+const EffectProps DedicatedLfeEffectProps{genDefaultLfeProps()};