aboutsummaryrefslogtreecommitdiffstats
path: root/alc/effects/reverb.cpp
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2019-08-26 09:16:20 -0700
committerChris Robinson <[email protected]>2019-08-26 09:16:20 -0700
commit7dbf69afa270417c28605a265cc2ec0a7c4fc939 (patch)
treeff6af7e2f556ecace074ef1ee968f088b5de2094 /alc/effects/reverb.cpp
parent12e6dc0cced98d8d4379dbdaa922381920d32df2 (diff)
Use a span for effect state input
Diffstat (limited to 'alc/effects/reverb.cpp')
-rw-r--r--alc/effects/reverb.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/alc/effects/reverb.cpp b/alc/effects/reverb.cpp
index 5d9dbf81..4cd9124e 100644
--- a/alc/effects/reverb.cpp
+++ b/alc/effects/reverb.cpp
@@ -483,7 +483,7 @@ struct ReverbState final : public EffectState {
ALboolean deviceUpdate(const ALCdevice *device) override;
void update(const ALCcontext *context, const ALeffectslot *slot, const EffectProps *props, const EffectTarget target) override;
- void process(const size_t samplesToDo, const FloatBufferLine *RESTRICT samplesIn, const ALsizei numInput, const al::span<FloatBufferLine> samplesOut) override;
+ void process(const size_t samplesToDo, const al::span<const FloatBufferLine> samplesIn, const al::span<FloatBufferLine> samplesOut) override;
DEF_NEWDEL(ReverbState)
};
@@ -1440,18 +1440,19 @@ void ReverbState::lateFaded(const size_t offset, const size_t todo, const ALfloa
VectorScatterRevDelayIn(late_delay, offset, mixX, mixY, temps, todo);
}
-void ReverbState::process(const size_t samplesToDo, const FloatBufferLine *RESTRICT samplesIn, const ALsizei numInput, const al::span<FloatBufferLine> samplesOut)
+void ReverbState::process(const size_t samplesToDo, const al::span<const FloatBufferLine> samplesIn, const al::span<FloatBufferLine> samplesOut)
{
size_t offset{mOffset};
ASSUME(samplesToDo > 0);
/* Convert B-Format to A-Format for processing. */
+ const size_t numInput{samplesIn.size()};
const al::span<float> tmpspan{mTempLine.data(), samplesToDo};
for(size_t c{0u};c < NUM_LINES;c++)
{
std::fill(tmpspan.begin(), tmpspan.end(), 0.0f);
- MixRowSamples(tmpspan, {B2A[c], B2A[c]+numInput}, samplesIn->data(), samplesIn->size());
+ MixRowSamples(tmpspan, {B2A[c], numInput}, samplesIn[0].data(), samplesIn[0].size());
/* Band-pass the incoming samples and feed the initial delay line. */
mFilter[c].Lp.process(mTempLine.data(), mTempLine.data(), samplesToDo);