diff options
author | Boris I. Bendovsky <[email protected]> | 2022-01-30 14:47:32 +0200 |
---|---|---|
committer | GitHub <[email protected]> | 2022-01-30 04:47:32 -0800 |
commit | 19ed994dc30ed84ea7cbbb5152577669fc25caf6 (patch) | |
tree | f68933bf8f778806618bd6c0b1bf9ced1b0ccf08 /al/eax_effect.h | |
parent | 619249371a40f03cf988d1f5750d643df797c485 (diff) |
Add EAX extensions (EAX 2.0-5.0, X-RAM) (#632)
* Add EAX extensions (EAX 2.0-5.0, X-RAM)
* Comment out C++17 leftovers
* Remove everything related to patching
* Update alsoftrc.sample
* Rewrite integration
* Fix GCC compilation under Linux
* Always reset EAX effect properties when loading it into FX slot
Diffstat (limited to 'al/eax_effect.h')
-rw-r--r-- | al/eax_effect.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/al/eax_effect.h b/al/eax_effect.h new file mode 100644 index 00000000..23dbb73e --- /dev/null +++ b/al/eax_effect.h @@ -0,0 +1,28 @@ +#ifndef EAX_EFFECT_INCLUDED +#define EAX_EFFECT_INCLUDED + + +#include <memory> + +#include "eax_eax_call.h" + + +class EaxEffect +{ +public: + EaxEffect() = default; + + virtual ~EaxEffect() = default; + + + // Returns "true" if any immediated property was changed. + // [[nodiscard]] + virtual bool dispatch( + const EaxEaxCall& eax_call) = 0; +}; // EaxEffect + + +using EaxEffectUPtr = std::unique_ptr<EaxEffect>; + + +#endif // !EAX_EFFECT_INCLUDED |