From ae86aef4db02675ec64d690556905ea034753c87 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Mon, 24 Dec 2018 13:29:36 -0800 Subject: Provide effect target parameters through a common struct --- OpenAL32/Include/alAuxEffectSlot.h | 7 ++++++- OpenAL32/Include/alMain.h | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'OpenAL32') diff --git a/OpenAL32/Include/alAuxEffectSlot.h b/OpenAL32/Include/alAuxEffectSlot.h index 04f00758..a3a308d9 100644 --- a/OpenAL32/Include/alAuxEffectSlot.h +++ b/OpenAL32/Include/alAuxEffectSlot.h @@ -10,6 +10,11 @@ struct ALeffectslot; +struct EffectTarget { + MixParams *Main; + MixParams *FOAOut; + RealMixParams *RealOut; +}; struct EffectState { RefCount mRef{1u}; @@ -21,7 +26,7 @@ struct EffectState { virtual ~EffectState() = default; virtual ALboolean deviceUpdate(const ALCdevice *device) = 0; - virtual void update(const ALCcontext *context, const ALeffectslot *slot, const ALeffectProps *props) = 0; + virtual void update(const ALCcontext *context, const ALeffectslot *slot, const ALeffectProps *props, const EffectTarget target) = 0; virtual void process(ALsizei samplesToDo, const ALfloat (*RESTRICT samplesIn)[BUFFERSIZE], ALfloat (*RESTRICT samplesOut)[BUFFERSIZE], ALsizei numChannels) = 0; void IncRef() noexcept; diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h index 3ed11193..d12ea780 100644 --- a/OpenAL32/Include/alMain.h +++ b/OpenAL32/Include/alMain.h @@ -538,10 +538,10 @@ enum RenderMode { typedef ALfloat ChannelConfig[MAX_AMBI_COEFFS]; -typedef struct BFChannelConfig { +struct BFChannelConfig { ALfloat Scale; ALsizei Index; -} BFChannelConfig; +}; typedef union AmbiConfig { /* Ambisonic coefficients for mixing to the dry buffer. */ -- cgit v1.2.3