⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 soundbase.h

📁 pocket pc小游戏源码
💻 H
字号:
#pragma once
#include "pgestd.h"
#include "ogg/ivorbiscodec.h"
#include "ogg/ivorbisfile.h"
#include <mmsystem.h>

enum PLAY_STAT
{
	playing = 1,
	closed,
	paused,
	stoped
};

enum SOUND_TYPE
{
	oggsound = 1,
	wavesound
};

class SoundBase
{
public:
	SoundBase(void);
	~SoundBase(void);

	int open(char* caFile);
	void play();
	int isPlaying();
	void reset();
	int isSeekable();
	void seekTime(DWORD time);
	void stop();
	void pause();
	void close();
	void writeBuff();
	char* getName() {return m_caName;}
	DWORD getTime();

	static void CALLBACK WaveProc(HWAVEOUT hwo, UINT uMsg, DWORD dwInstance, 
		DWORD dwParam1, DWORD dwParam2 );

	char* m_caName;
	OggVorbis_File m_oggf;
	FILE* m_soundf;
	HWAVEOUT m_hWaveOut;
	WAVEFORMATEX m_wformat;
	WAVEHDR* m_block;
	int m_freeblocks;
	int m_blockCount;
	int m_blockSize;
	CRITICAL_SECTION m_waveCriticalSection;
	CRITICAL_SECTION m_seekCriticalSection;
	int m_iloopTimes;
	int m_iplayTimes;
	int m_iStat;
	int m_iSoundType;
	int m_curblock;
	int m_iDataSize;
	int m_iDataStart;
	int m_iCurData;
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -