#include "core/audio/audio.hpp" #include // Per a SDL_GetError, SDL_Init #include // Per a clamp #include // Per a std::fprintf #include "core/audio/audio_adapter.hpp" // Per a AudioResource::getMusic/getSound #include "core/audio/jail_audio.hpp" // Per a Ja::* (motor jailgames) #include "utils/defaults.hpp" // Per a Defaults::Audio::FREQUENCY // Invariant compile-time: tots els valors d'Audio::Group han de cabre als slots // de volum per grup que manté l'engine. Si s'afegeix una nova entrada a Group // i no s'incrementa Ja::MAX_GROUPS, aquest assert falla abans de compilar. static_assert(static_cast(Audio::Group::INTERFACE) < Ja::MAX_GROUPS, "Audio::Group té més entrades que slots té Ja::MAX_GROUPS"); // Singleton std::unique_ptr