// DlgCfgIsp.cpp : implementation file
//

#include "stdafx.h"
#include "NetSdkDemo.h"
#include "DlgCfgIsp.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDlgCfgIsp dialog
typedef struct{
	const char *szName;
	int nExpMode;
}EXPMODE_LIST_T;

CDlgCfgIsp::CDlgCfgIsp(CWnd* pParent /*=NULL*/)
	: CDialog(CDlgCfgIsp::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDlgCfgIsp)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
	m_bGetParam = FALSE;
}


void CDlgCfgIsp::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDlgCfgIsp)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDlgCfgIsp, CDialog)
	//{{AFX_MSG_MAP(CDlgCfgIsp)
	ON_CBN_SELCHANGE(IDC_CMB_NR_2D, OnSelchangeCmbNr2d)
	ON_CBN_SELCHANGE(IDC_CMB_NR_3D, OnSelchangeCmbNr3d)
	ON_CBN_SELCHANGE(IDC_CMB_NR_HOTPIXEL, OnSelchangeCmbNrHotpixel)
	ON_CBN_SELCHANGE(IDC_CMB_AFMODE, OnSelchangeCmbAfmode)
	ON_CBN_SELCHANGE(IDC_CMB_AFSENS, OnSelchangeCmbAfsens)
	ON_CBN_SELCHANGE(IDC_CMB_AFZONE, OnSelchangeCmbAfzone)
	ON_CBN_SELCHANGE(IDC_CMB_EXPMODE, OnSelchangeCmbExpmode)
	ON_BN_CLICKED(IDC_CHK_EXP_COMP, OnChkExpComp)
	ON_BN_CLICKED(IDC_CHK_EXP_BACKLIGHT, OnChkExpBacklight)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_COMPVALUE, OnSelchangeCmbExpCompvalue)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_ANTI, OnSelchangeCmbExpAnti)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_GAINLIMIT, OnSelchangeCmbExpGainlimit)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_SHUTTER, OnSelchangeCmbExpShutter)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_IRIS, OnSelchangeCmbExpIris)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_WDR, OnSelchangeCmbExpWdr)
	ON_CBN_SELCHANGE(IDC_CMB_EXP_BRIGHT, OnSelchangeCmbExpBright)
	ON_CBN_SELCHANGE(IDC_CMB_COR_WBMODE, OnSelchangeCmbCorWbmode)
	ON_CBN_SELCHANGE(IDC_CMB_COR_SAT, OnSelchangeCmbCorSat)
	ON_CBN_SELCHANGE(IDC_CMB_COR_HUE, OnSelchangeCmbCorHue)
	ON_CBN_SELCHANGE(IDC_CMB_COR_AWBSENS, OnSelchangeCmbCorAwbsens)
	ON_WM_HSCROLL()
	ON_BN_CLICKED(IDC_BTN_WBONEPUSH, OnBtnWbonepush)
	ON_CBN_SELCHANGE(IDC_CMB_IMG_BRI, OnSelchangeCmbImgBri)
	ON_CBN_SELCHANGE(IDC_CMB_IMG_CON, OnSelchangeCmbImgCon)
	ON_CBN_SELCHANGE(IDC_CMB_IMG_SHARPNESS, OnSelchangeCmbImgSharpness)
	ON_BN_CLICKED(IDC_CHK_WBMODE, OnChkWbmode)
	ON_BN_CLICKED(IDC_CHK_FLIP_H, OnChkFlipH)
	ON_BN_CLICKED(IDC_CHK_FLIP_V, OnChkFlipV)
	ON_CBN_SELCHANGE(IDC_CMB_IMG_GAMMA, OnSelchangeCmbImgGamma)
	ON_CBN_SELCHANGE(IDC_CMB_IMG_DCI, OnSelchangeCmbImgDci)
	ON_BN_CLICKED(IDC_BTN_DEFAULT, OnBtnDefault)
	ON_CBN_SELCHANGE(IDC_CMB_IMGSTYLE, OnSelchangeCmbImgstyle)
	ON_CBN_SELCHANGE(IDC_CMB_IMG_LDC, OnSelchangeCmbImgLdc)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDlgCfgIsp message handlers
