// wwcommDlg.h : ヘッダー ファイル
//

#if !defined(AFX_WWCOMMDLG_H__449F17E7_CA92_11D4_8370_0080C70B0E73__INCLUDED_)
#define AFX_WWCOMMDLG_H__449F17E7_CA92_11D4_8370_0080C70B0E73__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <Afxmt.h>

#define	BSIZE 0x10000

/////////////////////////////////////////////////////////////////////////////
// CWwcommDlg ダイアログ

struct tagComm{
	bool	bCont;
	CCriticalSection csCSection;
	HANDLE	hCom;
	DWORD	dwTop;
	LONG	lCounts;
	DWORD	dwMask;
	char	*buffer;
};

class CWwcommDlg : public CDialog
{
// 構築
public:
	char m_strMLine[1024];
	int MkMsgline();
	void RSSend();
	static UINT ThreadFunc(LPVOID pParam);
	void ThreadOn();
	void ThreadOff();
	void OpenCommPort(LPCTSTR com);
	CWwcommDlg(CWnd* pParent = NULL);	// 標準のコンストラクタ
	int m_iCount;
	CWinThread* m_pThread;
	CString m_sCom;
	int m_nComport;
	struct tagComm	m_rs;

// ダイアログ データ
	//{{AFX_DATA(CWwcommDlg)
	enum { IDD = IDD_WWCOMM_DIALOG };
	CEdit	m_wndEdit01;
	CString	m_sEdit02;
	//}}AFX_DATA

	// ClassWizard は仮想関数のオーバーライドを生成します。
	//{{AFX_VIRTUAL(CWwcommDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV のサポート
	//}}AFX_VIRTUAL

// インプリメンテーション
protected:
	HICON m_hIcon;

	// 生成されたメッセージ マップ関数
	//{{AFX_MSG(CWwcommDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnExit();
	afx_msg void OnMenucom(UINT);
	virtual void OnCancel();
	virtual void OnOK();
	afx_msg void OnPortconfig();
	afx_msg void OnClear();
	afx_msg void OnHelp();
	afx_msg void OnRecv(WPARAM wParam, LPARAM lParam);
	afx_msg void OnChangeEdit2();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ は前行の直前に追加の宣言を挿入します。

#endif // !defined(AFX_WWCOMMDLG_H__449F17E7_CA92_11D4_8370_0080C70B0E73__INCLUDED_)
