// Name: wave.h
// Purpose: wxWave class (loads and plays short Windows .wav files).
// Optional on non-Windows platforms.
-// Author: AUTHOR
+// Author: Stefan Csomor
// Modified by:
-// Created: ??/??/98
+// Created: 1998-01-01
// RCS-ID: $Id$
-// Copyright: (c) AUTHOR
-// Licence: wxWindows licence
+// Copyright: (c) Stefan Csomor
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_WAVE_H_
#define _WX_WAVE_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "wave.h"
#endif
+#if wxUSE_WAVE
+
#include "wx/object.h"
-class wxWave : public wxObject
+class WXDLLEXPORT wxWave : public wxObject
{
public:
wxWave();
wxWave(const wxString& fileName, bool isResource = FALSE);
+ wxWave(int size, const wxByte* data);
~wxWave();
public:
bool Play(bool async = TRUE, bool looped = FALSE) const;
protected:
- bool Free();
+ // prevent collision with some BSD definitions of macro Free()
+ bool FreeData();
private:
void* m_sndChan;
-
+
wxString m_sndname;
void* m_hSnd;
int m_waveLength;
bool m_isResource;
};
+#endif
#endif
// _WX_WAVE_H_