www.pudn.com > Éù²¨ÆµÂÊÏÔʾ .zip > PeakLevelDlg.h


#if !defined(AFX_PEAKLEVELDLG_H__8F880B0D_A82F_4432_B748_2A2B522E5DD5__INCLUDED_) 
#define AFX_PEAKLEVELDLG_H__8F880B0D_A82F_4432_B748_2A2B522E5DD5__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include "VuMeterCtrl.h" 
#include "OscilloGraph.h" 
#include "StaticLink.h" 
 
#include  
#include  
 
// number of channels 
#define NUM_CHANNELS		2 
// number of updates per second 
#define UPDATE_INTERVAL		20 
 
 
class CPeakLevelDlg : public CDialog 
{ 
// Construction 
public: 
	CPeakLevelDlg(CWnd* pParent = NULL);	// standard constructor 
 
// Dialog Data 
	//{{AFX_DATA(CPeakLevelDlg) 
	enum { IDD = IDD_PEAKLEVEL_DIALOG }; 
	CStaticLink	m_Homepage; 
	COscilloGraph	m_OscilloGraphRight; 
	COscilloGraph	m_OscilloGraphLeft; 
	CVuMeterCtrl	m_VuMeterRight; 
	CVuMeterCtrl	m_VuMeterLeft; 
	//}}AFX_DATA 
 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CPeakLevelDlg) 
	protected: 
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support 
	//}}AFX_VIRTUAL 
 
// Implementation 
protected: 
	void SetOscilloGraphData(LPWAVEHDR pWaveHdr); 
	HICON m_hIcon; 
 
	BOOL StartInput(); 
	void StopInput(); 
	BOOL AnalyseDataBlock(LPWAVEHDR pWaveHdr, int &nLevelLeft, int &nLevelRight); 
 
    LPWAVEHDR m_WaveHeader[NUM_CHANNELS]; 
    PCMWAVEFORMAT m_PcmWaveFormat; 
    HWAVEIN m_hWave; 
    DWORD m_dwBufferLength; 
 
	// Generated message map functions 
	//{{AFX_MSG(CPeakLevelDlg) 
	virtual BOOL OnInitDialog(); 
	afx_msg void OnStart(); 
	afx_msg void OnStop(); 
	//}}AFX_MSG 
	LRESULT OnMMWimData(WPARAM wParam, LPARAM lParam); 
	DECLARE_MESSAGE_MAP() 
}; 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_PEAKLEVELDLG_H__8F880B0D_A82F_4432_B748_2A2B522E5DD5__INCLUDED_)