/////////////////////////////////////////////////////////////////////////////
-// Name: sound.h
+// Name: wx/osx/sound.h
// Purpose: wxSound class (loads and plays short Windows .wav files).
// Optional on non-Windows platforms.
// Author: Ryan Norton, Stefan Csomor
public :
wxSoundData();
virtual ~wxSoundData();
-
+
virtual bool Play(unsigned int flags) = 0;
// stops the sound and deletes the optional timer
virtual void Stop();
// mark this to be deleted
virtual void MarkForDeletion();
virtual bool IsMarkedForDeletion() const { return m_markedForDeletion; }
-
+
// does the true work of stopping and cleaning up
virtual void DoStop() = 0;
protected :
void CreateAndStartTimer();
-
+
unsigned int m_flags;
wxSoundTimer* m_pTimer;
bool m_markedForDeletion;
bool Create(int size, const wxByte* data);
bool IsOk() const { return m_data != NULL; }
-
+
// Stop playing any sound
static void Stop();
-
+
// Returns true if a sound is being played
static bool IsPlaying();
-
+
// Notification when a sound has stopped
static void SoundStopped(const wxSoundData* data);
-
+
protected:
bool DoPlay(unsigned flags) const;
void Init();
private:
// data of this object
class wxSoundData *m_data;
-
+
wxDECLARE_NO_COPY_CLASS(wxSound);
};