29#include <unordered_map>
43 unsigned int m_currentID;
48 std::unordered_map<unsigned int, std::shared_ptr<IHandle>> m_handles;
53 std::shared_ptr<IDevice> m_device;
63 std::shared_ptr<VolumeStorage> m_volumeStorage;
82 std::shared_ptr<IHandle>
play(std::shared_ptr<ISound> sound);
124 static void cleanHandleCallback(
void* data);
#define AUD_NAMESPACE_END
Closes the audaspace namespace aud.
Definition Audaspace.h:119
#define AUD_NAMESPACE_BEGIN
Opens the audaspace namespace aud.
Definition Audaspace.h:116
#define AUD_API
Used for exporting symbols in the shared library.
Definition Audaspace.h:93
Defines the IHandle interface as well as possible states of the handle.
Status
Status of a playback handle.
Definition IHandle.h:31
This class represents a category of related sounds which are currently playing and allows to control ...
Definition PlaybackCategory.h:38
float getVolume()
Retrieves the volume of the category.
void cleanHandles()
Cleans the category erasing all the invalid handles.
void resume()
Resumes all the paused sounds of the category.
PlaybackCategory(std::shared_ptr< IDevice > device)
Creates a new PlaybackCategory.
void setVolume(float volume)
Sets the volume for the category.
void stop()
Stops all the playing back or paused sounds.
void pause()
Pauses all current played back sounds of the category.
std::shared_ptr< IHandle > play(std::shared_ptr< ISound > sound)
Plays a new sound in the category.
std::shared_ptr< VolumeStorage > getSharedVolume()
Retrieves the shared volume of the category.