/* * CDirectSoundクラスのインタフェースを記述するためのクラスです。 * Author: AKIYAMA Kouhei * Created: 2002-10-02 */ #ifndef SSLIB2_DIRECT_SOUND_H_INCLUDED #define SSLIB2_DIRECT_SOUND_H_INCLUDED #ifndef DIRECTSOUND_VERSION # define DIRECTSOUND_VERSION 0x0300 //←変更したいならコンパイルオプション/Dで指定すること #endif #include #include namespace sslib2 { /** * CLSID_DirectSoundを薄く包み込み、使いやすくするためのクラスです。 */ class CDirectSound { private: CComPtr m_pds; CComPtr m_pPrimaryBuffer; public: CDirectSound(); virtual ~CDirectSound(); bool Create(HWND hWnd); bool CreatePrimaryBuffer(void); bool SetPrimaryBufferFormat(int channels, int samplePerSec, int bitPerSample); inline const CComPtr &GetDirectSound(void) const { return m_pds;} inline const CComPtr &GetPrimaryBuffer(void) const { return m_pPrimaryBuffer;} inline operator const CComPtr& () const { return m_pds;} }; } #endif