// VoiceDialerDlg.h : header file
//

#pragma once
#include "SwiWwanCmApi.h"
#include "GobiConnectionMgmtAPI.h"
#include "GobiVoiceMgmtApi.h"
#include "afxwin.h"


//gobi apis
typedef struct
{
	arrCallInfo* inInfo;
	arrRemotePartyNum* 	remoteNumInfo;
	arrRemotePartyName* remoteName;
	arrAlertingType* 	alertType;
	arrSvcOption*		servieOpt;
	arrCallEndReason*   callEnd;
	arrAlphaIDInfo* alphaIDInfo;
	arrPeerNumInfo*  connectedPartyInfo;
	arrDiagInfo* diagInfo;
	arrPeerNumInfo* calledPartyInfo;
	arrPeerNumInfo* redirectInfo;
	arrAlertingPattern* alertPattern;
}TCallInfoCallback;



// CVoiceDialerDlg dialog
class CVoiceDialerDlg : public CDialog
{
// Construction
public:
	CVoiceDialerDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	enum { IDD = IDD_VOICEDIALER_DIALOG };


	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support

// Implementation
protected:
	HICON m_hIcon;
	UINT_PTR m_DeviceSearchTimer;

 	// Search for available device
	BOOL DeviceSearch();

	// Generated message map functions
	virtual BOOL OnInitDialog();
#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
	afx_msg void OnSize(UINT /*nType*/, int /*cx*/, int /*cy*/);
#endif
	virtual void OnCancel();
	virtual void OnOK();
	DECLARE_MESSAGE_MAP();
public:
	CEdit m_editStatus;
	afx_msg void OnTimer(UINT_PTR nIDEvent);
	afx_msg LRESULT OnNotifDeviceRemoval(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnCallInfoCallback(WPARAM wParam, LPARAM lParam);
	afx_msg void OnBnClickedButton3();
	afx_msg void OnBnClickedButton4();
	CListBox lst_Log;
	arrCallInfo m_callinfo;
	CEdit phoneno;
	afx_msg void OnBnClickedBtnget();
	CComboBox m_combo_cmd;
	CEdit m_edit_profile;
	CEdit m_edit_earmute;
	CEdit m_edit_micmute;
	CEdit m_edit_generator;
	CEdit m_edit_volume;
	CEdit m_edit_cwt;
	afx_msg void OnBnClickedBtnset();
	afx_msg void OnBnClickedBtnclear();
	CEdit m_edit_error;
	CEdit m_edit_gain;
	CEdit m_edit_level;
	CEdit m_edit_loopback;
	CButton m_check_keep;
	CEdit m_edit_switch;
	CEdit m_edit_stage;
	CEdit m_edit_b0;
	CEdit m_edit_b1;
	CEdit m_edit_b2;
	CEdit m_edit_a1;
	CEdit m_edit_a2;
	CButton m_check_switch;
	CButton m_check_coeff;
	CEdit m_edit_device;
	CEdit m_edit_id;
	CEdit m_edit_param;
};
