Smolgui
Immediate gui library based on SFML
Loading...
Searching...
No Matches
SoundPlayer.h
Go to the documentation of this file.
1#pragma once
2
3#include <list>
4#include <SFML/System/Vector2.hpp>
5#include <SFML/System/Vector3.hpp>
6#include <SFML/Audio/Sound.hpp>
7#include <SFML/Audio/SoundBuffer.hpp>
8
10
11namespace sgui
12{
17{
18public:
22 SoundPlayer () = default;
23 SoundPlayer (const SoundPlayer&) = delete;
28 void setResource (SoundHolder& holder);
32 void play (
33 const std::string& sound,
34 const sf::Vector2f& position = {});
38 void removeStoppedSounds ();
42 sf::Vector3f listenerPosition () const;
46 void setListenerPosition (const sf::Vector2f& position);
50 float volume () const;
54 void setVolume (const float volume);
55public:
56 float attenuation = 0.f;
57 float minDistance = 100.f;
58private:
59 SoundHolder* m_soundBuffer;
60 std::list <sf::Sound> m_sounds;
61};
62
63} // namespace sgui
SoundPlayer()=default
float attenuation
Definition SoundPlayer.h:56
void setVolume(const float volume)
set sound volume
Definition SoundPlayer.cpp:55
void play(const std::string &sound, const sf::Vector2f &position={})
play a sound at a given position
Definition SoundPlayer.cpp:13
sf::Vector3f listenerPosition() const
get listener position
Definition SoundPlayer.cpp:43
void setListenerPosition(const sf::Vector2f &position)
set listener position
Definition SoundPlayer.cpp:37
void setResource(SoundHolder &holder)
set sounds files
Definition SoundPlayer.cpp:7
void removeStoppedSounds()
remove all stopped sounds
Definition SoundPlayer.cpp:29
float volume() const
get sound volume
Definition SoundPlayer.cpp:49
SoundPlayer(const SoundPlayer &)=delete
SoundPlayer & operator=(const SoundPlayer &)=delete
float minDistance
Definition SoundPlayer.h:57
Definition Interpolation.h:16
ResourcesHolder< sf::SoundBuffer > SoundHolder
Definition ResourcesHolder.h:77