cwavfile.h
来自「Visual C++ 游戏开发与设计实例 源代码(所有)」· C头文件 代码 · 共 58 行
H
58 行
// cWavFile.h: interface for the cWavFile class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CWAVFILE_H__0E167DB5_3E6F_4805_8CB7_7D28193DABD1__INCLUDED_)
#define AFX_CWAVFILE_H__0E167DB5_3E6F_4805_8CB7_7D28193DABD1__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <mmsystem.h>
#include <dxerr8.h>
#include <dsound.h>
#define WAVEFILE_READ 1
#define WAVEFILE_WRITE 2
class cWavFile
{
public:
WAVEFORMATEX* m_pwfx; // Pointer to WAVEFORMATEX structure
HMMIO m_hmmio; // MM I/O handle for the WAVE
MMCKINFO m_ck; // Multimedia RIFF chunk
MMCKINFO m_ckRiff; // Use in opening a WAVE file
DWORD m_dwSize; // The size of the wave file
MMIOINFO m_mmioinfoOut;
DWORD m_dwFlags;
BOOL m_bIsReadingFromMemory;
BYTE* m_pbData;
BYTE* m_pbDataCur;
ULONG m_ulDataSize;
CHAR* m_pResourceBuffer;
protected:
HRESULT ReadMMIO();
HRESULT WriteMMIO( WAVEFORMATEX *pwfxDest );
public:
cWavFile();
~cWavFile();
HRESULT Open( LPTSTR strFileName, WAVEFORMATEX* pwfx, DWORD dwFlags );
HRESULT OpenFromMemory( BYTE* pbData, ULONG ulDataSize, WAVEFORMATEX* pwfx, DWORD dwFlags );
HRESULT Close();
HRESULT Read( BYTE* pBuffer, DWORD dwSizeToRead, DWORD* pdwSizeRead );
HRESULT Write( UINT nSizeToWrite, BYTE* pbData, UINT* pnSizeWrote );
DWORD GetSize();
HRESULT ResetFile();
WAVEFORMATEX* GetFormat() { return m_pwfx; };
};
#endif // !defined(AFX_CWAVFILE_H__0E167DB5_3E6F_4805_8CB7_7D28193DABD1__INCLUDED_)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?