BOOL CDlgCfgIsp::GetEnvParam()
{
	int i, iRet;
	EXPMODE_LIST_T stExpList[] = {
		{"自动",	 MRCONFC_EXPMODE_AUTO},
		{"手动",	 MRCONFC_EXPMODE_MANUAL},
		{"快门优先", MRCONFC_EXPMODE_SHUTTER},
		{"光圈优先", MRCONFC_EXPMODE_IRIS},
		{"亮度优先", MRCONFC_EXPMODE_BRIGHT},
	};
	//if(m_bGetParam)
	//	return TRUE;
	
	iRet = librmconfc_env_get(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
	if(iRet)
	{
		AfxMessageBox("获得参数失败!");
		return FALSE;
	}
	((CComboBox*)GetDlgItem(IDC_CMB_EXPMODE))->ResetContent();
	((CComboBox*)GetDlgItem(IDC_CMB_EXP_SHUTTER))->ResetContent();
	((CComboBox*)GetDlgItem(IDC_CMB_EXP_IRIS))->ResetContent();
	((CComboBox*)GetDlgItem(IDC_CMB_COR_WBMODE))->ResetContent();

	iRet = sizeof(stExpList)/sizeof(EXPMODE_LIST_T);
	for(i=0; i<iRet; i++)
	{
		((CComboBox*)GetDlgItem(IDC_CMB_EXPMODE))->AddString(stExpList[i].szName);
		((CComboBox*)GetDlgItem(IDC_CMB_EXPMODE))->SetItemData(i, stExpList[i].nExpMode);
	}
	for(i=0; i<m_stIsp.stExp.stShutter.nShutterList; i++)
	{
		((CComboBox*)GetDlgItem(IDC_CMB_EXP_SHUTTER))->AddString(m_stIsp.stExp.stShutter.stShutterList[i].szName);
		((CComboBox*)GetDlgItem(IDC_CMB_EXP_SHUTTER))->SetItemData(i, m_stIsp.stExp.stShutter.stShutterList[i].nValue);
	}
	for(i=0; i<m_stIsp.stExp.stIris.nIrisList; i++)
	{
		((CComboBox*)GetDlgItem(IDC_CMB_EXP_IRIS))->AddString(m_stIsp.stExp.stIris.stIrisList[i].szName);
		((CComboBox*)GetDlgItem(IDC_CMB_EXP_IRIS))->SetItemData(i, m_stIsp.stExp.stIris.stIrisList[i].nValue);
	}

	
	for(i=0; i<m_stIsp.stColor.stWbMode.nWbModeList; i++)
	{
		CString szMode = "";
		if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_AUTO)
			szMode = "自动";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_ONEPUSH)
			szMode = "一键白平衡";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_MANUAL)
			szMode = "手动";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_3000K)
			szMode = "3000K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_3500K)
			szMode = "3500K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_4000K)
			szMode = "4000K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_4500K)
			szMode = "4500K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_5000K)
			szMode = "5000K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_5500K)
			szMode = "5500K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_6000K)
			szMode = "6000K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_6500K)
			szMode = "6500K";
		else if(m_stIsp.stColor.stWbMode.byWbModeList[i] == MRCONFC_WBMODE_7000K)
			szMode = "7000K";
		((CComboBox*)GetDlgItem(IDC_CMB_COR_WBMODE))->AddString(szMode);
		((CComboBox*)GetDlgItem(IDC_CMB_COR_WBMODE))->SetItemData(i, m_stIsp.stColor.stWbMode.byWbModeList[i]);
	}

	if(m_stIsp.stAF.emAFMode == MRCONFC_AFMODE_AUTO)
		((CComboBox*)GetDlgItem(IDC_CMB_AFMODE))->SetCurSel(0);
	else if(m_stIsp.stAF.emAFMode == MRCONFC_AFMODE_ONEPUSH)
		((CComboBox*)GetDlgItem(IDC_CMB_AFMODE))->SetCurSel(1);
	else
		((CComboBox*)GetDlgItem(IDC_CMB_AFMODE))->SetCurSel(2);

	((CComboBox*)GetDlgItem(IDC_CMB_AFZONE))->SetCurSel(m_stIsp.stAF.emAFZone);
	((CComboBox*)GetDlgItem(IDC_CMB_AFSENS))->SetCurSel(m_stIsp.stAF.nSensitivity - 1);

	((CComboBox*)GetDlgItem(IDC_CMB_NR_2D))->SetCurSel(m_stIsp.stNR.noise2D);
	((CComboBox*)GetDlgItem(IDC_CMB_NR_3D))->SetCurSel(m_stIsp.stNR.noise3D);
	((CComboBox*)GetDlgItem(IDC_CMB_NR_HOTPIXEL))->SetCurSel(m_stIsp.stNR.dhotpixel);

	ComboxSetDataInx((CComboBox*)GetDlgItem(IDC_CMB_EXPMODE), m_stIsp.stExp.stExpMode.emExpMode);
	((CButton*)GetDlgItem(IDC_CHK_EXP_COMP))->SetCheck(m_stIsp.stExp.expcomp_mode == 0x02);
	((CComboBox*)GetDlgItem(IDC_CMB_EXP_COMPVALUE))->SetCurSel(m_stIsp.stExp.expcomp);
	((CButton*)GetDlgItem(IDC_CHK_EXP_BACKLIGHT))->SetCheck(m_stIsp.stExp.backlight == 0x02);

	((CComboBox*)GetDlgItem(IDC_CMB_EXP_ANTI))->SetCurSel(m_stIsp.stExp.antiflicker);
	((CComboBox*)GetDlgItem(IDC_CMB_EXP_GAINLIMIT))->SetCurSel(m_stIsp.stExp.gainLimit);
	ComboxSetDataInx((CComboBox*)GetDlgItem(IDC_CMB_EXP_SHUTTER), m_stIsp.stExp.stShutter.nShutter);
	ComboxSetDataInx((CComboBox*)GetDlgItem(IDC_CMB_EXP_IRIS), m_stIsp.stExp.stIris.nIris);
	((CComboBox*)GetDlgItem(IDC_CMB_EXP_BRIGHT))->SetCurSel(m_stIsp.stExp.bright);
	((CComboBox*)GetDlgItem(IDC_CMB_EXP_WDR))->SetCurSel(m_stIsp.stExp.drc);


	ComboxSetDataInx((CComboBox*)GetDlgItem(IDC_CMB_COR_WBMODE), m_stIsp.stColor.stWbMode.emWbMode);
	
	((CComboBox*)GetDlgItem(IDC_CMB_COR_SAT))->SetCurSel(m_stIsp.stColor.saturation);
	((CComboBox*)GetDlgItem(IDC_CMB_COR_HUE))->SetCurSel(m_stIsp.stColor.hue);
	((CComboBox*)GetDlgItem(IDC_CMB_COR_AWBSENS))->SetCurSel(m_stIsp.stColor.awbsens);
	//((CComboBox*)GetDlgItem(IDC_CMB_COR_TEMPLIMIT))->SetCurSel(m_stIsp.stColor.colortemp);

	((CComboBox*)GetDlgItem(IDC_CMB_IMG_BRI))->SetCurSel(m_stIsp.stImg.luminance);
	((CComboBox*)GetDlgItem(IDC_CMB_IMG_CON))->SetCurSel(m_stIsp.stImg.contrast);
	((CComboBox*)GetDlgItem(IDC_CMB_IMG_SHARPNESS))->SetCurSel(m_stIsp.stImg.sharpness);
	((CComboBox*)GetDlgItem(IDC_CMB_IMG_GAMMA))->SetCurSel(m_stIsp.stImg.gamma);
	((CComboBox*)GetDlgItem(IDC_CMB_IMG_DCI))->SetCurSel(m_stIsp.stImg.dci);
	((CComboBox*)GetDlgItem(IDC_CMB_IMG_LDC))->SetCurSel(m_stIsp.stImg.ldc);

	((CButton*)GetDlgItem(IDC_CHK_WBMODE))->SetCheck(m_stIsp.stImg.nBWMode == 0x04);
	((CButton*)GetDlgItem(IDC_CHK_FLIP_H))->SetCheck(m_stIsp.stImg.nFlipH == 0x02);
	((CButton*)GetDlgItem(IDC_CHK_FLIP_V))->SetCheck(m_stIsp.stImg.nFlipV == 0x02);

	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_MR))->SetRange(0, 255);
	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_MB))->SetRange(0, 255);
	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_MR))->SetPos(m_stIsp.stColor.rg);
	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_MB))->SetPos(m_stIsp.stColor.bg);
	SetDlgItemInt(IDC_STC_MR, m_stIsp.stColor.rg);
	SetDlgItemInt(IDC_STC_MB, m_stIsp.stColor.bg);

	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_RTONE))->SetRange(0, 20);
	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_BTONE))->SetRange(0, 20);
	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_RTONE))->SetPos(m_stIsp.stColor.rgaintuning);
	((CSliderCtrl*)GetDlgItem(IDC_SLD_COR_BTONE))->SetPos(m_stIsp.stColor.bgaintuning);
	SetDlgItemInt(IDC_STC_RTONE, m_stIsp.stColor.rgaintuning - 10);
	SetDlgItemInt(IDC_STC_BTONE, m_stIsp.stColor.bgaintuning - 10);

	((CComboBox*)GetDlgItem(IDC_CMB_IMGSTYLE))->SetCurSel(m_stIsp.stColor.nStyleInx);

	OnSelchangeCmbExpmode();
	OnSelchangeCmbCorWbmode();
	m_bGetParam = TRUE;
	return TRUE;
}

