huago-corrcet_tools/HuaGoCorrect/A4.cpp

867 lines
39 KiB
C++
Raw Normal View History

2020-08-31 08:08:50 +00:00
// A4.cpp : ʵ<><CAB5><EFBFBD>ļ<EFBFBD>
//
#include "stdafx.h"
#include "HuaGoCorrect.h"
#include "A4.h"
#include "afxdialogex.h"
// CA4 <20>Ի<EFBFBD><D4BB><EFBFBD>
IMPLEMENT_DYNAMIC(CA4, CDialog)
CA4::CA4(CWnd* pParent /*=NULL*/)
: CDialog(CA4::IDD, pParent)
, m_tbxAGain(0)
, m_tbxBGain(0)
, m_tbxAOffset(0)
, m_tbxBOffset(0)
{
m_iLastIndex = 0;
m_iSelIndex = 0;
m_tbxFRExposure = 0;
m_tbxFGExposure = 0;
m_tbxFBExposure = 0;
m_tbxF1Gain = 0;
m_tbxF2Gain = 0;
m_tbxF3Gain = 0;
m_tbxF4Gain = 0;
m_tbxF5Gain = 0;
m_tbxF6Gain = 0;
m_tbxF1Offset = 0;
m_tbxF2Offset = 0;
m_tbxF3Offset = 0;
m_tbxF4Offset = 0;
m_tbxF5Offset = 0;
m_tbxF6Offset = 0;
m_tbxBRExposure = 0;
m_tbxBGExposure = 0;
m_tbxBBExposure = 0;
m_tbxB1Gain = 0;
m_tbxB2Gain = 0;
m_tbxB3Gain = 0;
m_tbxB4Gain = 0;
m_tbxB5Gain = 0;
m_tbxB6Gain = 0;
m_tbxB1Offset = 0;
m_tbxB2Offset = 0;
m_tbxB3Offset = 0;
m_tbxB4Offset = 0;
m_tbxB5Offset = 0;
m_tbxB6Offset = 0;
}
CA4::~CA4()
{
}
void CA4::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_tbxFRExposure, m_tbxFRExposure);
DDX_Text(pDX, IDC_tbxFGExposure, m_tbxFGExposure);
DDX_Text(pDX, IDC_tbxFBExposure, m_tbxFBExposure);
DDX_Text(pDX, IDC_tbxF1Gain, m_tbxF1Gain);
DDX_Text(pDX, IDC_tbxF2Gain, m_tbxF2Gain);
DDX_Text(pDX, IDC_tbxF3Gain, m_tbxF3Gain);
DDX_Text(pDX, IDC_tbxF4Gain, m_tbxF4Gain);
DDX_Text(pDX, IDC_tbxF5Gain, m_tbxF5Gain);
DDX_Text(pDX, IDC_tbxF6Gain, m_tbxF6Gain);
DDX_Text(pDX, IDC_tbxF1Offset, m_tbxF1Offset);
DDX_Text(pDX, IDC_tbxF2Offset, m_tbxF2Offset);
DDX_Text(pDX, IDC_tbxF3Offset, m_tbxF3Offset);
DDX_Text(pDX, IDC_tbxF4Offset, m_tbxF4Offset);
DDX_Text(pDX, IDC_tbxF5Offset, m_tbxF5Offset);
DDX_Text(pDX, IDC_tbxF6Offset, m_tbxF6Offset);
DDX_Text(pDX, IDC_tbxBRExposure, m_tbxBRExposure);
DDX_Text(pDX, IDC_tbxBGExposure, m_tbxBGExposure);
DDX_Text(pDX, IDC_tbxBBExposure, m_tbxBBExposure);
DDX_Text(pDX, IDC_tbxB1Gain, m_tbxB1Gain);
DDX_Text(pDX, IDC_tbxB2Gain, m_tbxB2Gain);
DDX_Text(pDX, IDC_tbxB3Gain, m_tbxB3Gain);
DDX_Text(pDX, IDC_tbxB4Gain, m_tbxB4Gain);
DDX_Text(pDX, IDC_tbxB5Gain, m_tbxB5Gain);
DDX_Text(pDX, IDC_tbxB6Gain, m_tbxB6Gain);
DDX_Text(pDX, IDC_tbxB1Offset, m_tbxB1Offset);
DDX_Text(pDX, IDC_tbxB2Offset, m_tbxB2Offset);
DDX_Text(pDX, IDC_tbxB3Offset, m_tbxB3Offset);
DDX_Text(pDX, IDC_tbxB4Offset, m_tbxB4Offset);
DDX_Text(pDX, IDC_tbxB5Offset, m_tbxB5Offset);
DDX_Text(pDX, IDC_tbxB6Offset, m_tbxB6Offset);
DDX_Control(pDX, IDC_CMB_A4FlatModel, m_A4FlatModel);
DDX_Text(pDX, IDC_EDIT_AGAIN, m_tbxAGain);
DDV_MinMaxUInt(pDX, m_tbxAGain, 0, 1000);
DDX_Text(pDX, IDC_EDIT_BGAIN, m_tbxBGain);
DDV_MinMaxUInt(pDX, m_tbxBGain, 0, 1000);
DDX_Text(pDX, IDC_EDIT_AOFFSET, m_tbxAOffset);
DDV_MinMaxUInt(pDX, m_tbxAOffset, 0, 1000);
DDX_Text(pDX, IDC_EDIT_BOFFSET, m_tbxBOffset);
DDV_MinMaxUInt(pDX, m_tbxBOffset, 0, 1000);
}
BEGIN_MESSAGE_MAP(CA4, CDialog)
ON_CBN_SELCHANGE(IDC_CMB_A4FlatModel, &CA4::OnCbnSelChangeA4FlatModel)
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_AGAIN, &CA4::OnDeltaposSpinAgain)
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_AOFFSET, &CA4::OnDeltaposSpinAoffset)
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_BGAIN, &CA4::OnDeltaposSpinBgain)
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_BOFFSET, &CA4::OnDeltaposSpinBoffset)
END_MESSAGE_MAP()
// CA4 <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL CA4::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC>
LoadCfg();
m_A4FlatModel.InsertString(0, _T("<EFBFBD><EFBFBD>ɫУ<EFBFBD><EFBFBD>ģʽ"));
m_A4FlatModel.InsertString(1, _T("<EFBFBD><EFBFBD>ɫ"));
m_A4FlatModel.InsertString(2, _T("<EFBFBD>Ҷ<EFBFBD>У<EFBFBD><EFBFBD>ģʽ"));
m_A4FlatModel.InsertString(3, _T("<EFBFBD>Ҷ<EFBFBD>"));
m_A4FlatModel.SetCurSel(0);
//GetDlgItem(IDC_CMB_A4FlatModel)->EnableWindow(FALSE);
default0param();
return TRUE; // return TRUE unless you set the focus to a control
// <20>쳣: OCX <20><><EFBFBD><EFBFBD>ҳӦ<D2B3><D3A6><EFBFBD><EFBFBD> FALSE
}
void CA4::OnCbnSelChangeA4FlatModel()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//int nSel;
// <20><>ȡ<EFBFBD><C8A1><EFBFBD>Ͽ<EFBFBD><CFBF>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_iSelIndex = m_A4FlatModel.GetCurSel();
if(m_iLastIndex != m_iSelIndex)
{
SaveNewParam(m_iLastIndex);
m_iLastIndex = m_iSelIndex;
}
switch (m_iSelIndex)
{
case 0:
default0param();
break;
case 1:
default1param();
break;
case 2:
default2param();
break;
case 3:
default3param();
break;
default:
break;
}
}
void CA4::default0param()
{
UpdateData(TRUE);
m_tbxFRExposure = m_sFlatCorrection.ColorCorrection[0];
m_tbxFGExposure = m_sFlatCorrection.ColorCorrection[1];
m_tbxFBExposure = m_sFlatCorrection.ColorCorrection[2];
m_tbxF1Gain = m_sFlatCorrection.ColorCorrection[3];
m_tbxF2Gain = m_sFlatCorrection.ColorCorrection[4];
m_tbxF3Gain = m_sFlatCorrection.ColorCorrection[5];
m_tbxF4Gain = m_sFlatCorrection.ColorCorrection[6];
m_tbxF5Gain = m_sFlatCorrection.ColorCorrection[7];
m_tbxF6Gain = m_sFlatCorrection.ColorCorrection[8];
m_tbxF1Offset = m_sFlatCorrection.ColorCorrection[9];
m_tbxF2Offset = m_sFlatCorrection.ColorCorrection[10];
m_tbxF3Offset = m_sFlatCorrection.ColorCorrection[11];
m_tbxF4Offset = m_sFlatCorrection.ColorCorrection[12];
m_tbxF5Offset = m_sFlatCorrection.ColorCorrection[13];
m_tbxF6Offset = m_sFlatCorrection.ColorCorrection[14];
m_tbxBRExposure = m_sFlatCorrection.ColorCorrection[15];
m_tbxBGExposure = m_sFlatCorrection.ColorCorrection[16];
m_tbxBBExposure = m_sFlatCorrection.ColorCorrection[17];
m_tbxB1Gain = m_sFlatCorrection.ColorCorrection[18];
m_tbxB2Gain = m_sFlatCorrection.ColorCorrection[19];
m_tbxB3Gain = m_sFlatCorrection.ColorCorrection[20];
m_tbxB4Gain = m_sFlatCorrection.ColorCorrection[21];
m_tbxB5Gain = m_sFlatCorrection.ColorCorrection[22];
m_tbxB6Gain = m_sFlatCorrection.ColorCorrection[23];
m_tbxB1Offset = m_sFlatCorrection.ColorCorrection[24];
m_tbxB2Offset = m_sFlatCorrection.ColorCorrection[25];
m_tbxB3Offset = m_sFlatCorrection.ColorCorrection[26];
m_tbxB4Offset = m_sFlatCorrection.ColorCorrection[27];
m_tbxB5Offset = m_sFlatCorrection.ColorCorrection[28];
m_tbxB6Offset = m_sFlatCorrection.ColorCorrection[29];
UpdateData(FALSE);
}
void CA4::default1param()
{
UpdateData(TRUE);
m_tbxFRExposure = m_sFlatCorrection.ColorFlat[0];
m_tbxFGExposure = m_sFlatCorrection.ColorFlat[1];
m_tbxFBExposure = m_sFlatCorrection.ColorFlat[2];
m_tbxF1Gain = m_sFlatCorrection.ColorFlat[3];
m_tbxF2Gain = m_sFlatCorrection.ColorFlat[4];
m_tbxF3Gain = m_sFlatCorrection.ColorFlat[5];
m_tbxF4Gain = m_sFlatCorrection.ColorFlat[6];
m_tbxF5Gain = m_sFlatCorrection.ColorFlat[7];
m_tbxF6Gain = m_sFlatCorrection.ColorFlat[8];
m_tbxF1Offset = m_sFlatCorrection.ColorFlat[9];
m_tbxF2Offset = m_sFlatCorrection.ColorFlat[10];
m_tbxF3Offset = m_sFlatCorrection.ColorFlat[11];
m_tbxF4Offset = m_sFlatCorrection.ColorFlat[12];
m_tbxF5Offset = m_sFlatCorrection.ColorFlat[13];
m_tbxF6Offset = m_sFlatCorrection.ColorFlat[14];
m_tbxBRExposure = m_sFlatCorrection.ColorFlat[15];
m_tbxBGExposure = m_sFlatCorrection.ColorFlat[16];
m_tbxBBExposure = m_sFlatCorrection.ColorFlat[17];
m_tbxB1Gain = m_sFlatCorrection.ColorFlat[18];
m_tbxB2Gain = m_sFlatCorrection.ColorFlat[19];
m_tbxB3Gain = m_sFlatCorrection.ColorFlat[20];
m_tbxB4Gain = m_sFlatCorrection.ColorFlat[21];
m_tbxB5Gain = m_sFlatCorrection.ColorFlat[22];
m_tbxB6Gain = m_sFlatCorrection.ColorFlat[23];
m_tbxB1Offset = m_sFlatCorrection.ColorFlat[24];
m_tbxB2Offset = m_sFlatCorrection.ColorFlat[25];
m_tbxB3Offset = m_sFlatCorrection.ColorFlat[26];
m_tbxB4Offset = m_sFlatCorrection.ColorFlat[27];
m_tbxB5Offset = m_sFlatCorrection.ColorFlat[28];
m_tbxB6Offset = m_sFlatCorrection.ColorFlat[29];
UpdateData(FALSE);
}
void CA4::default2param()
{
UpdateData(TRUE);
m_tbxFRExposure = m_sFlatCorrection.GrayCorrection[0];
m_tbxFGExposure = m_sFlatCorrection.GrayCorrection[1];
m_tbxFBExposure = m_sFlatCorrection.GrayCorrection[2];
m_tbxF1Gain = m_sFlatCorrection.GrayCorrection[3];
m_tbxF2Gain = m_sFlatCorrection.GrayCorrection[4];
m_tbxF3Gain = m_sFlatCorrection.GrayCorrection[5];
m_tbxF4Gain = m_sFlatCorrection.GrayCorrection[6];
m_tbxF5Gain = m_sFlatCorrection.GrayCorrection[7];
m_tbxF6Gain = m_sFlatCorrection.GrayCorrection[8];
m_tbxF1Offset = m_sFlatCorrection.GrayCorrection[9];
m_tbxF2Offset = m_sFlatCorrection.GrayCorrection[10];
m_tbxF3Offset = m_sFlatCorrection.GrayCorrection[11];
m_tbxF4Offset = m_sFlatCorrection.GrayCorrection[12];
m_tbxF5Offset = m_sFlatCorrection.GrayCorrection[13];
m_tbxF6Offset = m_sFlatCorrection.GrayCorrection[14];
m_tbxBRExposure = m_sFlatCorrection.GrayCorrection[15];
m_tbxBGExposure = m_sFlatCorrection.GrayCorrection[16];
m_tbxBBExposure = m_sFlatCorrection.GrayCorrection[17];
m_tbxB1Gain = m_sFlatCorrection.GrayCorrection[18];
m_tbxB2Gain = m_sFlatCorrection.GrayCorrection[19];
m_tbxB3Gain = m_sFlatCorrection.GrayCorrection[20];
m_tbxB4Gain = m_sFlatCorrection.GrayCorrection[21];
m_tbxB5Gain = m_sFlatCorrection.GrayCorrection[22];
m_tbxB6Gain = m_sFlatCorrection.GrayCorrection[23];
m_tbxB1Offset = m_sFlatCorrection.GrayCorrection[24];
m_tbxB2Offset = m_sFlatCorrection.GrayCorrection[25];
m_tbxB3Offset = m_sFlatCorrection.GrayCorrection[26];
m_tbxB4Offset = m_sFlatCorrection.GrayCorrection[27];
m_tbxB5Offset = m_sFlatCorrection.GrayCorrection[28];
m_tbxB6Offset = m_sFlatCorrection.GrayCorrection[29];
UpdateData(FALSE);
}
void CA4::default3param()
{
UpdateData(TRUE);
m_tbxFRExposure = m_sFlatCorrection.GrayFlat[0];
m_tbxFGExposure = m_sFlatCorrection.GrayFlat[1];
m_tbxFBExposure = m_sFlatCorrection.GrayFlat[2];
m_tbxF1Gain = m_sFlatCorrection.GrayFlat[3];
m_tbxF2Gain = m_sFlatCorrection.GrayFlat[4];
m_tbxF3Gain = m_sFlatCorrection.GrayFlat[5];
m_tbxF4Gain = m_sFlatCorrection.GrayFlat[6];
m_tbxF5Gain = m_sFlatCorrection.GrayFlat[7];
m_tbxF6Gain = m_sFlatCorrection.GrayFlat[8];
m_tbxF1Offset = m_sFlatCorrection.GrayFlat[9];
m_tbxF2Offset = m_sFlatCorrection.GrayFlat[10];
m_tbxF3Offset = m_sFlatCorrection.GrayFlat[11];
m_tbxF4Offset = m_sFlatCorrection.GrayFlat[12];
m_tbxF5Offset = m_sFlatCorrection.GrayFlat[13];
m_tbxF6Offset = m_sFlatCorrection.GrayFlat[14];
m_tbxBRExposure = m_sFlatCorrection.GrayFlat[15];
m_tbxBGExposure = m_sFlatCorrection.GrayFlat[16];
m_tbxBBExposure = m_sFlatCorrection.GrayFlat[17];
m_tbxB1Gain = m_sFlatCorrection.GrayFlat[18];
m_tbxB2Gain = m_sFlatCorrection.GrayFlat[19];
m_tbxB3Gain = m_sFlatCorrection.GrayFlat[20];
m_tbxB4Gain = m_sFlatCorrection.GrayFlat[21];
m_tbxB5Gain = m_sFlatCorrection.GrayFlat[22];
m_tbxB6Gain = m_sFlatCorrection.GrayFlat[23];
m_tbxB1Offset = m_sFlatCorrection.GrayFlat[24];
m_tbxB2Offset = m_sFlatCorrection.GrayFlat[25];
m_tbxB3Offset = m_sFlatCorrection.GrayFlat[26];
m_tbxB4Offset = m_sFlatCorrection.GrayFlat[27];
m_tbxB5Offset = m_sFlatCorrection.GrayFlat[28];
m_tbxB6Offset = m_sFlatCorrection.GrayFlat[29];
UpdateData(FALSE);
}
void CA4::updateA4Config(int *pValues)
{
UpdateData(TRUE);
m_tbxFRExposure = pValues[0];
m_tbxFGExposure = pValues[1];
m_tbxFBExposure = pValues[2];
m_tbxF1Gain = pValues[6];
m_tbxF2Gain = pValues[7];
m_tbxF3Gain = pValues[8];
m_tbxF4Gain = pValues[9];
m_tbxF5Gain = pValues[10];
m_tbxF6Gain = pValues[11];
m_tbxF1Offset = pValues[18];
m_tbxF2Offset = pValues[19];
m_tbxF3Offset = pValues[20];
m_tbxF4Offset = pValues[21];
m_tbxF5Offset = pValues[22];
m_tbxF6Offset = pValues[23];
m_tbxBRExposure = pValues[3];
m_tbxBGExposure = pValues[4];
m_tbxBBExposure = pValues[5];
m_tbxB1Gain = pValues[12];
m_tbxB2Gain = pValues[13];
m_tbxB3Gain = pValues[14];
m_tbxB4Gain = pValues[15];
m_tbxB5Gain = pValues[16];
m_tbxB6Gain = pValues[17];
m_tbxB1Offset = pValues[24];
m_tbxB2Offset = pValues[25];
m_tbxB3Offset = pValues[26];
m_tbxB4Offset = pValues[27];
m_tbxB5Offset = pValues[28];
m_tbxB6Offset = pValues[29];
UpdateData(FALSE);
}
void CA4::LoadCfg()
{
UINT iColorCorrectionParam[30] = {0};
UINT iColorFlatParam[30] = {0};
UINT iGrayCorrectionParam[30] = {0};
UINT iGrayFlatParam[30] = {0};
//GetDlgItem(IDC_CMB_A4FlatModel)->EnableWindow(TRUE);
iColorCorrectionParam[0] = ::GetPrivateProfileInt("ColorCorrection", "FBExposure", 340, INI_FILE_NAME);
iColorCorrectionParam[1] = ::GetPrivateProfileInt("ColorCorrection", "FGExposure", 620, INI_FILE_NAME);
iColorCorrectionParam[2] = ::GetPrivateProfileInt("ColorCorrection", "FRExposure", 324, INI_FILE_NAME);
iColorCorrectionParam[3] = ::GetPrivateProfileInt("ColorCorrection", "F3Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[4] = ::GetPrivateProfileInt("ColorCorrection", "F2Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[5] = ::GetPrivateProfileInt("ColorCorrection", "F1Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[6] = ::GetPrivateProfileInt("ColorCorrection", "F6Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[7] = ::GetPrivateProfileInt("ColorCorrection", "F5Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[8] = ::GetPrivateProfileInt("ColorCorrection", "F4Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[9] = ::GetPrivateProfileInt("ColorCorrection", "F3Offset", 117, INI_FILE_NAME);
iColorCorrectionParam[10] = ::GetPrivateProfileInt("ColorCorrection", "F2Offset", 117, INI_FILE_NAME);
iColorCorrectionParam[11] = ::GetPrivateProfileInt("ColorCorrection", "F1Offset", 117, INI_FILE_NAME);
iColorCorrectionParam[12] = ::GetPrivateProfileInt("ColorCorrection", "F6Offset", 117, INI_FILE_NAME);
iColorCorrectionParam[13] = ::GetPrivateProfileInt("ColorCorrection", "F5Offset", 117, INI_FILE_NAME);
iColorCorrectionParam[14] = ::GetPrivateProfileInt("ColorCorrection", "F4Offset", 117, INI_FILE_NAME);
iColorCorrectionParam[15] = ::GetPrivateProfileInt("ColorCorrection", "BBExposure", 233, INI_FILE_NAME);
iColorCorrectionParam[16] = ::GetPrivateProfileInt("ColorCorrection", "BGExposure", 418, INI_FILE_NAME);
iColorCorrectionParam[17] = ::GetPrivateProfileInt("ColorCorrection", "BRExposure", 220, INI_FILE_NAME);
iColorCorrectionParam[18] = ::GetPrivateProfileInt("ColorCorrection", "B3Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[19] = ::GetPrivateProfileInt("ColorCorrection", "B2Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[20] = ::GetPrivateProfileInt("ColorCorrection", "B1Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[21] = ::GetPrivateProfileInt("ColorCorrection", "B6Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[22] = ::GetPrivateProfileInt("ColorCorrection", "B5Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[23] = ::GetPrivateProfileInt("ColorCorrection", "B4Gain", 24, INI_FILE_NAME);
iColorCorrectionParam[24] = ::GetPrivateProfileInt("ColorCorrection", "B3Offset", 64, INI_FILE_NAME);
iColorCorrectionParam[25] = ::GetPrivateProfileInt("ColorCorrection", "B2Offset", 64, INI_FILE_NAME);
iColorCorrectionParam[26] = ::GetPrivateProfileInt("ColorCorrection", "B1Offset", 64, INI_FILE_NAME);
iColorCorrectionParam[27] = ::GetPrivateProfileInt("ColorCorrection", "B6Offset", 64, INI_FILE_NAME);
iColorCorrectionParam[28] = ::GetPrivateProfileInt("ColorCorrection", "B5Offset", 64, INI_FILE_NAME);
iColorCorrectionParam[29] = ::GetPrivateProfileInt("ColorCorrection", "B4Offset", 64, INI_FILE_NAME);
memcpy(m_sFlatCorrection.ColorCorrection,iColorCorrectionParam,sizeof(iColorCorrectionParam));
iColorFlatParam[0] = ::GetPrivateProfileInt("ColorFlat", "FBExposure", 340, INI_FILE_NAME);
iColorFlatParam[1] = ::GetPrivateProfileInt("ColorFlat", "FGExposure", 620, INI_FILE_NAME);
iColorFlatParam[2] = ::GetPrivateProfileInt("ColorFlat", "FRExposure", 324, INI_FILE_NAME);
iColorFlatParam[3] = ::GetPrivateProfileInt("ColorFlat", "F3Gain", 24, INI_FILE_NAME);
iColorFlatParam[4] = ::GetPrivateProfileInt("ColorFlat", "F2Gain", 24, INI_FILE_NAME);
iColorFlatParam[5] = ::GetPrivateProfileInt("ColorFlat", "F1Gain", 24, INI_FILE_NAME);
iColorFlatParam[6] = ::GetPrivateProfileInt("ColorFlat", "F6Gain", 24, INI_FILE_NAME);
iColorFlatParam[7] = ::GetPrivateProfileInt("ColorFlat", "F5Gain", 24, INI_FILE_NAME);
iColorFlatParam[8] = ::GetPrivateProfileInt("ColorFlat", "F4Gain", 24, INI_FILE_NAME);
iColorFlatParam[9] = ::GetPrivateProfileInt("ColorFlat", "F3Offset", 117, INI_FILE_NAME);
iColorFlatParam[10] = ::GetPrivateProfileInt("ColorFlat", "F2Offset", 117, INI_FILE_NAME);
iColorFlatParam[11] = ::GetPrivateProfileInt("ColorFlat", "F1Offset", 117, INI_FILE_NAME);
iColorFlatParam[12] = ::GetPrivateProfileInt("ColorFlat", "F6Offset", 117, INI_FILE_NAME);
iColorFlatParam[13] = ::GetPrivateProfileInt("ColorFlat", "F5Offset", 117, INI_FILE_NAME);
iColorFlatParam[14] = ::GetPrivateProfileInt("ColorFlat", "F4Offset", 117, INI_FILE_NAME);
iColorFlatParam[15] = ::GetPrivateProfileInt("ColorFlat", "BBExposure", 233, INI_FILE_NAME);
iColorFlatParam[16] = ::GetPrivateProfileInt("ColorFlat", "BGExposure", 418, INI_FILE_NAME);
iColorFlatParam[17] = ::GetPrivateProfileInt("ColorFlat", "BRExposure", 220, INI_FILE_NAME);
iColorFlatParam[18] = ::GetPrivateProfileInt("ColorFlat", "B3Gain", 24, INI_FILE_NAME);
iColorFlatParam[19] = ::GetPrivateProfileInt("ColorFlat", "B2Gain", 24, INI_FILE_NAME);
iColorFlatParam[20] = ::GetPrivateProfileInt("ColorFlat", "B1Gain", 24, INI_FILE_NAME);
iColorFlatParam[21] = ::GetPrivateProfileInt("ColorFlat", "B6Gain", 24, INI_FILE_NAME);
iColorFlatParam[22] = ::GetPrivateProfileInt("ColorFlat", "B5Gain", 24, INI_FILE_NAME);
iColorFlatParam[23] = ::GetPrivateProfileInt("ColorFlat", "B4Gain", 24, INI_FILE_NAME);
iColorFlatParam[24] = ::GetPrivateProfileInt("ColorFlat", "B3Offset", 64, INI_FILE_NAME);
iColorFlatParam[25] = ::GetPrivateProfileInt("ColorFlat", "B2Offset", 64, INI_FILE_NAME);
iColorFlatParam[26] = ::GetPrivateProfileInt("ColorFlat", "B1Offset", 64, INI_FILE_NAME);
iColorFlatParam[27] = ::GetPrivateProfileInt("ColorFlat", "B6Offset", 64, INI_FILE_NAME);
iColorFlatParam[28] = ::GetPrivateProfileInt("ColorFlat", "B5Offset", 64, INI_FILE_NAME);
iColorFlatParam[29] = ::GetPrivateProfileInt("ColorFlat", "B4Offset", 64, INI_FILE_NAME);
memcpy(m_sFlatCorrection.ColorFlat,iColorFlatParam,sizeof(iColorFlatParam));
iGrayCorrectionParam[0] = ::GetPrivateProfileInt("GrayCorrection", "FBExposure", 340, INI_FILE_NAME);
iGrayCorrectionParam[1] = ::GetPrivateProfileInt("GrayCorrection", "FGExposure", 620, INI_FILE_NAME);
iGrayCorrectionParam[2] = ::GetPrivateProfileInt("GrayCorrection", "FRExposure", 324, INI_FILE_NAME);
iGrayCorrectionParam[3] = ::GetPrivateProfileInt("GrayCorrection", "F3Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[4] = ::GetPrivateProfileInt("GrayCorrection", "F2Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[5] = ::GetPrivateProfileInt("GrayCorrection", "F1Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[6] = ::GetPrivateProfileInt("GrayCorrection", "F6Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[7] = ::GetPrivateProfileInt("GrayCorrection", "F5Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[8] = ::GetPrivateProfileInt("GrayCorrection", "F4Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[9] = ::GetPrivateProfileInt("GrayCorrection", "F3Offset", 117, INI_FILE_NAME);
iGrayCorrectionParam[10] = ::GetPrivateProfileInt("GrayCorrection", "F2Offset", 117, INI_FILE_NAME);
iGrayCorrectionParam[11] = ::GetPrivateProfileInt("GrayCorrection", "F1Offset", 117, INI_FILE_NAME);
iGrayCorrectionParam[12] = ::GetPrivateProfileInt("GrayCorrection", "F6Offset", 117, INI_FILE_NAME);
iGrayCorrectionParam[13] = ::GetPrivateProfileInt("GrayCorrection", "F5Offset", 117, INI_FILE_NAME);
iGrayCorrectionParam[14] = ::GetPrivateProfileInt("GrayCorrection", "F4Offset", 117, INI_FILE_NAME);
iGrayCorrectionParam[15] = ::GetPrivateProfileInt("GrayCorrection", "BBExposure", 233, INI_FILE_NAME);
iGrayCorrectionParam[16] = ::GetPrivateProfileInt("GrayCorrection", "BGExposure", 418, INI_FILE_NAME);
iGrayCorrectionParam[17] = ::GetPrivateProfileInt("GrayCorrection", "BRExposure", 220, INI_FILE_NAME);
iGrayCorrectionParam[18] = ::GetPrivateProfileInt("GrayCorrection", "B3Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[19] = ::GetPrivateProfileInt("GrayCorrection", "B2Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[20] = ::GetPrivateProfileInt("GrayCorrection", "B1Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[21] = ::GetPrivateProfileInt("GrayCorrection", "B6Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[22] = ::GetPrivateProfileInt("GrayCorrection", "B5Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[23] = ::GetPrivateProfileInt("GrayCorrection", "B4Gain", 24, INI_FILE_NAME);
iGrayCorrectionParam[24] = ::GetPrivateProfileInt("GrayCorrection", "B3Offset", 64, INI_FILE_NAME);
iGrayCorrectionParam[25] = ::GetPrivateProfileInt("GrayCorrection", "B2Offset", 64, INI_FILE_NAME);
iGrayCorrectionParam[26] = ::GetPrivateProfileInt("GrayCorrection", "B1Offset", 64, INI_FILE_NAME);
iGrayCorrectionParam[27] = ::GetPrivateProfileInt("GrayCorrection", "B6Offset", 64, INI_FILE_NAME);
iGrayCorrectionParam[28] = ::GetPrivateProfileInt("GrayCorrection", "B5Offset", 64, INI_FILE_NAME);
iGrayCorrectionParam[29] = ::GetPrivateProfileInt("GrayCorrection", "B4Offset", 64, INI_FILE_NAME);
memcpy(m_sFlatCorrection.GrayCorrection,iGrayCorrectionParam,sizeof(iGrayCorrectionParam));
iGrayFlatParam[0] = ::GetPrivateProfileInt("GrayFlat", "FBExposure", 340, INI_FILE_NAME);
iGrayFlatParam[1] = ::GetPrivateProfileInt("GrayFlat", "FGExposure", 620, INI_FILE_NAME);
iGrayFlatParam[2] = ::GetPrivateProfileInt("GrayFlat", "FRExposure", 324, INI_FILE_NAME);
iGrayFlatParam[3] = ::GetPrivateProfileInt("GrayFlat", "F3Gain", 24, INI_FILE_NAME);
iGrayFlatParam[4] = ::GetPrivateProfileInt("GrayFlat", "F2Gain", 24, INI_FILE_NAME);
iGrayFlatParam[5] = ::GetPrivateProfileInt("GrayFlat", "F1Gain", 24, INI_FILE_NAME);
iGrayFlatParam[6] = ::GetPrivateProfileInt("GrayFlat", "F6Gain", 24, INI_FILE_NAME);
iGrayFlatParam[7] = ::GetPrivateProfileInt("GrayFlat", "F5Gain", 24, INI_FILE_NAME);
iGrayFlatParam[8] = ::GetPrivateProfileInt("GrayFlat", "F4Gain", 24, INI_FILE_NAME);
iGrayFlatParam[9] = ::GetPrivateProfileInt("GrayFlat", "F3Offset", 117, INI_FILE_NAME);
iGrayFlatParam[10] = ::GetPrivateProfileInt("GrayFlat", "F2Offset", 117, INI_FILE_NAME);
iGrayFlatParam[11] = ::GetPrivateProfileInt("GrayFlat", "F1Offset", 117, INI_FILE_NAME);
iGrayFlatParam[12] = ::GetPrivateProfileInt("GrayFlat", "F6Offset", 117, INI_FILE_NAME);
iGrayFlatParam[13] = ::GetPrivateProfileInt("GrayFlat", "F5Offset", 117, INI_FILE_NAME);
iGrayFlatParam[14] = ::GetPrivateProfileInt("GrayFlat", "F4Offset", 117, INI_FILE_NAME);
iGrayFlatParam[15] = ::GetPrivateProfileInt("GrayFlat", "BBExposure", 233, INI_FILE_NAME);
iGrayFlatParam[16] = ::GetPrivateProfileInt("GrayFlat", "BGExposure", 418, INI_FILE_NAME);
iGrayFlatParam[17] = ::GetPrivateProfileInt("GrayFlat", "BRExposure", 220, INI_FILE_NAME);
iGrayFlatParam[18] = ::GetPrivateProfileInt("GrayFlat", "B3Gain", 24, INI_FILE_NAME);
iGrayFlatParam[19] = ::GetPrivateProfileInt("GrayFlat", "B2Gain", 24, INI_FILE_NAME);
iGrayFlatParam[20] = ::GetPrivateProfileInt("GrayFlat", "B1Gain", 24, INI_FILE_NAME);
iGrayFlatParam[21] = ::GetPrivateProfileInt("GrayFlat", "B6Gain", 24, INI_FILE_NAME);
iGrayFlatParam[22] = ::GetPrivateProfileInt("GrayFlat", "B5Gain", 24, INI_FILE_NAME);
iGrayFlatParam[23] = ::GetPrivateProfileInt("GrayFlat", "B4Gain", 24, INI_FILE_NAME);
iGrayFlatParam[24] = ::GetPrivateProfileInt("GrayFlat", "B3Offset", 64, INI_FILE_NAME);
iGrayFlatParam[25] = ::GetPrivateProfileInt("GrayFlat", "B2Offset", 64, INI_FILE_NAME);
iGrayFlatParam[26] = ::GetPrivateProfileInt("GrayFlat", "B1Offset", 64, INI_FILE_NAME);
iGrayFlatParam[27] = ::GetPrivateProfileInt("GrayFlat", "B6Offset", 64, INI_FILE_NAME);
iGrayFlatParam[28] = ::GetPrivateProfileInt("GrayFlat", "B5Offset", 64, INI_FILE_NAME);
iGrayFlatParam[29] = ::GetPrivateProfileInt("GrayFlat", "B4Offset", 64, INI_FILE_NAME);
memcpy(m_sFlatCorrection.GrayFlat,iGrayFlatParam,sizeof(iGrayFlatParam));
}
void CA4::SaveNewParam(int iIndex)
{
UINT iTempParam[30] = {0};
UpdateData(TRUE);
iTempParam[0] = m_tbxFRExposure;
iTempParam[1] = m_tbxFGExposure;
iTempParam[2] = m_tbxFBExposure;
iTempParam[3] = m_tbxF1Gain;
iTempParam[4] = m_tbxF2Gain;
iTempParam[5] = m_tbxF3Gain;
iTempParam[6] = m_tbxF4Gain;
iTempParam[7] = m_tbxF5Gain;
iTempParam[8] = m_tbxF6Gain;
iTempParam[9] = m_tbxF1Offset;
iTempParam[10] = m_tbxF2Offset;
iTempParam[11] = m_tbxF3Offset;
iTempParam[12] = m_tbxF4Offset;
iTempParam[13] = m_tbxF5Offset;
iTempParam[14] = m_tbxF6Offset;
iTempParam[15] = m_tbxBRExposure;
iTempParam[16] = m_tbxBGExposure;
iTempParam[17] = m_tbxBBExposure;
iTempParam[18] = m_tbxB1Gain;
iTempParam[19] = m_tbxB2Gain;
iTempParam[20] = m_tbxB3Gain;
iTempParam[21] = m_tbxB4Gain;
iTempParam[22] = m_tbxB5Gain;
iTempParam[23] = m_tbxB6Gain;
iTempParam[24] = m_tbxB1Offset;
iTempParam[25] = m_tbxB2Offset;
iTempParam[26] = m_tbxB3Offset;
iTempParam[27] = m_tbxB4Offset;
iTempParam[28] = m_tbxB5Offset;
iTempParam[29] = m_tbxB6Offset;
UpdateData(FALSE);
switch (iIndex)
{
case 0:
memcpy(m_sFlatCorrection.ColorCorrection, iTempParam, sizeof(iTempParam));
WriteParamFile();
break;
case 1:
memcpy(m_sFlatCorrection.ColorFlat, iTempParam, sizeof(iTempParam));
WriteParamFile();
break;
case 2:
memcpy(m_sFlatCorrection.GrayCorrection, iTempParam, sizeof(iTempParam));
WriteParamFile();
break;
case 3:
memcpy(m_sFlatCorrection.GrayFlat, iTempParam, sizeof(iTempParam));
WriteParamFile();
break;
default:
break;
}
}
void CA4::WriteParamFile()
{
CString csColorCorrection[30];
CString csColorFlat[30];
CString csGrayCorrection[30];
CString csGrayFlat[30];
for(int i = 0;i < 30; i++)
{
csColorCorrection[i].Format(_T("%d"),m_sFlatCorrection.ColorCorrection[i]);
csColorFlat[i].Format(_T("%d"),m_sFlatCorrection.ColorFlat[i]);
csGrayCorrection[i].Format(_T("%d"),m_sFlatCorrection.GrayCorrection[i]);
csGrayFlat[i].Format(_T("%d"),m_sFlatCorrection.GrayFlat[i]);
}
WritePrivateProfileString("ColorCorrection", "FBExposure", csColorCorrection[0], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "FGExposure", csColorCorrection[1], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "FRExposure", csColorCorrection[2], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F3Gain", csColorCorrection[3], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F2Gain", csColorCorrection[4], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F1Gain", csColorCorrection[5], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F6Gain", csColorCorrection[6], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F5Gain", csColorCorrection[7], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F4Gain", csColorCorrection[8], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F3Offset", csColorCorrection[9], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F2Offset", csColorCorrection[10], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F1Offset", csColorCorrection[11], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F6Offset", csColorCorrection[12], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F5Offset", csColorCorrection[13], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "F4Offset", csColorCorrection[14], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "BBExposure", csColorCorrection[15], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "BGExposure", csColorCorrection[16], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "BRExposure", csColorCorrection[17], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B3Gain", csColorCorrection[18], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B2Gain", csColorCorrection[19], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B1Gain", csColorCorrection[20], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B6Gain", csColorCorrection[21], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B5Gain", csColorCorrection[22], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B4Gain", csColorCorrection[23], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B3Offset", csColorCorrection[24], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B2Offset", csColorCorrection[25], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B1Offset", csColorCorrection[26], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B6Offset", csColorCorrection[27], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B5Offset", csColorCorrection[28], INI_FILE_NAME);
WritePrivateProfileString("ColorCorrection", "B4Offset", csColorCorrection[29], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "FBExposure", csColorFlat[0], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "FGExposure", csColorFlat[1], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "FRExposure", csColorFlat[2], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F3Gain", csColorFlat[3], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F2Gain", csColorFlat[4], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F1Gain", csColorFlat[5], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F6Gain", csColorFlat[6], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F5Gain", csColorFlat[7], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F4Gain", csColorFlat[8], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F3Offset", csColorFlat[9], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F2Offset", csColorFlat[10], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F1Offset", csColorFlat[11], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F6Offset", csColorFlat[12], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F5Offset", csColorFlat[13], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "F4Offset", csColorFlat[14], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "BBExposure", csColorFlat[15], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "BGExposure", csColorFlat[16], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "BRExposure", csColorFlat[17], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B3Gain", csColorFlat[18], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B2Gain", csColorFlat[19], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B1Gain", csColorFlat[20], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B6Gain", csColorFlat[21], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B5Gain", csColorFlat[22], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B4Gain", csColorFlat[23], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B3Offset", csColorFlat[24], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B2Offset", csColorFlat[25], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B1Offset", csColorFlat[26], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B6Offset", csColorFlat[27], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B5Offset", csColorFlat[28], INI_FILE_NAME);
WritePrivateProfileString("ColorFlat", "B4Offset", csColorFlat[29], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "FBExposure", csGrayCorrection[0], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "FGExposure", csGrayCorrection[1], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "FRExposure", csGrayCorrection[2], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F3Gain", csGrayCorrection[3], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F2Gain", csGrayCorrection[4], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F1Gain", csGrayCorrection[5], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F6Gain", csGrayCorrection[6], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F5Gain", csGrayCorrection[7], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F4Gain", csGrayCorrection[8], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F3Offset", csGrayCorrection[9], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F2Offset", csGrayCorrection[10], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F1Offset", csGrayCorrection[11], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F6Offset", csGrayCorrection[12], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F5Offset", csGrayCorrection[13], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "F4Offset", csGrayCorrection[14], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "BBExposure", csGrayCorrection[15], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "BGExposure", csGrayCorrection[16], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "BRExposure", csGrayCorrection[17], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B3Gain", csGrayCorrection[18], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B2Gain", csGrayCorrection[19], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B1Gain", csGrayCorrection[20], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B6Gain", csGrayCorrection[21], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B5Gain", csGrayCorrection[22], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B4Gain", csGrayCorrection[23], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B3Offset", csGrayCorrection[24], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B2Offset", csGrayCorrection[25], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B1Offset", csGrayCorrection[26], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B6Offset", csGrayCorrection[27], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B5Offset", csGrayCorrection[28], INI_FILE_NAME);
WritePrivateProfileString("GrayCorrection", "B4Offset", csGrayCorrection[29], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "FBExposure", csGrayFlat[0], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "FGExposure", csGrayFlat[1], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "FRExposure", csGrayFlat[2], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F3Gain", csGrayFlat[3], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F2Gain", csGrayFlat[4], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F1Gain", csGrayFlat[5], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F6Gain", csGrayFlat[6], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F5Gain", csGrayFlat[7], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F4Gain", csGrayFlat[8], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F3Offset", csGrayFlat[9], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F2Offset", csGrayFlat[10], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F1Offset", csGrayFlat[11], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F6Offset", csGrayFlat[12], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F5Offset", csGrayFlat[13], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "F4Offset", csGrayFlat[14], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "BBExposure", csGrayFlat[15], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "BGExposure", csGrayFlat[16], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "BRExposure", csGrayFlat[17], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B3Gain", csGrayFlat[18], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B2Gain", csGrayFlat[19], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B1Gain", csGrayFlat[20], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B6Gain", csGrayFlat[21], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B5Gain", csGrayFlat[22], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B4Gain", csGrayFlat[23], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B3Offset", csGrayFlat[24], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B2Offset", csGrayFlat[25], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B1Offset", csGrayFlat[26], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B6Offset", csGrayFlat[27], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B5Offset", csGrayFlat[28], INI_FILE_NAME);
WritePrivateProfileString("GrayFlat", "B4Offset", csGrayFlat[29], INI_FILE_NAME);
}
void CA4::OnDeltaposSpinAgain(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateData(true);
if(pNMUpDown->iDelta == -1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ-1 , ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>µļ<C2B5>ͷ
{
AUpGain();
}
else if(pNMUpDown->iDelta == 1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ1, ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>ϵļ<CFB5>ͷ
{
ADownGain();
}
UpdateData(false);
*pResult = 0;
}
void CA4::OnDeltaposSpinAoffset(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateData(true);
if(pNMUpDown->iDelta == -1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ-1 , ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>µļ<C2B5>ͷ
{
AUpOffset();
}
else if(pNMUpDown->iDelta == 1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ1, ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>ϵļ<CFB5>ͷ
{
ADownOffset();
}
UpdateData(false);
*pResult = 0;
}
void CA4::OnDeltaposSpinBgain(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateData(true);
if(pNMUpDown->iDelta == -1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ-1 , ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>µļ<C2B5>ͷ
{
BUpGain();
}
else if(pNMUpDown->iDelta == 1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ1, ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>ϵļ<CFB5>ͷ
{
BDownGain();
}
UpdateData(false);
*pResult = 0;
}
void CA4::OnDeltaposSpinBoffset(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateData(true);
if(pNMUpDown->iDelta == -1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ-1 , ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>µļ<C2B5>ͷ
{
BUpOffset();
}
else if(pNMUpDown->iDelta == 1) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ1, ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Spin<69><6E><EFBFBD><EFBFBD><EFBFBD>ϵļ<CFB5>ͷ
{
BDownOffset();
}
UpdateData(false);
*pResult = 0;
}
void CA4::ADownGain()
{
UpdateData(true);
m_tbxF1Gain -= m_tbxAGain;
m_tbxF2Gain -= m_tbxAGain;
m_tbxF3Gain -= m_tbxAGain;
m_tbxF4Gain -= m_tbxAGain;
m_tbxF5Gain -= m_tbxAGain;
m_tbxF6Gain -= m_tbxAGain;
UpdateData(false);
}
void CA4::AUpGain()
{
UpdateData(true);
m_tbxF1Gain += m_tbxAGain;
m_tbxF2Gain += m_tbxAGain;
m_tbxF3Gain += m_tbxAGain;
m_tbxF4Gain += m_tbxAGain;
m_tbxF5Gain += m_tbxAGain;
m_tbxF6Gain += m_tbxAGain;
UpdateData(false);
}
void CA4::BDownGain()
{
UpdateData(true);
m_tbxB1Gain -= m_tbxBGain;
m_tbxB2Gain -= m_tbxBGain;
m_tbxB3Gain -= m_tbxBGain;
m_tbxB4Gain -= m_tbxBGain;
m_tbxB5Gain -= m_tbxBGain;
m_tbxB6Gain -= m_tbxBGain;
UpdateData(false);
}
void CA4::BUpGain()
{
UpdateData(true);
m_tbxB1Gain += m_tbxBGain;
m_tbxB2Gain += m_tbxBGain;
m_tbxB3Gain += m_tbxBGain;
m_tbxB4Gain += m_tbxBGain;
m_tbxB5Gain += m_tbxBGain;
m_tbxB6Gain += m_tbxBGain;
UpdateData(false);
}
void CA4::ADownOffset()
{
UpdateData(true);
m_tbxF1Offset -= m_tbxAOffset;
m_tbxF2Offset -= m_tbxAOffset;
m_tbxF3Offset -= m_tbxAOffset;
m_tbxF4Offset -= m_tbxAOffset;
m_tbxF5Offset -= m_tbxAOffset;
m_tbxF6Offset -= m_tbxAOffset;
UpdateData(false);
}
void CA4::AUpOffset()
{
UpdateData(true);
m_tbxF1Offset += m_tbxAOffset;
m_tbxF2Offset += m_tbxAOffset;
m_tbxF3Offset += m_tbxAOffset;
m_tbxF4Offset += m_tbxAOffset;
m_tbxF5Offset += m_tbxAOffset;
m_tbxF6Offset += m_tbxAOffset;
UpdateData(false);
}
void CA4::BDownOffset()
{
UpdateData(true);
m_tbxB1Offset -= m_tbxBOffset;
m_tbxB2Offset -= m_tbxBOffset;
m_tbxB3Offset -= m_tbxBOffset;
m_tbxB4Offset -= m_tbxBOffset;
m_tbxB5Offset -= m_tbxBOffset;
m_tbxB6Offset -= m_tbxBOffset;
UpdateData(false);
}
void CA4::BUpOffset()
{
UpdateData(true);
m_tbxB1Offset += m_tbxBOffset;
m_tbxB2Offset += m_tbxBOffset;
m_tbxB3Offset += m_tbxBOffset;
m_tbxB4Offset += m_tbxBOffset;
m_tbxB5Offset += m_tbxBOffset;
m_tbxB6Offset += m_tbxBOffset;
UpdateData(false);
}