mirror of
https://github.com/borgesdan/xn65
synced 2024-12-29 21:54:47 +01:00
28 lines
666 B
C++
28 lines
666 B
C++
|
#ifndef XNA_SOUND_SOUNDEFFECT_HPP
|
||
|
#define XNA_SOUND_SOUNDEFFECT_HPP
|
||
|
|
||
|
#include "../default.hpp"
|
||
|
|
||
|
namespace xna {
|
||
|
struct ISoundEffectInstance {
|
||
|
public:
|
||
|
virtual void Play(bool loop = false) = 0;
|
||
|
virtual void Stop(bool immediate = true) = 0;
|
||
|
virtual void Pause() = 0;
|
||
|
virtual void Resume() = 0;
|
||
|
virtual void Volume(float volume) = 0;
|
||
|
virtual void Pitch(float pitch) = 0;
|
||
|
virtual void Pan(float pan) = 0;
|
||
|
virtual bool IsLooped() = 0;
|
||
|
};
|
||
|
|
||
|
class ISoundEffect {
|
||
|
public:
|
||
|
virtual ~ISoundEffect(){}
|
||
|
virtual void Play() = 0;
|
||
|
virtual void Play(float volume, float pitch, float pan) = 0;
|
||
|
virtual SoundEffectInstance CreateInstance() = 0;
|
||
|
};
|
||
|
}
|
||
|
|
||
|
#endif
|