use well known order of lerp arguments

This commit is contained in:
Ahmet Inan 2021-05-07 17:18:06 +02:00
commit 82ce34dea3
3 changed files with 5 additions and 5 deletions

2
amd.hh
View file

@ -32,7 +32,7 @@ public:
value_type operator()(complex_type input)
{
value_type amp = abs(input);
avg = lerp(amp < avg ? dec : att, avg, amp);
avg = lerp(avg, amp, amp < avg ? dec : att);
avg = min(max(avg, lo), hi);
amp /= avg;
return (amp * (value_type(1)+idx) - value_type(1)) / idx;

4
ema.hh
View file

@ -35,7 +35,7 @@ public:
}
TYPE operator()(TYPE input)
{
return prev = lerp(alpha, prev, input);
return prev = lerp(prev, input, alpha);
}
};
@ -83,7 +83,7 @@ public:
TYPE operator()(TYPE input)
{
for (int i = 0; i < ORDER; ++i)
prev[i] = input = lerp(alpha, prev[i], input);
prev[i] = input = lerp(prev[i], input, alpha);
return input;
}
};

View file

@ -16,8 +16,8 @@ int signum(TYPE v)
return (v > TYPE(0)) - (v < TYPE(0));
}
template <typename X, typename AB>
AB lerp(X x, AB a, AB b)
template <typename AB, typename X>
AB lerp(AB a, AB b, X x)
{
return (X(1) - x) * a + x * b;
}