aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/SoundSystem.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/SoundSystem.h')
-rw-r--r--src/crepe/SoundSystem.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/crepe/SoundSystem.h b/src/crepe/SoundSystem.h
new file mode 100644
index 0000000..23bb00a
--- /dev/null
+++ b/src/crepe/SoundSystem.h
@@ -0,0 +1,27 @@
+#pragma once
+
+#include <soloud.h>
+
+#include <memory>
+
+#include "Sound.h"
+
+namespace crepe {
+
+class SoundSystem {
+public:
+ static std::unique_ptr<Sound> sound(const std::string & res);
+ static std::unique_ptr<Sound> sound(std::unique_ptr<api::Resource> res);
+
+private:
+ SoundSystem();
+ virtual ~SoundSystem();
+ static SoundSystem instance;
+
+private:
+ SoLoud::Soloud engine;
+ friend class Sound;
+};
+
+}
+