summaryrefslogtreecommitdiff
path: root/src/sound.h
diff options
context:
space:
mode:
authorLoïc Blot <nerzhul@users.noreply.github.com>2018-03-24 15:45:25 +0100
committerGitHub <noreply@github.com>2018-03-24 15:45:25 +0100
commit4fd97158762b4cdd4c73a6e29960e371d9de56e7 (patch)
treec768a82d972f2d7d80d20c0eccab0494b24d3538 /src/sound.h
parentbcd22fc34cf70c3fe246f500633aa42e388fabc4 (diff)
downloadminetest-4fd97158762b4cdd4c73a6e29960e371d9de56e7.tar.gz
minetest-4fd97158762b4cdd4c73a6e29960e371d9de56e7.tar.bz2
minetest-4fd97158762b4cdd4c73a6e29960e371d9de56e7.zip
Cleanup sound manager class (#7158)
* Cleanup sound manager client * Use some const refs * Use auto on iterators * Drop unused parameters * Move sound_openal.* to client folder * Move sound.cpp + OnDemandSoundFetcher to client/ folder + reorganize includes properly
Diffstat (limited to 'src/sound.h')
-rw-r--r--src/sound.h85
1 files changed, 1 insertions, 84 deletions
diff --git a/src/sound.h b/src/sound.h
index 0ad34e5cd..81d918c81 100644
--- a/src/sound.h
+++ b/src/sound.h
@@ -23,14 +23,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <string>
#include "irrlichttypes_bloated.h"
-class OnDemandSoundFetcher
-{
-public:
- virtual void fetchSounds(const std::string &name,
- std::set<std::string> &dst_paths,
- std::set<std::string> &dst_datas) = 0;
-};
-
struct SimpleSoundSpec
{
SimpleSoundSpec(const std::string &name = "", float gain = 1.0f,
@@ -42,83 +34,8 @@ struct SimpleSoundSpec
bool exists() const { return !name.empty(); }
- std::string name = "";
+ std::string name;
float gain = 1.0f;
float fade = 0.0f;
float pitch = 1.0f;
};
-
-class ISoundManager
-{
-public:
- virtual ~ISoundManager() = default;
-
- // Multiple sounds can be loaded per name; when played, the sound
- // should be chosen randomly from alternatives
- // Return value determines success/failure
- virtual bool loadSoundFile(
- const std::string &name, const std::string &filepath) = 0;
- virtual bool loadSoundData(
- const std::string &name, const std::string &filedata) = 0;
-
- virtual void updateListener(v3f pos, v3f vel, v3f at, v3f up) = 0;
- virtual void setListenerGain(float gain) = 0;
-
- // playSound functions return -1 on failure, otherwise a handle to the
- // sound. If name=="", call should be ignored without error.
- virtual int playSound(const std::string &name, bool loop, float volume,
- float fade = 0.0f, float pitch = 1.0f) = 0;
- virtual int playSoundAt(const std::string &name, bool loop, float volume, v3f pos,
- float pitch = 1.0f) = 0;
- virtual void stopSound(int sound) = 0;
- virtual bool soundExists(int sound) = 0;
- virtual void updateSoundPosition(int sound, v3f pos) = 0;
- virtual bool updateSoundGain(int id, float gain) = 0;
- virtual float getSoundGain(int id) = 0;
- virtual void step(float dtime) = 0;
- virtual void fadeSound(int sound, float step, float gain) = 0;
-
- int playSound(const SimpleSoundSpec &spec, bool loop)
- {
- return playSound(spec.name, loop, spec.gain, spec.fade, spec.pitch);
- }
- int playSoundAt(const SimpleSoundSpec &spec, bool loop, const v3f &pos)
- {
- return playSoundAt(spec.name, loop, spec.gain, pos, spec.pitch);
- }
-};
-
-class DummySoundManager : public ISoundManager
-{
-public:
- virtual bool loadSoundFile(const std::string &name, const std::string &filepath)
- {
- return true;
- }
- virtual bool loadSoundData(const std::string &name, const std::string &filedata)
- {
- return true;
- }
- void updateListener(v3f pos, v3f vel, v3f at, v3f up) {}
- void setListenerGain(float gain) {}
- int playSound(const std::string &name, bool loop, float volume, float fade,
- float pitch)
- {
- return 0;
- }
- int playSoundAt(const std::string &name, bool loop, float volume, v3f pos,
- float pitch)
- {
- return 0;
- }
- void stopSound(int sound) {}
- bool soundExists(int sound) { return false; }
- void updateSoundPosition(int sound, v3f pos) {}
- bool updateSoundGain(int id, float gain) { return false; }
- float getSoundGain(int id) { return 0; }
- void step(float dtime) {}
- void fadeSound(int sound, float step, float gain) {}
-};
-
-// Global DummySoundManager singleton
-extern DummySoundManager dummySoundManager;