diff --git a/Source/Engine/Audio/AudioBackend.h b/Source/Engine/Audio/AudioBackend.h index 981e9c34d..53b207854 100644 --- a/Source/Engine/Audio/AudioBackend.h +++ b/Source/Engine/Audio/AudioBackend.h @@ -5,7 +5,6 @@ #include "Config.h" #include "Types.h" #include "Engine/Core/Types/BaseTypes.h" -#include "AudioSource.h" /// /// The helper class for that handles active audio backend operations. @@ -103,17 +102,8 @@ public: class Source { public: - FORCE_INLINE static void SetState(AudioSource* source, AudioSource::States state) - { - if (source) - source->_state = state; - } - - FORCE_INLINE static void SetStreamingFirstChunk(AudioSource* source, int32 chunkIndex) - { - if (source) - source->_streamingFirstChunk = chunkIndex; - } + // Helper accessors for Audio Source playback restoring after audio device change + static void SetStreamingFirstChunk(AudioSource* source, int32 chunkIndex); FORCE_INLINE static uint32 Add(const AudioDataInfo& format, const Vector3& position, const Quaternion& orientation, float volume, float pitch, float pan, bool loop, bool spatial, float attenuation, float minDistance, float doppler) { diff --git a/Source/Engine/Audio/AudioSource.cpp b/Source/Engine/Audio/AudioSource.cpp index d50707ad8..8629da70e 100644 --- a/Source/Engine/Audio/AudioSource.cpp +++ b/Source/Engine/Audio/AudioSource.cpp @@ -12,6 +12,11 @@ #include "AudioBackend.h" #include "Audio.h" +void AudioBackend::Source::SetStreamingFirstChunk(AudioSource* source, int32 chunkIndex) +{ + source->_streamingFirstChunk = chunkIndex; +} + AudioSource::AudioSource(const SpawnParams& params) : Actor(params) , _velocity(Vector3::Zero) diff --git a/Source/Engine/Audio/AudioSource.h b/Source/Engine/Audio/AudioSource.h index f2ecb6729..00adc35e5 100644 --- a/Source/Engine/Audio/AudioSource.h +++ b/Source/Engine/Audio/AudioSource.h @@ -6,8 +6,6 @@ #include "Engine/Content/AssetReference.h" #include "AudioClip.h" -class AudioBackend; - /// /// Represents a source for emitting audio. Audio can be played spatially (gun shot), or normally (music). Each audio source must have an AudioClip to play - back, and it can also have a position in the case of spatial (3D) audio. /// diff --git a/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp b/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp index 6f3e851d0..501ebbb66 100644 --- a/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp +++ b/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp @@ -9,9 +9,9 @@ #include "Engine/Core/Collections/Dictionary.h" #include "Engine/Tools/AudioTool/AudioTool.h" #include "Engine/Engine/Units.h" +#include "Engine/Engine/Time.h" #include "Engine/Profiler/ProfilerCPU.h" #include "Engine/Profiler/ProfilerMemory.h" -#include "Engine/Engine/Time.h" #include "Engine/Audio/Audio.h" #include "Engine/Audio/AudioListener.h" #include "Engine/Audio/AudioSource.h"