Files
prog2/Engine/SoundEffect.h
Bram Verhulst 81746db9ae Final Commit
2024-06-09 23:32:29 +02:00

29 lines
678 B
C++

#pragma once
#include <string>
struct Mix_Chunk;
class SoundEffect final
{
public:
explicit SoundEffect( const std::string& path, int channel = -1);
~SoundEffect( );
SoundEffect(const SoundEffect& other) = delete;
SoundEffect& operator=(const SoundEffect& rhs) = delete;
SoundEffect( SoundEffect&& other) = delete;
SoundEffect& operator=( SoundEffect&& rhs) = delete;
bool IsLoaded( ) const;
void Play( const int loops ) const;
void SetVolume( const int value );
int GetVolume( ) const;
void Stop( ) const;
static void StopAll( );
static void PauseAll( );
static void ResumeAll( );
bool IsPlaying() const;
private:
Mix_Chunk* m_pMixChunk;
int m_Channel;
};