// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
-// Copyright: (c) Julian Smart and Markus Holzem
-// Licence: wxWindows license
+// Copyright: (c) Julian Smart
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifndef __WAVEH__
-#define __WAVEH__
+#ifndef _WX_WAVE_H_
+#define _WX_WAVE_H_
#ifdef __GNUG__
#pragma interface "wave.h"
#endif
-#include <wx/object.h>
+#if wxUSE_WAVE
-class wxWave : public wxObject
+#include "wx/object.h"
+
+class WXDLLEXPORT wxWave : public wxObject
{
public:
- wxWave(void);
+ wxWave();
wxWave(const wxString& fileName, bool isResource = FALSE);
- ~wxWave(void);
+ wxWave(int size, const wxByte* data);
+ ~wxWave();
public:
- bool Create(const wxString& sFileName, bool isResource = FALSE);
- bool IsOk(void) const { return (m_waveData ? TRUE : FALSE); };
+ // Create from resource or file
+ bool Create(const wxString& fileName, bool isResource = FALSE);
+ // Create from data
+ bool Create(int size, const wxByte* data);
+
+ bool IsOk() const { return (m_waveData ? TRUE : FALSE); };
bool Play(bool async = TRUE, bool looped = FALSE) const;
protected:
- bool Free(void);
+ bool Free();
private:
- byte* m_waveData;
+ wxByte* m_waveData;
int m_waveLength;
bool m_isResource;
-};
+ DECLARE_NO_COPY_CLASS(wxWave)
+};
+#endif
#endif