void CDlgCfgIsp::OnSelchangeCmbNr2d() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stNR.noise2D = ((CComboBox*)GetDlgItem(IDC_CMB_NR_2D))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbNr3d() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stNR.noise3D = ((CComboBox*)GetDlgItem(IDC_CMB_NR_3D))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbNrHotpixel() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stNR.dhotpixel = ((CComboBox*)GetDlgItem(IDC_CMB_NR_HOTPIXEL))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbAfmode() 
{
	if(!m_bGetParam)
		return;
	if(((CComboBox*)GetDlgItem(IDC_CMB_AFMODE))->GetCurSel() == 0)
		m_stIsp.stAF.emAFMode = MRCONFC_AFMODE_AUTO;
	else if(((CComboBox*)GetDlgItem(IDC_CMB_AFMODE))->GetCurSel() == 1)
		m_stIsp.stAF.emAFMode = MRCONFC_AFMODE_ONEPUSH;
	else
		m_stIsp.stAF.emAFMode = MRCONFC_AFMODE_MANUAL;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbAfsens() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stAF.nSensitivity = ((CComboBox*)GetDlgItem(IDC_CMB_AFSENS))->GetCurSel() + 1;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbAfzone() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stAF.emAFZone = ((CComboBox*)GetDlgItem(IDC_CMB_AFZONE))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbExpmode() 
{
	m_stIsp.stExp.stExpMode.emExpMode = ComboxGetDataInx((CComboBox*)GetDlgItem(IDC_CMB_EXPMODE));
	if(m_stIsp.stExp.stExpMode.emExpMode == MRCONFC_EXPMODE_AUTO)
	{
		GetDlgItem(IDC_CHK_EXP_COMP)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_COMP)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_COMPVALUE)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CHK_EXP_BACKLIGHT)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_GAIN)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_ANTI)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_ANTI)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_GAINLIMIT)->ShowWindow(SW_SHOW);

		GetDlgItem(IDC_STC_SHUTTER)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_SHUTTER)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_IRIS)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_IRIS)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_BRI)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_BRIGHT)->ShowWindow(SW_HIDE);
	}
	else if(m_stIsp.stExp.stExpMode.emExpMode == MRCONFC_EXPMODE_MANUAL)
	{
		GetDlgItem(IDC_CHK_EXP_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_COMPVALUE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CHK_EXP_BACKLIGHT)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_ANTI)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_GAINLIMIT)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_GAIN)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_ANTI)->ShowWindow(SW_HIDE);
		
		GetDlgItem(IDC_STC_SHUTTER)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_SHUTTER)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_IRIS)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_IRIS)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_BRI)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_BRIGHT)->ShowWindow(SW_HIDE);
	}
	else if(m_stIsp.stExp.stExpMode.emExpMode == MRCONFC_EXPMODE_SHUTTER)
	{
		GetDlgItem(IDC_CHK_EXP_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_COMPVALUE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CHK_EXP_BACKLIGHT)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_ANTI)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_GAINLIMIT)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_GAIN)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_ANTI)->ShowWindow(SW_HIDE);
		
		GetDlgItem(IDC_STC_SHUTTER)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_SHUTTER)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_IRIS)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_IRIS)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_BRI)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_BRIGHT)->ShowWindow(SW_HIDE);
	}
	else if(m_stIsp.stExp.stExpMode.emExpMode == MRCONFC_EXPMODE_IRIS)
	{
		GetDlgItem(IDC_CHK_EXP_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_COMPVALUE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CHK_EXP_BACKLIGHT)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_ANTI)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_GAINLIMIT)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_GAIN)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_ANTI)->ShowWindow(SW_SHOW);
		
		GetDlgItem(IDC_STC_SHUTTER)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_SHUTTER)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_IRIS)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_IRIS)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_BRI)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_BRIGHT)->ShowWindow(SW_HIDE);
	}
	else if(m_stIsp.stExp.stExpMode.emExpMode == MRCONFC_EXPMODE_BRIGHT)
	{
		GetDlgItem(IDC_CHK_EXP_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COMP)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_COMPVALUE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CHK_EXP_BACKLIGHT)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_ANTI)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_GAINLIMIT)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_GAIN)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_ANTI)->ShowWindow(SW_SHOW);
		
		GetDlgItem(IDC_STC_SHUTTER)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_SHUTTER)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_IRIS)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_CMB_EXP_IRIS)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_BRI)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_CMB_EXP_BRIGHT)->ShowWindow(SW_SHOW);
	}
	if(!m_bGetParam)
		return;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnChkExpComp() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.expcomp_mode = ((CButton*)GetDlgItem(IDC_CHK_EXP_COMP))->GetCheck() ? 0x02 : 0x03;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}
