X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/57f4f9255e3d70e219e6eabd68c3990c0f471f81..9869c26285dc51d13607cddaa04f65ce983653a5:/include/wx/msw/sound.h diff --git a/include/wx/msw/sound.h b/include/wx/msw/sound.h index 2e7e5ff48e..9e7cc49698 100644 --- a/include/wx/msw/sound.h +++ b/include/wx/msw/sound.h @@ -1,10 +1,9 @@ ///////////////////////////////////////////////////////////////////////////// -// 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 ///////////////////////////////////////////////////////////////////////////// @@ -12,44 +11,41 @@ #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); - bool IsOk() const { return (m_waveData ? true : false); }; + // Create from data + bool Create(size_t size, const void* data); - static void Stop(); + bool IsOk() const { return m_data != NULL; } + + static void Stop(); protected: - bool Free(); + void Init() { m_data = NULL; } + bool CheckCreatedOk(); + void Free(); - bool DoPlay(unsigned flags) const; + 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_