4 #include "mof/sound/SoundFile.hpp"
5 #include <mof/sound/component_sound.hpp>
10 class DirectSoundDevice;
12 class SoundBuffer : public mof::sound::component_sound
14 LPDIRECTSOUNDBUFFER8 m_pBuffer;
15 SoundFile* m_pResource;
16 DWORD default_frequency_;
18 std::shared_ptr<sound::DirectSoundDevice> pDevice_;
19 LPDIRECTSOUNDBUFFER8 getSoundBuffer(){return m_pBuffer;}
20 SoundFile* getResource(){return m_pResource;}
22 SoundBuffer(std::shared_ptr<sound::DirectSoundDevice> pDevice, LPDIRECTSOUNDBUFFER8 pBuffer , SoundFile* pResouce);
23 virtual ~SoundBuffer();
25 virtual bool initialize() = 0;
26 virtual bool play(bool looping) = 0;
27 virtual void stop() = 0;
28 virtual void update();