ASAPCabinetFE
 
Loading...
Searching...
No Matches
isound_manager.h
1#ifndef ISOUND_MANAGER_H
2#define ISOUND_MANAGER_H
3
4#include <string>
5#include "config/settings.h" // Include Settings for updateSettings
6
15public:
19 virtual ~ISoundManager() = default;
20
27 virtual void loadSounds() = 0;
28
34 virtual void playUISound(const std::string& key) = 0;
35
41 virtual void playAmbienceMusic(const std::string& path) = 0;
42
49 virtual void playTableMusic(const std::string& path) = 0;
50 virtual void playCustomLaunch(const std::string& path) = 0;
54 virtual void stopMusic() = 0;
55
60 virtual void applyAudioSettings() = 0;
61
66 virtual void updateSettings(const Settings& newSettings) = 0;
67};
68
69#endif // ISOUND_MANAGER_H
Interface for managing sound operations.
Definition isound_manager.h:14
virtual void applyAudioSettings()=0
Applies the current audio settings (volumes, mute states) to all active sound types....
virtual void loadSounds()=0
Loads all necessary sound resources for the application.
virtual void stopMusic()=0
Stops any currently playing background music (ambience or table music).
virtual ~ISoundManager()=default
Virtual destructor to ensure proper cleanup for derived classes.
virtual void playAmbienceMusic(const std::string &path)=0
Plays the background ambience music. This music typically loops and plays continuously unless overrid...
virtual void playTableMusic(const std::string &path)=0
Plays the table-specific music. This music typically loops and will stop any currently playing ambien...
virtual void playUISound(const std::string &key)=0
Plays a specific UI sound effect identified by its unique key. These sounds are typically short and c...
virtual void updateSettings(const Settings &newSettings)=0
Updates the internal settings and reloads sounds if necessary.
Definition settings.h:12