X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8cf73271dd6f442a98e86b559d4a55c37e25b99f..99c75ebc5e447e1bb25439e22f07130583dc5783:/include/wx/mac/carbon/sound.h diff --git a/include/wx/mac/carbon/sound.h b/include/wx/mac/carbon/sound.h index 18a84d101b..670b170b9e 100644 --- a/include/wx/mac/carbon/sound.h +++ b/include/wx/mac/carbon/sound.h @@ -2,50 +2,52 @@ // Name: sound.h // Purpose: wxSound class (loads and plays short Windows .wav files). // Optional on non-Windows platforms. -// Author: Stefan Csomor +// Author: Ryan Norton, Stefan Csomor // Modified by: // Created: 1998-01-01 // RCS-ID: $Id$ -// Copyright: (c) Stefan Csomor +// Copyright: (c) Ryan Norton, Stefan Csomor // 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 WXDLLEXPORT wxSound : public wxSoundBase +class WXDLLIMPEXP_ADV wxSound : public wxSoundBase { public: wxSound(); wxSound(const wxString& fileName, bool isResource = FALSE); wxSound(int size, const wxByte* data); - ~wxSound(); + virtual ~wxSound(); public: bool Create(const wxString& fileName, bool isResource = FALSE); bool IsOk() const { return !m_sndname.IsEmpty(); } + static void Stop(); + static bool IsPlaying(); -protected: - // prevent collision with some BSD definitions of macro Free() - bool FreeData(); - + void* GetHandle(); +protected: bool DoPlay(unsigned flags) const; private: - void* m_sndChan; - - wxString m_sndname; - void* m_hSnd; - int m_waveLength; - bool m_isResource; + wxString m_sndname; //file path + char* m_hSnd; //pointer to resource or memory location + int m_waveLength; //size of file in memory mode + void* m_pTimer; //timer + + enum wxSoundType + { + wxSound_MEMORY, + wxSound_FILE, + wxSound_RESOURCE, + wxSound_NONE + } m_type; //mode }; #endif