// Created: 25/10/98
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "wave.h"
#endif
+#include "wx/setup.h"
+
+#if wxUSE_WAVE
+
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
//-----------------------------------------------------------------
wxWave::wxWave()
- : m_waveLength(0), m_isResource(FALSE), m_waveData(NULL)
+ : m_waveData(NULL), m_waveLength(0), m_isResource(FALSE)
{
}
wxWave::wxWave(const wxString& sFileName, bool isResource)
- : m_waveLength(0), m_isResource(isResource), m_waveData(NULL)
+ : m_waveData(NULL), m_waveLength(0), m_isResource(isResource)
{
Create(sFileName, isResource);
}
-wxWave::wxWave(int size, const byte* data)
- : m_waveLength(0), m_isResource(FALSE), m_waveData(NULL)
+wxWave::wxWave(int size, const wxByte* data)
+ : m_waveData(NULL), m_waveLength(0), m_isResource(FALSE)
{
Create(size, data);
}
m_waveLength = (int) fileWave.Length();
- m_waveData = new byte[m_waveLength];
+ m_waveData = new wxByte[m_waveLength];
if (!m_waveData)
{
return FALSE;
}
}
-bool wxWave::Create(int size, const byte* data)
+bool wxWave::Create(int size, const wxByte* data)
{
Free();
m_isResource = FALSE;
m_waveLength=size;
- m_waveData = new byte[size];
+ m_waveData = new wxByte[size];
if (!m_waveData)
{
return FALSE;
int wxWave::OpenDSP(void)
{
- wxString str;
WAVEFORMAT waveformat;
int dev=-1;
unsigned long ul;
memcpy(&waveformat,&m_waveData[FMT_INDEX+4],sizeof(WAVEFORMAT));
- str= wxString(m_waveData,4);
- if (str != "RIFF") return -1;
- str= wxString(&m_waveData[WAVE_INDEX],4);
- if (str != "WAVE") return -1;
- str= wxString(&m_waveData[FMT_INDEX],4);
- if (str != "fmt ") return -1;
- str= wxString(&m_waveData[FMT_INDEX+waveformat.uiSize+8],4);
- if(str != "data") return -1;
+ if (memcmp(m_waveData, "RIFF", 4) != 0)
+ return -1;
+ if (memcmp(&m_waveData[WAVE_INDEX], "WAVE", 4) != 0)
+ return -1;
+ if (memcmp(&m_waveData[FMT_INDEX], "fmt ", 4) != 0)
+ return -1;
+ if (memcmp(&m_waveData[FMT_INDEX+waveformat.uiSize+8], "data", 4) != 0)
+ return -1;
memcpy(&ul,&m_waveData[FMT_INDEX+waveformat.uiSize+12],4);
m_sizeData=ul;
if ((int)(m_sizeData+FMT_INDEX+waveformat.uiSize+16) != m_waveLength)
return TRUE;
}
+#endif