aboutsummaryrefslogtreecommitdiffstats
path: root/alc/effects/autowah.cpp
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2020-04-08 07:28:07 -0700
committerChris Robinson <[email protected]>2020-04-08 07:28:07 -0700
commit8a5153ce0dee072c283b04ff5a61faa764f81743 (patch)
treef2c1f4f99ea12a998989ee0b7280963cadd4b305 /alc/effects/autowah.cpp
parent55539787fb5ed6082da22dcc3b3174f79ddbf195 (diff)
Avoid ALfloat and ALint in the effects
Diffstat (limited to 'alc/effects/autowah.cpp')
-rw-r--r--alc/effects/autowah.cpp78
1 files changed, 39 insertions, 39 deletions
diff --git a/alc/effects/autowah.cpp b/alc/effects/autowah.cpp
index 48a90f76..32e366e0 100644
--- a/alc/effects/autowah.cpp
+++ b/alc/effects/autowah.cpp
@@ -40,33 +40,33 @@ namespace {
struct AutowahState final : public EffectState {
/* Effect parameters */
- ALfloat mAttackRate;
- ALfloat mReleaseRate;
- ALfloat mResonanceGain;
- ALfloat mPeakGain;
- ALfloat mFreqMinNorm;
- ALfloat mBandwidthNorm;
- ALfloat mEnvDelay;
+ float mAttackRate;
+ float mReleaseRate;
+ float mResonanceGain;
+ float mPeakGain;
+ float mFreqMinNorm;
+ float mBandwidthNorm;
+ float mEnvDelay;
/* Filter components derived from the envelope. */
struct {
- ALfloat cos_w0;
- ALfloat alpha;
+ float cos_w0;
+ float alpha;
} mEnv[BUFFERSIZE];
struct {
/* Effect filters' history. */
struct {
- ALfloat z1, z2;
+ float z1, z2;
} Filter;
/* Effect gains for each output channel */
- ALfloat CurrentGains[MAX_OUTPUT_CHANNELS];
- ALfloat TargetGains[MAX_OUTPUT_CHANNELS];
+ float CurrentGains[MAX_OUTPUT_CHANNELS];
+ float TargetGains[MAX_OUTPUT_CHANNELS];
} mChans[MAX_AMBI_CHANNELS];
/* Effects buffers */
- alignas(16) ALfloat mBufferOut[BUFFERSIZE];
+ alignas(16) float mBufferOut[BUFFERSIZE];
bool deviceUpdate(const ALCdevice *device) override;
@@ -109,7 +109,7 @@ void AutowahState::update(const ALCcontext *context, const ALeffectslot *slot, c
const ALCdevice *device{context->mDevice.get()};
const auto frequency = static_cast<float>(device->Frequency);
- const ALfloat ReleaseTime{clampf(props->Autowah.ReleaseTime, 0.001f, 1.0f)};
+ const float ReleaseTime{clampf(props->Autowah.ReleaseTime, 0.001f, 1.0f)};
mAttackRate = std::exp(-1.0f / (props->Autowah.AttackTime*frequency));
mReleaseRate = std::exp(-1.0f / (ReleaseTime*frequency));
@@ -129,17 +129,17 @@ void AutowahState::update(const ALCcontext *context, const ALeffectslot *slot, c
void AutowahState::process(const size_t samplesToDo, const al::span<const FloatBufferLine> samplesIn, const al::span<FloatBufferLine> samplesOut)
{
- const ALfloat attack_rate = mAttackRate;
- const ALfloat release_rate = mReleaseRate;
- const ALfloat res_gain = mResonanceGain;
- const ALfloat peak_gain = mPeakGain;
- const ALfloat freq_min = mFreqMinNorm;
- const ALfloat bandwidth = mBandwidthNorm;
-
- ALfloat env_delay{mEnvDelay};
+ const float attack_rate{mAttackRate};
+ const float release_rate{mReleaseRate};
+ const float res_gain{mResonanceGain};
+ const float peak_gain{mPeakGain};
+ const float freq_min{mFreqMinNorm};
+ const float bandwidth{mBandwidthNorm};
+
+ float env_delay{mEnvDelay};
for(size_t i{0u};i < samplesToDo;i++)
{
- ALfloat w0, sample, a;
+ float w0, sample, a;
/* Envelope follower described on the book: Audio Effects, Theory,
* Implementation and Application.
@@ -150,8 +150,8 @@ void AutowahState::process(const size_t samplesToDo, const al::span<const FloatB
/* Calculate the cos and alpha components for this sample's filter. */
w0 = minf((bandwidth*env_delay + freq_min), 0.46f) * al::MathDefs<float>::Tau();
- mEnv[i].cos_w0 = cosf(w0);
- mEnv[i].alpha = sinf(w0)/(2.0f * Q_FACTOR);
+ mEnv[i].cos_w0 = std::cos(w0);
+ mEnv[i].alpha = std::sin(w0)/(2.0f * Q_FACTOR);
}
mEnvDelay = env_delay;
@@ -164,15 +164,15 @@ void AutowahState::process(const size_t samplesToDo, const al::span<const FloatB
* envelope. Because the filter changes for each sample, the
* coefficients are transient and don't need to be held.
*/
- ALfloat z1{chandata->Filter.z1};
- ALfloat z2{chandata->Filter.z2};
+ float z1{chandata->Filter.z1};
+ float z2{chandata->Filter.z2};
for(size_t i{0u};i < samplesToDo;i++)
{
- const ALfloat alpha = mEnv[i].alpha;
- const ALfloat cos_w0 = mEnv[i].cos_w0;
- ALfloat input, output;
- ALfloat a[3], b[3];
+ const float alpha{mEnv[i].alpha};
+ const float cos_w0{mEnv[i].cos_w0};
+ float input, output;
+ float a[3], b[3];
b[0] = 1.0f + alpha*res_gain;
b[1] = -2.0f * cos_w0;
@@ -198,7 +198,7 @@ void AutowahState::process(const size_t samplesToDo, const al::span<const FloatB
}
-void Autowah_setParamf(EffectProps *props, ALCcontext *context, ALenum param, ALfloat val)
+void Autowah_setParamf(EffectProps *props, ALCcontext *context, ALenum param, float val)
{
switch(param)
{
@@ -230,15 +230,15 @@ void Autowah_setParamf(EffectProps *props, ALCcontext *context, ALenum param, AL
context->setError(AL_INVALID_ENUM, "Invalid autowah float property 0x%04x", param);
}
}
-void Autowah_setParamfv(EffectProps *props, ALCcontext *context, ALenum param, const ALfloat *vals)
+void Autowah_setParamfv(EffectProps *props, ALCcontext *context, ALenum param, const float *vals)
{ Autowah_setParamf(props, context, param, vals[0]); }
-void Autowah_setParami(EffectProps*, ALCcontext *context, ALenum param, ALint)
+void Autowah_setParami(EffectProps*, ALCcontext *context, ALenum param, int)
{ context->setError(AL_INVALID_ENUM, "Invalid autowah integer property 0x%04x", param); }
-void Autowah_setParamiv(EffectProps*, ALCcontext *context, ALenum param, const ALint*)
+void Autowah_setParamiv(EffectProps*, ALCcontext *context, ALenum param, const int*)
{ context->setError(AL_INVALID_ENUM, "Invalid autowah integer vector property 0x%04x", param); }
-void Autowah_getParamf(const EffectProps *props, ALCcontext *context, ALenum param, ALfloat *val)
+void Autowah_getParamf(const EffectProps *props, ALCcontext *context, ALenum param, float *val)
{
switch(param)
{
@@ -263,12 +263,12 @@ void Autowah_getParamf(const EffectProps *props, ALCcontext *context, ALenum par
}
}
-void Autowah_getParamfv(const EffectProps *props, ALCcontext *context, ALenum param, ALfloat *vals)
+void Autowah_getParamfv(const EffectProps *props, ALCcontext *context, ALenum param, float *vals)
{ Autowah_getParamf(props, context, param, vals); }
-void Autowah_getParami(const EffectProps*, ALCcontext *context, ALenum param, ALint*)
+void Autowah_getParami(const EffectProps*, ALCcontext *context, ALenum param, int*)
{ context->setError(AL_INVALID_ENUM, "Invalid autowah integer property 0x%04x", param); }
-void Autowah_getParamiv(const EffectProps*, ALCcontext *context, ALenum param, ALint*)
+void Autowah_getParamiv(const EffectProps*, ALCcontext *context, ALenum param, int*)
{ context->setError(AL_INVALID_ENUM, "Invalid autowah integer vector property 0x%04x", param); }
DEFINE_ALEFFECT_VTABLE(Autowah);