Files
JP_KDDI_LFPS_48100/LFP_Manager/Forms/fmxCalibration.cs
2025-12-19 13:59:34 +09:00

119 lines
3.1 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using LFP_Manager.DataStructure;
using LFP_Manager.Function;
using LFP_Manager.Controls;
using static DevExpress.XtraPrinting.Export.Pdf.PdfImageCache;
namespace LFP_Manager.Forms
{
public delegate void CalibUpdateEvent(object sendor);
public delegate void CalibCmdEvent(int sId, int mode, int index, int flag,
ref CsDeviceData.DeviceModuleData.DeviceParamData aParam,
ref CsDeviceData.DeviceModuleData.DeviceCalibration aCalib);
public partial class fmxCalibration : DevExpress.XtraEditors.XtraForm
{
#region VARIABLES
int SystemId = 0;
CsDeviceData.DeviceModuleData ModuleData;
CsDeviceData.DeviceModuleData.DeviceParamData Param;
CsDeviceData.DeviceModuleData.DeviceCalibration Calib;
public event CalibUpdateEvent OnUpdate = null;
public event CalibCmdEvent OnCommand = null;
#endregion
#region CONSTRUCTORS
public fmxCalibration(int sId, CommConfig aConfig,
CsDeviceData.DeviceModuleData.DeviceParamData aParam,
CsDeviceData.DeviceModuleData.DeviceCalibration aCalib)
{
InitializeComponent();
InitComponent();
ucCalibrationConfig.UpdateConfig(aConfig);
SystemId = sId;
Param = aParam;
Calib = aCalib;
tmrDisplay.Enabled = true;
}
public void InitComponent()
{
// Cell Voltage Calibration
ucCalibrationConfig.OnCommand += OnCmdEvent;
}
#endregion
#region COMMAND EVENT
private void OnCmdEvent(int mode, int index, int flag,
ref CsDeviceData.DeviceModuleData.DeviceParamData aParam,
ref CsDeviceData.DeviceModuleData.DeviceCalibration aCalib)
{
OnCommand?.Invoke(SystemId, mode, index, flag, ref aParam, ref aCalib);
}
#endregion
#region BUTTON EVENT
private void btnClose_Click(object sender, EventArgs e)
{
Close();
}
#endregion
#region TIMER EVENT
private void tmrDisplay_Tick(object sender, EventArgs e)
{
DisplayValue();
if (OnUpdate != null)
{
OnUpdate(this);
}
}
#endregion
#region DISPLAY DATA
private void DisplayValue()
{
// Cell Voltage Parameter
ucCalibrationConfig.UpdateData(ModuleData, Calib);
}
#endregion
#region PUBLIC FUCTIONS
public void UpdateData(CsDeviceData.DeviceModuleData.DeviceParamData aParam,
CsDeviceData.DeviceModuleData.DeviceCalibration aCalib,
CsDeviceData.DeviceModuleData mData)
{
ModuleData = mData;
Param = aParam;
Calib = aCalib;
}
#endregion
}
}