Cleaning up the filters' compilation errors
This commit is contained in:
parent
5250756fd1
commit
bd8a565cef
2 changed files with 8 additions and 8 deletions
|
|
@ -56,7 +56,7 @@ public:
|
||||||
auto in = input.begin();
|
auto in = input.begin();
|
||||||
auto out = lowpass.begin();
|
auto out = lowpass.begin();
|
||||||
auto size = std::min(input.size(), lowpass.size());
|
auto size = std::min(input.size(), lowpass.size());
|
||||||
auto sentinel = in.begin() + size;
|
auto sentinel = in + size;
|
||||||
while (in < sentinel) {
|
while (in < sentinel) {
|
||||||
oneLowpass(in, out);
|
oneLowpass(in, out);
|
||||||
in++;
|
in++;
|
||||||
|
|
@ -70,7 +70,7 @@ public:
|
||||||
auto in = input.begin();
|
auto in = input.begin();
|
||||||
auto out = highpass.begin();
|
auto out = highpass.begin();
|
||||||
auto size = std::min(input.size(), highpass.size());
|
auto size = std::min(input.size(), highpass.size());
|
||||||
auto sentinel = in.begin() + size;
|
auto sentinel = in + size;
|
||||||
while (in < sentinel) {
|
while (in < sentinel) {
|
||||||
oneHighpass(in, out);
|
oneHighpass(in, out);
|
||||||
in++;
|
in++;
|
||||||
|
|
@ -85,7 +85,7 @@ public:
|
||||||
auto out = lowpass.begin();
|
auto out = lowpass.begin();
|
||||||
auto g = gain.begin();
|
auto g = gain.begin();
|
||||||
auto size = min(input.size(), lowpass.size(), gain.size());
|
auto size = min(input.size(), lowpass.size(), gain.size());
|
||||||
auto sentinel = in.begin() + size;
|
auto sentinel = in + size;
|
||||||
while (in < sentinel) {
|
while (in < sentinel) {
|
||||||
setGain(*g);
|
setGain(*g);
|
||||||
oneLowpass(in, out);
|
oneLowpass(in, out);
|
||||||
|
|
@ -99,10 +99,10 @@ public:
|
||||||
auto out = highpass.begin();
|
auto out = highpass.begin();
|
||||||
auto g = gain.begin();
|
auto g = gain.begin();
|
||||||
auto size = min(input.size(), highpass.size(), gain.size());
|
auto size = min(input.size(), highpass.size(), gain.size());
|
||||||
auto sentinel = in.begin() + size;
|
auto sentinel = in + size;
|
||||||
while (in < sentinel) {
|
while (in < sentinel) {
|
||||||
setGain(*g);
|
setGain(*g);
|
||||||
oneHighpass(in, out);
|
oneLowpass(in, out);
|
||||||
}
|
}
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,9 +24,9 @@
|
||||||
#include "OnePoleFilter.h"
|
#include "OnePoleFilter.h"
|
||||||
#include "catch2/catch.hpp"
|
#include "catch2/catch.hpp"
|
||||||
#include "cnpy.h"
|
#include "cnpy.h"
|
||||||
|
#include "../sfizz/compat/filesystem.h"
|
||||||
#include <absl/types/span.h>
|
#include <absl/types/span.h>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <filesystem>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
using namespace Catch::literals;
|
using namespace Catch::literals;
|
||||||
|
|
||||||
|
|
@ -67,7 +67,7 @@ void testLowpass(const std::filesystem::path& inputNumpyFile, const std::filesys
|
||||||
for (auto& data : outputSpan)
|
for (auto& data : outputSpan)
|
||||||
expectedData.push_back(static_cast<Type>(data));
|
expectedData.push_back(static_cast<Type>(data));
|
||||||
|
|
||||||
OnePoleFilter filter { gain };
|
OnePoleFilter<Type> filter { gain };
|
||||||
std::vector<Type> outputData(size);
|
std::vector<Type> outputData(size);
|
||||||
filter.processLowpass(inputData, absl::MakeSpan(outputData));
|
filter.processLowpass(inputData, absl::MakeSpan(outputData));
|
||||||
REQUIRE(approxEqual(outputData, expectedData));
|
REQUIRE(approxEqual(outputData, expectedData));
|
||||||
|
|
@ -102,7 +102,7 @@ void testHighpass(const std::filesystem::path& inputNumpyFile, const std::filesy
|
||||||
for (auto& data : outputSpan)
|
for (auto& data : outputSpan)
|
||||||
expectedData.push_back(static_cast<Type>(data));
|
expectedData.push_back(static_cast<Type>(data));
|
||||||
|
|
||||||
OnePoleFilter filter { gain };
|
OnePoleFilter<Type> filter { gain };
|
||||||
std::vector<Type> outputData(size);
|
std::vector<Type> outputData(size);
|
||||||
filter.processHighpass(inputData, absl::MakeSpan(outputData));
|
filter.processHighpass(inputData, absl::MakeSpan(outputData));
|
||||||
REQUIRE(approxEqual(outputData, expectedData));
|
REQUIRE(approxEqual(outputData, expectedData));
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue