www.pudn.com > 3D_OnlineGame_Humen.rar > Midi.h


#ifndef _MIDI_ 
#define _MIDI_ 
/* 
#include  
#include  
#include  
#include  
#include  
 
#if !defined(AFX_MUSIC_H__86E74FCC_F274_11D2_BBB1_00E02917BC84__INCLUDED_) 
#define AFX_MUSIC_H__86E74FCC_F274_11D2_BBB1_00E02917BC84__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
class CMusicPlayer 
{ 
public: 
  CMusicPlayer(); 
  virtual ~CMusicPlayer(); 
   
  BOOL InitMP3();	 
  BOOL OpenFile(LPCTSTR); 
  BOOL CreateFilterGraph( void ); 
  void DeleteContents( void ); 
   
  void Play(); 
  void CheckPlayEnd();	// loop, 檢查是否已播完 
  void Pause(); 
  void Stop(); 
  void AbortStop(); 
  void PlayContinue(); 
   
  HANDLE GetGraphEventHandle( ) { return m_hGraphNotifyEvent; }; 
  void OnGraphNotify(); 
  enum {Uninitialized, Stopped, Paused, Playing } m_State; 
   
  IGraphBuilder *m_pGraph; 
  IBasicAudio  *m_pAudio;  
   
  BOOL CanPlay(){ return m_State==Stopped || m_State==Paused; }; 
  BOOL CanStop(){ return m_State==Playing || m_State==Paused; }; 
  BOOL CanPause(){ return m_State==Playing || m_State==Stopped; }; 
  BOOL IsInitialized(){ return m_State!=Uninitialized; }; 
  void VolumeSet(long i);	// 設定 0 ~ -10000音量 
  void VolumeUp(long i); 
  void VolumeDown(long i); 
  void BalanceSet(long i); // -10000 靠左, 10000 靠右 
  void BalanceLeft(long i);  
  void BalanceRight(long i); 
   
  HANDLE m_hGraphNotifyEvent; 
 
  HANDLE hTimer; 
   DWORD dwTimerID; 
protected: 
}; 
extern CMusicPlayer* g_Music; 
#endif // !defined(AFX_MUSIC_H__86E74FCC_F274_11D2_BBB1_00E02917BC84__INCLUDED_) 
*/ 
 
BOOL PlayMidi(char *sFileName); 
BOOL PauseMidi(); 
BOOL ResumeMidi(); 
BOOL StopMidi(); 
BOOL ReplayMidi(); 
 
#endif