aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2021-12-17 17:13:59 -0800
committerChris Robinson <[email protected]>2021-12-17 17:13:59 -0800
commitd16b61dffb24cbe90e03e921684cb538cb23e181 (patch)
tree7e0a363ad68fd21a1f24dfdf08673cb7f6fdb771
parentfbc42aad7e70131655387c06092f8cbbc286c0db (diff)
Move the effects base and effectslot to core
-rw-r--r--CMakeLists.txt5
-rw-r--r--al/auxeffectslot.h2
-rw-r--r--alc/alc.cpp4
-rw-r--r--alc/alu.cpp4
-rw-r--r--alc/context.cpp2
-rw-r--r--alc/effects/autowah.cpp2
-rw-r--r--alc/effects/base.h201
-rw-r--r--alc/effects/chorus.cpp2
-rw-r--r--alc/effects/compressor.cpp2
-rw-r--r--alc/effects/convolution.cpp2
-rw-r--r--alc/effects/dedicated.cpp2
-rw-r--r--alc/effects/distortion.cpp2
-rw-r--r--alc/effects/echo.cpp2
-rw-r--r--alc/effects/equalizer.cpp2
-rw-r--r--alc/effects/fshifter.cpp2
-rw-r--r--alc/effects/modulator.cpp2
-rw-r--r--alc/effects/pshifter.cpp2
-rw-r--r--alc/effects/reverb.cpp2
-rw-r--r--alc/effects/vmorpher.cpp2
-rw-r--r--core/effects/base.h205
-rw-r--r--core/effectslot.cpp (renamed from alc/effectslot.cpp)0
-rw-r--r--core/effectslot.h (renamed from alc/effectslot.h)8
22 files changed, 232 insertions, 225 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 77b765c3..0704df58 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -678,6 +678,9 @@ set(CORE_OBJS
core/devformat.h
core/device.cpp
core/device.h
+ core/effects/base.h
+ core/effectslot.cpp
+ core/effectslot.h
core/except.cpp
core/except.h
core/filters/biquad.h
@@ -792,8 +795,6 @@ set(ALC_OBJS
alc/context.h
alc/device.cpp
alc/device.h
- alc/effectslot.cpp
- alc/effectslot.h
alc/effects/base.h
alc/effects/autowah.cpp
alc/effects/chorus.cpp
diff --git a/al/auxeffectslot.h b/al/auxeffectslot.h
index 27423830..4de1df7a 100644
--- a/al/auxeffectslot.h
+++ b/al/auxeffectslot.h
@@ -9,10 +9,10 @@
#include "AL/efx.h"
#include "alc/device.h"
-#include "alc/effectslot.h"
#include "alc/effects/base.h"
#include "almalloc.h"
#include "atomic.h"
+#include "core/effectslot.h"
#include "intrusive_ptr.h"
#include "vector.h"
diff --git a/alc/alc.cpp b/alc/alc.cpp
index 89c836d0..c6ac6508 100644
--- a/alc/alc.cpp
+++ b/alc/alc.cpp
@@ -68,8 +68,6 @@
#include "albit.h"
#include "albyte.h"
#include "alconfig.h"
-#include "alc/context.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "aloptional.h"
@@ -77,6 +75,7 @@
#include "alstring.h"
#include "alu.h"
#include "atomic.h"
+#include "context.h"
#include "core/ambidefs.h"
#include "core/bformatdec.h"
#include "core/bs2b.h"
@@ -84,6 +83,7 @@
#include "core/cpu_caps.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/except.h"
#include "core/helpers.h"
#include "core/mastering.h"
diff --git a/alc/alu.cpp b/alc/alu.cpp
index 54bb7001..d11a6c18 100644
--- a/alc/alu.cpp
+++ b/alc/alu.cpp
@@ -56,6 +56,8 @@
#include "core/cpu_caps.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effects/base.h"
+#include "core/effectslot.h"
#include "core/filters/biquad.h"
#include "core/filters/nfc.h"
#include "core/fpu_ctrl.h"
@@ -68,8 +70,6 @@
#include "core/uhjfilter.h"
#include "core/voice.h"
#include "core/voice_change.h"
-#include "effects/base.h"
-#include "effectslot.h"
#include "intrusive_ptr.h"
#include "math_defs.h"
#include "opthelpers.h"
diff --git a/alc/context.cpp b/alc/context.cpp
index af78603a..b870a2a3 100644
--- a/alc/context.cpp
+++ b/alc/context.cpp
@@ -21,11 +21,11 @@
#include "alc/alu.h"
#include "core/async_event.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/logging.h"
#include "core/voice.h"
#include "core/voice_change.h"
#include "device.h"
-#include "effectslot.h"
#include "ringbuffer.h"
#include "vecmat.h"
diff --git a/alc/effects/autowah.cpp b/alc/effects/autowah.cpp
index 9c2ec335..f496eb51 100644
--- a/alc/effects/autowah.cpp
+++ b/alc/effects/autowah.cpp
@@ -27,7 +27,6 @@
#include <utility>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -36,6 +35,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "intrusive_ptr.h"
#include "math_defs.h"
diff --git a/alc/effects/base.h b/alc/effects/base.h
index 1fb339aa..95695857 100644
--- a/alc/effects/base.h
+++ b/alc/effects/base.h
@@ -1,206 +1,7 @@
#ifndef EFFECTS_BASE_H
#define EFFECTS_BASE_H
-#include <stddef.h>
-
-#include "albyte.h"
-#include "almalloc.h"
-#include "alspan.h"
-#include "atomic.h"
-#include "core/bufferline.h"
-#include "intrusive_ptr.h"
-
-struct BufferStorage;
-struct ContextBase;
-struct DeviceBase;
-struct EffectSlot;
-struct MixParams;
-struct RealMixParams;
-
-
-/** Target gain for the reverb decay feedback reaching the decay time. */
-constexpr float ReverbDecayGain{0.001f}; /* -60 dB */
-
-constexpr float ReverbMaxReflectionsDelay{0.3f};
-constexpr float ReverbMaxLateReverbDelay{0.1f};
-
-enum class ChorusWaveform {
- Sinusoid,
- Triangle
-};
-
-constexpr float ChorusMaxDelay{0.016f};
-constexpr float FlangerMaxDelay{0.004f};
-
-constexpr float EchoMaxDelay{0.207f};
-constexpr float EchoMaxLRDelay{0.404f};
-
-enum class FShifterDirection {
- Down,
- Up,
- Off
-};
-
-enum class ModulatorWaveform {
- Sinusoid,
- Sawtooth,
- Square
-};
-
-enum class VMorpherPhenome {
- A, E, I, O, U,
- AA, AE, AH, AO, EH, ER, IH, IY, UH, UW,
- B, D, F, G, J, K, L, M, N, P, R, S, T, V, Z
-};
-
-enum class VMorpherWaveform {
- Sinusoid,
- Triangle,
- Sawtooth
-};
-
-union EffectProps {
- struct {
- // Shared Reverb Properties
- float Density;
- float Diffusion;
- float Gain;
- float GainHF;
- float DecayTime;
- float DecayHFRatio;
- float ReflectionsGain;
- float ReflectionsDelay;
- float LateReverbGain;
- float LateReverbDelay;
- float AirAbsorptionGainHF;
- float RoomRolloffFactor;
- bool DecayHFLimit;
-
- // Additional EAX Reverb Properties
- float GainLF;
- float DecayLFRatio;
- float ReflectionsPan[3];
- float LateReverbPan[3];
- float EchoTime;
- float EchoDepth;
- float ModulationTime;
- float ModulationDepth;
- float HFReference;
- float LFReference;
- } Reverb;
-
- struct {
- float AttackTime;
- float ReleaseTime;
- float Resonance;
- float PeakGain;
- } Autowah;
-
- struct {
- ChorusWaveform Waveform;
- int Phase;
- float Rate;
- float Depth;
- float Feedback;
- float Delay;
- } Chorus; /* Also Flanger */
-
- struct {
- bool OnOff;
- } Compressor;
-
- struct {
- float Edge;
- float Gain;
- float LowpassCutoff;
- float EQCenter;
- float EQBandwidth;
- } Distortion;
-
- struct {
- float Delay;
- float LRDelay;
-
- float Damping;
- float Feedback;
-
- float Spread;
- } Echo;
-
- struct {
- float LowCutoff;
- float LowGain;
- float Mid1Center;
- float Mid1Gain;
- float Mid1Width;
- float Mid2Center;
- float Mid2Gain;
- float Mid2Width;
- float HighCutoff;
- float HighGain;
- } Equalizer;
-
- struct {
- float Frequency;
- FShifterDirection LeftDirection;
- FShifterDirection RightDirection;
- } Fshifter;
-
- struct {
- float Frequency;
- float HighPassCutoff;
- ModulatorWaveform Waveform;
- } Modulator;
-
- struct {
- int CoarseTune;
- int FineTune;
- } Pshifter;
-
- struct {
- float Rate;
- VMorpherPhenome PhonemeA;
- VMorpherPhenome PhonemeB;
- int PhonemeACoarseTuning;
- int PhonemeBCoarseTuning;
- VMorpherWaveform Waveform;
- } Vmorpher;
-
- struct {
- float Gain;
- } Dedicated;
-};
-
-
-struct EffectTarget {
- MixParams *Main;
- RealMixParams *RealOut;
-};
-
-struct EffectState : public al::intrusive_ref<EffectState> {
- struct Buffer {
- const BufferStorage *storage;
- al::span<const al::byte> samples;
- };
-
- al::span<FloatBufferLine> mOutTarget;
-
-
- virtual ~EffectState() = default;
-
- virtual void deviceUpdate(const DeviceBase *device, const Buffer &buffer) = 0;
- virtual void update(const ContextBase *context, const EffectSlot *slot,
- const EffectProps *props, const EffectTarget target) = 0;
- virtual void process(const size_t samplesToDo, const al::span<const FloatBufferLine> samplesIn,
- const al::span<FloatBufferLine> samplesOut) = 0;
-};
-
-
-struct EffectStateFactory {
- virtual ~EffectStateFactory() = default;
-
- virtual al::intrusive_ptr<EffectState> create() = 0;
-};
+#include "core/effects/base.h"
EffectStateFactory *NullStateFactory_getFactory(void);
diff --git a/alc/effects/chorus.cpp b/alc/effects/chorus.cpp
index 3a1b9ae4..7d32f8ff 100644
--- a/alc/effects/chorus.cpp
+++ b/alc/effects/chorus.cpp
@@ -27,7 +27,6 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -35,6 +34,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "core/mixer/defs.h"
#include "core/resampler_limits.h"
diff --git a/alc/effects/compressor.cpp b/alc/effects/compressor.cpp
index 030bfe08..366f2275 100644
--- a/alc/effects/compressor.cpp
+++ b/alc/effects/compressor.cpp
@@ -38,7 +38,6 @@
#include <utility>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -46,6 +45,7 @@
#include "core/bufferline.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "core/mixer/defs.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/convolution.cpp b/alc/effects/convolution.cpp
index 5724badb..dbbca143 100644
--- a/alc/effects/convolution.cpp
+++ b/alc/effects/convolution.cpp
@@ -19,7 +19,6 @@
#include "albyte.h"
#include "alcomplex.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -30,6 +29,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/filters/splitter.h"
#include "core/fmt_traits.h"
#include "core/mixer.h"
diff --git a/alc/effects/dedicated.cpp b/alc/effects/dedicated.cpp
index e7ea89e0..671eb5ec 100644
--- a/alc/effects/dedicated.cpp
+++ b/alc/effects/dedicated.cpp
@@ -26,12 +26,12 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alspan.h"
#include "core/bufferline.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/distortion.cpp b/alc/effects/distortion.cpp
index 26b4df8e..c9366791 100644
--- a/alc/effects/distortion.cpp
+++ b/alc/effects/distortion.cpp
@@ -26,7 +26,6 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -34,6 +33,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/filters/biquad.h"
#include "core/mixer.h"
#include "core/mixer/defs.h"
diff --git a/alc/effects/echo.cpp b/alc/effects/echo.cpp
index 4cdef37c..5d003718 100644
--- a/alc/effects/echo.cpp
+++ b/alc/effects/echo.cpp
@@ -27,7 +27,6 @@
#include <tuple>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -35,6 +34,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/filters/biquad.h"
#include "core/mixer.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/equalizer.cpp b/alc/effects/equalizer.cpp
index 800330a3..67ad67b0 100644
--- a/alc/effects/equalizer.cpp
+++ b/alc/effects/equalizer.cpp
@@ -28,7 +28,6 @@
#include <utility>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alspan.h"
#include "core/ambidefs.h"
@@ -36,6 +35,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/filters/biquad.h"
#include "core/mixer.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/fshifter.cpp b/alc/effects/fshifter.cpp
index c25aab82..b143db0c 100644
--- a/alc/effects/fshifter.cpp
+++ b/alc/effects/fshifter.cpp
@@ -28,7 +28,6 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "alcomplex.h"
#include "almalloc.h"
#include "alnumeric.h"
@@ -37,6 +36,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "core/mixer/defs.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/modulator.cpp b/alc/effects/modulator.cpp
index a518ff63..4a086b11 100644
--- a/alc/effects/modulator.cpp
+++ b/alc/effects/modulator.cpp
@@ -26,7 +26,6 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -35,6 +34,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/filters/biquad.h"
#include "core/mixer.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/pshifter.cpp b/alc/effects/pshifter.cpp
index 26115605..dae0a267 100644
--- a/alc/effects/pshifter.cpp
+++ b/alc/effects/pshifter.cpp
@@ -28,7 +28,6 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "alcomplex.h"
#include "almalloc.h"
#include "alnumeric.h"
@@ -36,6 +35,7 @@
#include "core/bufferline.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "core/mixer/defs.h"
#include "intrusive_ptr.h"
diff --git a/alc/effects/reverb.cpp b/alc/effects/reverb.cpp
index d6f1dbbf..db0aeb62 100644
--- a/alc/effects/reverb.cpp
+++ b/alc/effects/reverb.cpp
@@ -29,7 +29,6 @@
#include <stdint.h>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -38,6 +37,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/filters/biquad.h"
#include "core/filters/splitter.h"
#include "core/mixer.h"
diff --git a/alc/effects/vmorpher.cpp b/alc/effects/vmorpher.cpp
index 6c419ba2..e3eed179 100644
--- a/alc/effects/vmorpher.cpp
+++ b/alc/effects/vmorpher.cpp
@@ -39,7 +39,6 @@
#include <iterator>
#include "alc/effects/base.h"
-#include "alc/effectslot.h"
#include "almalloc.h"
#include "alnumeric.h"
#include "alspan.h"
@@ -48,6 +47,7 @@
#include "core/context.h"
#include "core/devformat.h"
#include "core/device.h"
+#include "core/effectslot.h"
#include "core/mixer.h"
#include "intrusive_ptr.h"
#include "math_defs.h"
diff --git a/core/effects/base.h b/core/effects/base.h
new file mode 100644
index 00000000..3094f627
--- /dev/null
+++ b/core/effects/base.h
@@ -0,0 +1,205 @@
+#ifndef CORE_EFFECTS_BASE_H
+#define CORE_EFFECTS_BASE_H
+
+#include <stddef.h>
+
+#include "albyte.h"
+#include "almalloc.h"
+#include "alspan.h"
+#include "atomic.h"
+#include "core/bufferline.h"
+#include "intrusive_ptr.h"
+
+struct BufferStorage;
+struct ContextBase;
+struct DeviceBase;
+struct EffectSlot;
+struct MixParams;
+struct RealMixParams;
+
+
+/** Target gain for the reverb decay feedback reaching the decay time. */
+constexpr float ReverbDecayGain{0.001f}; /* -60 dB */
+
+constexpr float ReverbMaxReflectionsDelay{0.3f};
+constexpr float ReverbMaxLateReverbDelay{0.1f};
+
+enum class ChorusWaveform {
+ Sinusoid,
+ Triangle
+};
+
+constexpr float ChorusMaxDelay{0.016f};
+constexpr float FlangerMaxDelay{0.004f};
+
+constexpr float EchoMaxDelay{0.207f};
+constexpr float EchoMaxLRDelay{0.404f};
+
+enum class FShifterDirection {
+ Down,
+ Up,
+ Off
+};
+
+enum class ModulatorWaveform {
+ Sinusoid,
+ Sawtooth,
+ Square
+};
+
+enum class VMorpherPhenome {
+ A, E, I, O, U,
+ AA, AE, AH, AO, EH, ER, IH, IY, UH, UW,
+ B, D, F, G, J, K, L, M, N, P, R, S, T, V, Z
+};
+
+enum class VMorpherWaveform {
+ Sinusoid,
+ Triangle,
+ Sawtooth
+};
+
+union EffectProps {
+ struct {
+ // Shared Reverb Properties
+ float Density;
+ float Diffusion;
+ float Gain;
+ float GainHF;
+ float DecayTime;
+ float DecayHFRatio;
+ float ReflectionsGain;
+ float ReflectionsDelay;
+ float LateReverbGain;
+ float LateReverbDelay;
+ float AirAbsorptionGainHF;
+ float RoomRolloffFactor;
+ bool DecayHFLimit;
+
+ // Additional EAX Reverb Properties
+ float GainLF;
+ float DecayLFRatio;
+ float ReflectionsPan[3];
+ float LateReverbPan[3];
+ float EchoTime;
+ float EchoDepth;
+ float ModulationTime;
+ float ModulationDepth;
+ float HFReference;
+ float LFReference;
+ } Reverb;
+
+ struct {
+ float AttackTime;
+ float ReleaseTime;
+ float Resonance;
+ float PeakGain;
+ } Autowah;
+
+ struct {
+ ChorusWaveform Waveform;
+ int Phase;
+ float Rate;
+ float Depth;
+ float Feedback;
+ float Delay;
+ } Chorus; /* Also Flanger */
+
+ struct {
+ bool OnOff;
+ } Compressor;
+
+ struct {
+ float Edge;
+ float Gain;
+ float LowpassCutoff;
+ float EQCenter;
+ float EQBandwidth;
+ } Distortion;
+
+ struct {
+ float Delay;
+ float LRDelay;
+
+ float Damping;
+ float Feedback;
+
+ float Spread;
+ } Echo;
+
+ struct {
+ float LowCutoff;
+ float LowGain;
+ float Mid1Center;
+ float Mid1Gain;
+ float Mid1Width;
+ float Mid2Center;
+ float Mid2Gain;
+ float Mid2Width;
+ float HighCutoff;
+ float HighGain;
+ } Equalizer;
+
+ struct {
+ float Frequency;
+ FShifterDirection LeftDirection;
+ FShifterDirection RightDirection;
+ } Fshifter;
+
+ struct {
+ float Frequency;
+ float HighPassCutoff;
+ ModulatorWaveform Waveform;
+ } Modulator;
+
+ struct {
+ int CoarseTune;
+ int FineTune;
+ } Pshifter;
+
+ struct {
+ float Rate;
+ VMorpherPhenome PhonemeA;
+ VMorpherPhenome PhonemeB;
+ int PhonemeACoarseTuning;
+ int PhonemeBCoarseTuning;
+ VMorpherWaveform Waveform;
+ } Vmorpher;
+
+ struct {
+ float Gain;
+ } Dedicated;
+};
+
+
+struct EffectTarget {
+ MixParams *Main;
+ RealMixParams *RealOut;
+};
+
+struct EffectState : public al::intrusive_ref<EffectState> {
+ struct Buffer {
+ const BufferStorage *storage;
+ al::span<const al::byte> samples;
+ };
+
+ al::span<FloatBufferLine> mOutTarget;
+
+
+ virtual ~EffectState() = default;
+
+ virtual void deviceUpdate(const DeviceBase *device, const Buffer &buffer) = 0;
+ virtual void update(const ContextBase *context, const EffectSlot *slot,
+ const EffectProps *props, const EffectTarget target) = 0;
+ virtual void process(const size_t samplesToDo, const al::span<const FloatBufferLine> samplesIn,
+ const al::span<FloatBufferLine> samplesOut) = 0;
+};
+
+
+struct EffectStateFactory {
+ virtual ~EffectStateFactory() = default;
+
+ virtual al::intrusive_ptr<EffectState> create() = 0;
+};
+
+#endif /* CORE_EFFECTS_BASE_H */
diff --git a/alc/effectslot.cpp b/core/effectslot.cpp
index 51fb8d46..51fb8d46 100644
--- a/alc/effectslot.cpp
+++ b/core/effectslot.cpp
diff --git a/alc/effectslot.h b/core/effectslot.h
index cbb1a2f5..8b7b977c 100644
--- a/alc/effectslot.h
+++ b/core/effectslot.h
@@ -1,10 +1,10 @@
-#ifndef EFFECTSLOT_H
-#define EFFECTSLOT_H
+#ifndef CORE_EFFECTSLOT_H
+#define CORE_EFFECTSLOT_H
#include <atomic>
#include "almalloc.h"
-#include "core/device.h"
+#include "device.h"
#include "effects/base.h"
#include "intrusive_ptr.h"
@@ -85,4 +85,4 @@ struct EffectSlot {
DISABLE_ALLOC()
};
-#endif /* EFFECTSLOT_H */
+#endif /* CORE_EFFECTSLOT_H */