3#include <unordered_map>
4#include <boost/filesystem.hpp>
5#include <SFML/Audio.hpp>
30 void doTick(glm::vec3 player_pos,
35 std::unordered_map<ClientMusic, std::unique_ptr<sf::Music>> clientMusics;
37 std::unordered_map<ClientSFX, std::unique_ptr<sf::SoundBuffer>> clientSFXBufs;
38 std::unordered_map<ClientSFX, std::unique_ptr<sf::Sound>> clientSFXs;
40 std::unordered_map<ServerSFX, std::unique_ptr<sf::SoundBuffer>> serverSFXBufs;
41 std::unordered_map<SoundID, std::unique_ptr<sf::Sound>> serverSFXs;
45 std::unique_ptr<sf::SoundBuffer> loadSFXBuf(
ClientSFX sfx);
46 std::unique_ptr<sf::SoundBuffer> loadSFXBuf(
ServerSFX sfx);
47 std::unique_ptr<sf::SoundBuffer> loadSFXBuf(std::string path);
52 std::unique_ptr<sf::Music> makeMusic(
ClientMusic music);
Definition: audiomanager.hpp:15
void playSFX(ClientSFX sfx)
Definition: audiomanager.cpp:70
void init()
Definition: audiomanager.cpp:24
void doTick(glm::vec3 player_pos, const LoadSoundCommandsEvent &delta, std::array< boost::optional< SharedObject >, MAX_POINT_LIGHTS > light_sources)
Definition: audiomanager.cpp:74
void playMusic(ClientMusic music)
Definition: audiomanager.cpp:58
void stopMusic(ClientMusic music)
Definition: audiomanager.cpp:66
~AudioManager()
Definition: audiomanager.cpp:20
void pauseMusic(ClientMusic music)
Definition: audiomanager.cpp:62
AudioManager()
Definition: audiomanager.cpp:16
GLsizei GLsizei GLchar * source
Definition: glad.h:1897
#define MAX_POINT_LIGHTS
Definition: constants.hpp:7
ServerSFX
Definition: soundtype.hpp:38
ClientSFX
Definition: soundtype.hpp:26
ClientMusic
Definition: soundtype.hpp:11
Definition: event.hpp:130
Definition: soundsource.hpp:10