aboutsummaryrefslogtreecommitdiffstats
path: root/al/auxeffectslot.h
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2023-03-10 19:58:45 -0800
committerChris Robinson <[email protected]>2023-03-10 19:58:45 -0800
commit8c3948c4de4b84805664775bbfe64516e1100ad9 (patch)
treec3325fe665867cf225d7aa1c8dde4b0b35c7576b /al/auxeffectslot.h
parent605fa7815948cdef42877286f85cc23ed5b3760d (diff)
Rework EAX effect handling
Allocate a base EaxEffect object once for all effect types, instead of reallocating different derived types on effect changes. The reverb and null effects have been converted to the new interface, the others are currently broken/unsupported, but will be restored shortly.
Diffstat (limited to 'al/auxeffectslot.h')
-rw-r--r--al/auxeffectslot.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/al/auxeffectslot.h b/al/auxeffectslot.h
index 9b6403f4..10f69270 100644
--- a/al/auxeffectslot.h
+++ b/al/auxeffectslot.h
@@ -132,7 +132,7 @@ private:
void operator()(const GUID& guidLoadEffect) const
{
if (guidLoadEffect != EAX_NULL_GUID &&
- guidLoadEffect != EAX_REVERB_EFFECT &&
+ guidLoadEffect != EAX_REVERB_EFFECT /*&&
guidLoadEffect != EAX_AGCCOMPRESSOR_EFFECT &&
guidLoadEffect != EAX_AUTOWAH_EFFECT &&
guidLoadEffect != EAX_CHORUS_EFFECT &&
@@ -143,7 +143,7 @@ private:
guidLoadEffect != EAX_FREQUENCYSHIFTER_EFFECT &&
guidLoadEffect != EAX_VOCALMORPHER_EFFECT &&
guidLoadEffect != EAX_PITCHSHIFTER_EFFECT &&
- guidLoadEffect != EAX_RINGMODULATOR_EFFECT)
+ guidLoadEffect != EAX_RINGMODULATOR_EFFECT*/)
{
eax_fail_unknown_effect_id();
}
@@ -299,7 +299,7 @@ private:
// Returns `true` if all sources should be updated, or `false` otherwise.
bool eax_get(const EaxCall& call);
- void eax_fx_slot_load_effect();
+ void eax_fx_slot_load_effect(int version, ALenum altype);
void eax_fx_slot_set_volume();
void eax_fx_slot_set_environment_flag();
void eax_fx_slot_set_flags();
@@ -339,8 +339,6 @@ private:
void eax4_fx_slot_commit(EaxDirtyFlags& dst_df);
void eax5_fx_slot_commit(Eax5State& state, EaxDirtyFlags& dst_df);
- void eax_dispatch_effect(const EaxCall& call);
-
// `alAuxiliaryEffectSloti(effect_slot, AL_EFFECTSLOT_EFFECT, effect)`
void eax_set_efx_slot_effect(EaxEffect &effect);