diff options
author | Chris Robinson <[email protected]> | 2018-12-24 13:29:36 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2018-12-24 13:29:36 -0800 |
commit | ae86aef4db02675ec64d690556905ea034753c87 (patch) | |
tree | 9cfaf0b176150d2563ca62429ced1884c6db510d /OpenAL32 | |
parent | cd213fe6b731269caa484eb3cb9b830dac7f5c58 (diff) |
Provide effect target parameters through a common struct
Diffstat (limited to 'OpenAL32')
-rw-r--r-- | OpenAL32/Include/alAuxEffectSlot.h | 7 | ||||
-rw-r--r-- | OpenAL32/Include/alMain.h | 4 |
2 files changed, 8 insertions, 3 deletions
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. */ |