59 lines
1.2 KiB
C++
59 lines
1.2 KiB
C++
#ifndef _SAMPLE_PUREWAVE_HPP_
|
|
#define _SAMPLE_PUREWAVE_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_WINDOW_HPP_
|
|
#include <common/window.hpp>
|
|
#endif
|
|
#ifndef _COMMON_MMSYSTEM_HPP_
|
|
#include <common/mmsystem.hpp>
|
|
#endif
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _COMMON_BLOCK_HPP_
|
|
#include <common/block.hpp>
|
|
#endif
|
|
#ifndef _SAMPLE_DEVICEHANDLER_HPP_
|
|
#include <sample/devhndlr.hpp>
|
|
#endif
|
|
#ifndef _SAMPLE_WAVEINDEVICE_HPP_
|
|
#include <sample/wavein.hpp>
|
|
#endif
|
|
#ifndef _SAMPLE_WAVEOUTDEVICE_HPP_
|
|
#include <sample/waveout.hpp>
|
|
#endif
|
|
|
|
class WaveForm;
|
|
|
|
class PureWave : private Window
|
|
{
|
|
public:
|
|
PureWave(void);
|
|
~PureWave();
|
|
WORD play(WaveForm &someWaveForm,DeviceHandler::PlayMode playMode=DeviceHandler::NoWait);
|
|
UINT numInputDevices(void)const;
|
|
UINT numOutputDevices(void)const;
|
|
private:
|
|
void registerClass(void)const;
|
|
void createWindow(void);
|
|
Block<WaveOutDevice> mWaveOutDeviceBlock;
|
|
Block<WaveInDevice> mWaveInDeviceBlock;
|
|
HINSTANCE mhProcessInstance;
|
|
String mClassNameString;
|
|
};
|
|
|
|
inline
|
|
UINT PureWave::numInputDevices(void)const
|
|
{
|
|
return mWaveInDeviceBlock.size();
|
|
}
|
|
|
|
inline
|
|
UINT PureWave::numOutputDevices(void)const
|
|
{
|
|
return mWaveOutDeviceBlock.size();
|
|
}
|
|
#endif
|