void CDlgCfgIsp::OnSelchangeCmbExpCompvalue() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.expcomp = ((CComboBox*)GetDlgItem(IDC_CMB_EXP_COMPVALUE))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnChkExpBacklight() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.backlight = ((CButton*)GetDlgItem(IDC_CHK_EXP_BACKLIGHT))->GetCheck() ? 0x02 : 0x03;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);	
}


void CDlgCfgIsp::OnSelchangeCmbExpAnti() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.antiflicker = ((CComboBox*)GetDlgItem(IDC_CMB_EXP_ANTI))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbExpGainlimit() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.gainLimit = ((CComboBox*)GetDlgItem(IDC_CMB_EXP_GAINLIMIT))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbExpShutter() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.stShutter.nShutter = ComboxGetDataInx((CComboBox*)GetDlgItem(IDC_CMB_EXP_SHUTTER));
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
	
}

void CDlgCfgIsp::OnSelchangeCmbExpIris() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.stIris.nIris = ComboxGetDataInx((CComboBox*)GetDlgItem(IDC_CMB_EXP_IRIS));
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbExpWdr() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.drc = ((CComboBox*)GetDlgItem(IDC_CMB_EXP_WDR))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbExpBright() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stExp.bright = ((CComboBox*)GetDlgItem(IDC_CMB_EXP_BRIGHT))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbCorWbmode() 
{
	m_stIsp.stColor.stWbMode.emWbMode = ComboxGetDataInx((CComboBox*)GetDlgItem(IDC_CMB_COR_WBMODE));
	if(m_stIsp.stColor.stWbMode.emWbMode == MRCONFC_WBMODE_AUTO)
	{
		GetDlgItem(IDC_STC_COR_RTONE)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_COR_BTONE)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_SLD_COR_RTONE)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_SLD_COR_BTONE)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_RTONE)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_BTONE)->ShowWindow(SW_SHOW);

		GetDlgItem(IDC_BTN_WBONEPUSH)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_MR)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_MB)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_MR)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_MB)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_RG)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_BG)->ShowWindow(SW_HIDE);
	}
	else if(m_stIsp.stColor.stWbMode.emWbMode == MRCONFC_WBMODE_MANUAL)
	{
		GetDlgItem(IDC_SLD_COR_MR)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_SLD_COR_MB)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_MR)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_MB)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_COR_RG)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_STC_COR_BG)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_BTN_WBONEPUSH)->ShowWindow(SW_HIDE);

		GetDlgItem(IDC_STC_COR_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_BTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_BTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_BTONE)->ShowWindow(SW_HIDE);
	}
	else if(m_stIsp.stColor.stWbMode.emWbMode == MRCONFC_WBMODE_ONEPUSH)
	{
		GetDlgItem(IDC_BTN_WBONEPUSH)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_SLD_COR_MR)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_MB)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_MR)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_MB)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_RG)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_BG)->ShowWindow(SW_HIDE);

		GetDlgItem(IDC_STC_COR_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_BTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_BTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_BTONE)->ShowWindow(SW_HIDE);
	}
	else
	{
		GetDlgItem(IDC_BTN_WBONEPUSH)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_MR)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_MB)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_MR)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_MB)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_RG)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_BG)->ShowWindow(SW_HIDE);

		GetDlgItem(IDC_STC_COR_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_COR_BTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_SLD_COR_BTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_RTONE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_STC_BTONE)->ShowWindow(SW_HIDE);
	}
	if(!m_bGetParam)
		return;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbCorSat() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stColor.saturation = ((CComboBox*)GetDlgItem(IDC_CMB_COR_SAT))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbCorHue() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stColor.hue = ((CComboBox*)GetDlgItem(IDC_CMB_COR_HUE))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbCorAwbsens() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stColor.awbsens = ((CComboBox*)GetDlgItem(IDC_CMB_COR_AWBSENS))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
{
	// TODO: Add your message handler code here and/or call default
	if(pScrollBar == GetDlgItem(IDC_SLD_COR_MR))
	{
		SetDlgItemInt(IDC_STC_MR, ((CSliderCtrl*)pScrollBar)->GetPos());
		if(nSBCode == SB_ENDSCROLL && m_bGetParam)
		{
			m_stIsp.stColor.rg = ((CSliderCtrl*)pScrollBar)->GetPos();
			librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
				MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
		}
	}
	else if(pScrollBar == GetDlgItem(IDC_SLD_COR_MB))
	{
		SetDlgItemInt(IDC_STC_MB, ((CSliderCtrl*)pScrollBar)->GetPos());
		if(nSBCode == SB_ENDSCROLL && m_bGetParam)
		{
			m_stIsp.stColor.bg = ((CSliderCtrl*)pScrollBar)->GetPos();
			librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
				MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
		}
	}
	else if(pScrollBar == GetDlgItem(IDC_SLD_COR_RTONE))
	{
		SetDlgItemInt(IDC_STC_RTONE, ((CSliderCtrl*)pScrollBar)->GetPos() - 10);
		if(nSBCode == SB_ENDSCROLL && m_bGetParam)
		{
			m_stIsp.stColor.rgaintuning = ((CSliderCtrl*)pScrollBar)->GetPos();
			librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
				MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
		}
	}
	else if(pScrollBar == GetDlgItem(IDC_SLD_COR_BTONE))
	{
		SetDlgItemInt(IDC_STC_BTONE, ((CSliderCtrl*)pScrollBar)->GetPos() - 10);
		if(nSBCode == SB_ENDSCROLL && m_bGetParam)
		{
			m_stIsp.stColor.bgaintuning = ((CSliderCtrl*)pScrollBar)->GetPos();
			librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
				MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
		}
	}
	CDialog::OnHScroll(nSBCode, nPos, pScrollBar);
}

