X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/655719367ac5e131d9642e5783f3ecf64d1a3385..438959cca892a7651634cc3a7aad4819ac49b23c:/include/wx/msw/sound.h?ds=sidebyside diff --git a/include/wx/msw/sound.h b/include/wx/msw/sound.h index cdfa05d8d4..5be1eefc8f 100644 --- a/include/wx/msw/sound.h +++ b/include/wx/msw/sound.h @@ -1,55 +1,52 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: sound.h +// Name: wx/msw/sound.h // Purpose: wxSound class // Author: Julian Smart // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_SOUND_H_ #define _WX_SOUND_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "sound.h" -#endif - #if wxUSE_SOUND -#include "wx/object.h" - class WXDLLIMPEXP_ADV wxSound : public wxSoundBase { public: - wxSound(); - wxSound(const wxString& fileName, bool isResource = false); - wxSound(int size, const wxByte* data); - ~wxSound(); + wxSound(); + wxSound(const wxString& fileName, bool isResource = false); + wxSound(size_t size, const void* data); + virtual ~wxSound(); -public: - // Create from resource or file - bool Create(const wxString& fileName, bool isResource = false); - // Create from data - bool Create(int size, const wxByte* data); + // Create from resource or file + bool Create(const wxString& fileName, bool isResource = false); + + // Create from data + bool Create(size_t size, const void* data); - bool IsOk() const { return (m_waveData ? true : false); }; - - static void Stop(); + bool IsOk() const { return m_data != NULL; } + + static void Stop(); protected: - bool Free(); - - bool DoPlay(unsigned flags) const; + void Init() { m_data = NULL; } + bool CheckCreatedOk(); + void Free(); + + virtual bool DoPlay(unsigned flags) const; private: - wxByte* m_waveData; - int m_waveLength; - bool m_isResource; + // data of this object + class wxSoundData *m_data; - DECLARE_NO_COPY_CLASS(wxSound) + wxDECLARE_NO_COPY_CLASS(wxSound); }; -#endif -#endif + +#endif // wxUSE_SOUND + +#endif // _WX_SOUND_H_