// Copyright (c) 2012-2020 Wojciech Figat. All rights reserved.
#pragma once
#include "Engine/Core/Config/Settings.h"
#include "Engine/Serialization/Serialization.h"
///
/// Audio settings container.
///
///
class AudioSettings : public Settings
{
public:
///
/// If checked, audio playback will be disabled in build game. Can be used if game uses custom audio playback engine.
///
bool DisableAudio = false;
///
/// The doppler doppler effect factor. Scale for source and listener velocities. Default is 1.
///
float DopplerFactor = 1.0f;
///
/// True if mute all audio playback when game has no use focus.
///
bool MuteOnFocusLoss = true;
public:
// [Settings]
void RestoreDefault() final override
{
DisableAudio = false;
DopplerFactor = 1.0f;
MuteOnFocusLoss = true;
}
void Deserialize(DeserializeStream& stream, ISerializeModifier* modifier) final override
{
DESERIALIZE(DisableAudio);
DESERIALIZE(DopplerFactor);
DESERIALIZE(MuteOnFocusLoss);
}
};