aboutsummaryrefslogtreecommitdiffstats
path: root/al/source.h
diff options
context:
space:
mode:
authorBoris I. Bendovsky <bibendovsky@hotmail.com>2022-02-22 05:39:06 +0200
committerGitHub <noreply@github.com>2022-02-21 19:39:06 -0800
commit4ffba10d510de4d50b2948920ea4f4c8ea168efa (patch)
tree9750883c4fe23a8aee44a2efabe71795618f2188 /al/source.h
parent6c643e59e94ee14d6c8509d46a39ed6a53f72a76 (diff)
Implement EAX v1.0 (#664)
Diffstat (limited to 'al/source.h')
-rw-r--r--al/source.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/al/source.h b/al/source.h
index 24096a64..360b4365 100644
--- a/al/source.h
+++ b/al/source.h
@@ -238,7 +238,6 @@ private:
using EaxActiveFxSlots = std::array<bool, EAX_MAX_FXSLOTS>;
using EaxSpeakerLevels = std::array<long, eax_max_speakers>;
-
struct Eax
{
using Sends = std::array<EAXSOURCEALLSENDPROPERTIES, EAX_MAX_FXSLOTS>;
@@ -256,6 +255,7 @@ private:
ALCcontext* eax_al_context_{};
+ EAXBUFFER_REVERBPROPERTIES eax1_{};
Eax eax_{};
Eax eax_d_{};
EaxActiveFxSlots eax_active_fx_slots_{};
@@ -320,6 +320,8 @@ private:
static const char* eax_get_occlusion_room_ratio_name() noexcept;
+ static void eax1_validate_reverb_mix(float reverb_mix);
+
static void eax_validate_send_receiving_fx_slot_guid(
const GUID& guidReceivingFXSlotID);
@@ -702,6 +704,10 @@ private:
void eax_set_speaker_levels();
+ void eax1_set_efx();
+ void eax1_set_reverb_mix(const EaxEaxCall& eax_call);
+ void eax1_set(const EaxEaxCall& eax_call);
+
void eax_apply_deferred();
void eax_set(
@@ -751,6 +757,8 @@ private:
}
+ void eax1_get(const EaxEaxCall& eax_call);
+
void eax_api_get_source_all_v2(
const EaxEaxCall& eax_call);