www.pudn.com > PC_final.rar > PCDlg.h


// PCDlg.h : header file 
// 
 
#if !defined(AFX_PCDLG_H__CB45B1B6_9D90_44A8_B8DB_A0CFA3991F1C__INCLUDED_) 
#define AFX_PCDLG_H__CB45B1B6_9D90_44A8_B8DB_A0CFA3991F1C__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include "global.h" 
#include  
#include "ProducerThread.h" 
#include "ConsumerThread.h" 
 
///////////////////////////////////////////////////////////////////////////// 
// CPCDlg dialog 
 
//##ModelId=4859530303A9 
class CPCDlg : public CDialog 
{ 
	// Construction 
public: 
	//##ModelId=4859530303BA 
	CPCDlg(CWnd* pParent = NULL);	// standard constructor 
	 
	 
	 
	//##ModelId=4859530303BC 
	HANDLE m_hFullSemaphore[SIZE_OF_BUFFER];			   //当缓冲区满时迫使生产者等待 
	//##ModelId=4859530303C8 
	HANDLE m_hEmptySemaphore[SIZE_OF_BUFFER];			   //当缓冲区空时迫使消费者等待 
 
	//##ModelId=4859530303C9 
	int m_Array[SIZE_OF_BUFFER];           //定义大小为SIZE_OF_BUFFER区域(仓库) 
	//##ModelId=4859530303CA 
	int m_CArray[SIZE_OF_BUFFER];          //定义消费者正在消费的区域 
	//##ModelId=4859530303D8 
	int m_PArray[SIZE_OF_BUFFER];          //定义生产者正在生产的区域 
	//##ModelId=4859530303D9 
	CString m_PStr[SIZE_OF_BUFFER];        //用于记录生产者的名称(程序中用P0,P1等来表示) 
	//##ModelId=4859530303DA 
	CString m_CStr[SIZE_OF_BUFFER];        //用于记录消费者的名称(程序中用C0,C1等来表示) 
	//##ModelId=4859530303DB 
	bool m_continue ;                      //控制程序结束 
	//##ModelId=485953040001 
    CProducerThread* m_PT[MAX_PRODUCER];   //生产者线程的数组 
	//##ModelId=485953040010 
	CConsumerThread* m_CT[MAX_CONSUMER];   //消费者线程的数组   
	 
	// Dialog Data 
	//{{AFX_DATA(CPCDlg) 
	enum { IDD = IDD_PC_DIALOG }; 
	//##ModelId=485953040015 
	CButton	m_sp; 
	//##ModelId=485953040020 
	CButton	m_sc; 
	//##ModelId=485953040025 
	CButton	m_pmanual; 
	//##ModelId=48595304002F 
	CButton	m_cmanual; 
	//##ModelId=485953040033 
	UINT	m_nc; 
	//##ModelId=48595304003E 
	UINT	m_np; 
	//##ModelId=48595304003F 
	CString	m_note; 
	//##ModelId=485953040040 
	CString	m_pnote; 
	//}}AFX_DATA 
	 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CPCDlg) 
protected: 
	//##ModelId=48595304004E 
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support 
	//}}AFX_VIRTUAL 
	 
	// Implementation 
protected: 
	//##ModelId=485953040051 
	HICON m_hIcon; 
	 
	// Generated message map functions 
	//{{AFX_MSG(CPCDlg) 
	//##ModelId=48595304005D 
	virtual BOOL OnInitDialog(); 
	//##ModelId=48595304005F 
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam); 
	//##ModelId=48595304006F 
	afx_msg void OnPaint(); 
	//##ModelId=48595304007D 
	afx_msg HCURSOR OnQueryDragIcon(); 
	//##ModelId=48595304007F 
	afx_msg void OnStop(); 
	//##ModelId=485953040081 
	afx_msg void OnPstar(); 
	//##ModelId=48595304008C 
	afx_msg void OnStartc(); 
	//##ModelId=48595304008E 
	afx_msg void OnTimer(UINT nIDEvent); 
	//##ModelId=485953040091 
	afx_msg void OnRefresh(); 
	//##ModelId=48595304009C 
	afx_msg void OnCmanual(); 
	//##ModelId=48595304009E 
	afx_msg void OnPmanual(); 
	//##ModelId=4859530400A0 
	afx_msg void OnExit(); 
	//##ModelId=4859530400AB 
	afx_msg void OnChangeP(); 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
}; 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_PCDLG_H__CB45B1B6_9D90_44A8_B8DB_A0CFA3991F1C__INCLUDED_)