void CDlgCfgIsp::OnBtnWbonepush() 
{
	int iRet;
	if(!m_bGetParam)
		return;
	iRet = librmconfc_syscontrol(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_CTRLCMD_TRIGGLE_ONEPUSHWB, 0, NULL);
	if(iRet)
	{
		AfxMessageBox("校正失败!");
	}
}

void CDlgCfgIsp::OnSelchangeCmbImgBri() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.luminance = ((CComboBox*)GetDlgItem(IDC_CMB_IMG_BRI))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbImgCon() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.contrast = ((CComboBox*)GetDlgItem(IDC_CMB_IMG_CON))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbImgSharpness() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.sharpness = ((CComboBox*)GetDlgItem(IDC_CMB_IMG_SHARPNESS))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnChkWbmode() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.nBWMode = ((CButton*)GetDlgItem(IDC_CHK_WBMODE))->GetCheck() ? 0x04 : 0x00;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnChkFlipH() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.nFlipH = ((CButton*)GetDlgItem(IDC_CHK_FLIP_H))->GetCheck() ? 0x02 : 0x03;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnChkFlipV() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.nFlipV = ((CButton*)GetDlgItem(IDC_CHK_FLIP_V))->GetCheck() ? 0x02 : 0x03;
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbImgGamma() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.gamma = ((CComboBox*)GetDlgItem(IDC_CMB_IMG_GAMMA))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbImgDci() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.dci = ((CComboBox*)GetDlgItem(IDC_CMB_IMG_DCI))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnBtnDefault() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stAF.emAFMode = MRCONFC_AFMODE_AUTO;
	m_stIsp.stAF.emAFZone	= 1;
	m_stIsp.stAF.nSensitivity = 3;

	m_stIsp.stExp.stExpMode.emExpMode = MRCONFC_EXPMODE_AUTO;
	m_stIsp.stExp.bright = 7;
	m_stIsp.stExp.expcomp_mode = 0x03;
	m_stIsp.stExp.expcomp = 7;
	m_stIsp.stExp.backlight = 0x03;
	m_stIsp.stExp.antiflicker = 1;
	m_stIsp.stExp.gainLimit = 4;
	m_stIsp.stExp.drc = 4;
	m_stIsp.stExp.stIris.nIris = 12;
	m_stIsp.stExp.stShutter.nShutter = 5;

	m_stIsp.stColor.stWbMode.emWbMode = MRCONFC_WBMODE_AUTO;
	m_stIsp.stColor.rg = 255;
	m_stIsp.stColor.bg = 199;
	m_stIsp.stColor.saturation = 4;
	m_stIsp.stColor.hue = 7;
	m_stIsp.stColor.awbsens = 0;
	m_stIsp.stColor.colortemp = 0;
	m_stIsp.stColor.nStyleInx = 0;

	m_stIsp.stImg.luminance = 7;
	m_stIsp.stImg.contrast = 7;
	m_stIsp.stImg.sharpness = 6;
	m_stIsp.stImg.nBWMode = 0;
	m_stIsp.stImg.gamma = 0;
	m_stIsp.stImg.nFlipH = 0x03;
	m_stIsp.stImg.nFlipV = 0x03;
	m_stIsp.stImg.nEZoom = 0x03;
	m_stIsp.stImg.dci = 0;

	m_stIsp.stNR.noise2D = 3;
	m_stIsp.stNR.noise3D = 3;
	m_stIsp.stNR.dhotpixel = 0;

	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbImgstyle() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stColor.nStyleInx = ((CComboBox*)GetDlgItem(IDC_CMB_IMGSTYLE))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}

void CDlgCfgIsp::OnSelchangeCmbImgLdc() 
{
	if(!m_bGetParam)
		return;
	m_stIsp.stImg.ldc = ((CComboBox*)GetDlgItem(IDC_CMB_IMG_LDC))->GetCurSel();
	librmconfc_env_set(g_envDev.szIP, g_envDev.wPort, g_envDev.szUserName, g_envDev.szPassword, NULL,
		MRCONFC_ENVCMD_VIDEOPARAM, sizeof(MRCONFC_VIDEOPARAM_CFG), &m_stIsp);
}
