123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 |
- using OTSMeasureApp._0_OTSModel.OTSDataType;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Xml;
- using static OTSDataType.otsdataconst;
- namespace OTSDataType
- {
- public class CSampleParam : ISlo
- {
- private string m_strName;
- private OTS_CLASSIFY_ENGINE_TYPE m_engineType;
- private string m_strSTDName;
- private COTSImgScanPrm m_poImageScanParam;
- private COTSImageProcParam m_poImageProcessParam;
- private COTSXRayParam m_poXRayParam;
- private CSpecialGrayRangeParam m_specialGrayRangeParam;
- private STEEL_TECHNOLOGY m_SteelTech;
- private CSlopFocusParam m_SlopParam;
- // soft pack id
- public otsdataconst.OTS_SysType_ID m_nPackId;
- public otsdataconst.RunMode m_runmode;
- public CSlopFocusParam SlopParam { get => m_SlopParam; set => m_SlopParam = value; }
- public CSpecialGrayRangeParam GetSpecialGrayRangeParam()
- {
- if (m_specialGrayRangeParam == null)
- {
- m_specialGrayRangeParam = new CSpecialGrayRangeParam();
- }
-
- return m_specialGrayRangeParam;
- }
- public void SetSpecialGrayRangeParam(CSpecialGrayRangeParam value)
- {
- m_specialGrayRangeParam = value;
- m_poImageProcessParam.SetSpecialGreyRangeParam(value);
- }
- public CSampleParam()
- {
- // initialization
- Init();
- }
- void Init()
- {
- // initialization
- m_strName = "MsrParam";
- m_engineType = OTS_CLASSIFY_ENGINE_TYPE.InclutionPlusExpressionParse;
- m_strSTDName = "";
- m_poImageScanParam = new COTSImgScanPrm();
- m_poImageProcessParam = new COTSImageProcParam();
- m_poXRayParam = new COTSXRayParam();
- m_SlopParam = new CSlopFocusParam();
- }
- void Duplicate(CSampleParam a_oSource)
- {
- // initialization
- //Init();
- // copy data over
- m_strName = a_oSource.m_strName;
- m_engineType = a_oSource.m_engineType;
- m_strSTDName = a_oSource.m_strSTDName;
- m_SteelTech = a_oSource.m_SteelTech;
- m_poImageScanParam = new COTSImgScanPrm(a_oSource.m_poImageScanParam);
- m_poImageProcessParam = new COTSImageProcParam(a_oSource.m_poImageProcessParam);
- m_poXRayParam = new COTSXRayParam(a_oSource.m_poXRayParam);
- }
- public CSampleParam(CSampleParam a_oSource)
- {
- // copy data over
- Duplicate(a_oSource);
- }
- public bool Equals(CSampleParam a_oSource)
- {
- // members
- return m_strName == a_oSource.m_strName &&
- //*(m_poPartSTDData.get()) == *(a_oSource.m_poPartSTDData.get()) &&
- m_strSTDName == a_oSource.m_strSTDName &&
- m_poImageScanParam.Equals(a_oSource.m_poImageScanParam) &&
- m_poImageProcessParam.Equals(a_oSource.m_poImageProcessParam) &&
- m_poXRayParam.Equals(a_oSource.m_poXRayParam) &&
- m_engineType.Equals(a_oSource.m_engineType);
- }
- public override void Serialize(bool isStoring, XmlDocument classDoc, XmlNode rootNode)
- {
- xString xEngineType = new xString();
- xString xstrName = new xString();
- xString xstrSTDName = new xString();
- xString xSystype = new xString();
- xInt xSteelTech = new xInt();
- Slo slo = new Slo();
- slo.Register("EngineType", xEngineType);
- slo.Register("STDName", xstrSTDName);
- slo.Register("SteelTech", xSteelTech);
- slo.Register("SysType", xSystype);
- slo.Register("ImageScanParam", m_poImageScanParam);
- slo.Register("ImageProcessParam", m_poImageProcessParam);
- slo.Register("XRayParam", m_poXRayParam);
- if (isStoring)
- {
- xEngineType.AssignValue((int)m_engineType+":"+m_engineType.ToString());
- xstrName.AssignValue(m_strName);
- xSteelTech.AssignValue((int)m_SteelTech);
- xstrSTDName.AssignValue(m_strSTDName);
- xSystype.AssignValue((int)m_nPackId+":"+m_nPackId.ToString());
- slo.Serialize(true, classDoc, rootNode);
- }
- else
- {
- slo.Serialize(false, classDoc, rootNode);
- if (xEngineType.value().Split(':').Length > 1)
- {
- m_engineType = (OTS_CLASSIFY_ENGINE_TYPE)Convert.ToInt32(xEngineType.value().Split(':')[0]);
- }
-
- m_strName = xstrName.value();
- m_strSTDName = xstrSTDName.value();
- m_SteelTech = (STEEL_TECHNOLOGY)xSteelTech.value();
- var syst = xSystype.toString();
- m_nPackId = (OTS_SysType_ID)Convert.ToInt32(syst.Split(':')[0]);
- }
- }
- public void SetImageScanParam(COTSImgScanPrm a_poImageScanParam)
- {
- m_poImageScanParam =new COTSImgScanPrm( a_poImageScanParam);
- }
- // image process parameter
- public void SetImageProcessParam(COTSImageProcParam a_poImageProcessParam)
- {
- // make sure that image process parameter always valid
- m_poImageProcessParam = new COTSImageProcParam( a_poImageProcessParam);
- }
- public string GetName() { return m_strName; }
- public STEEL_TECHNOLOGY GetSteelTechnology() { return m_SteelTech; }
- public void SetSteelTechnology(STEEL_TECHNOLOGY a_SteelTech) { m_SteelTech = a_SteelTech; }
- public string GetSTDName() { return m_strSTDName; }
- public void SetSTDName(string a_strName) { m_strSTDName = a_strName; }
- // x-ray parameter
- public void SetXRayParam(COTSXRayParam a_poXRayParam)
- {
- // make sure that x-ray parameter always valid
- m_poXRayParam = new COTSXRayParam( a_poXRayParam);
- }
- public COTSImgScanPrm GetImageScanParam() { return m_poImageScanParam; }
- public COTSImageProcParam GetImageProcessParam() { m_poImageProcessParam.SetSpecialGreyRangeParam(m_specialGrayRangeParam); return m_poImageProcessParam; }
- public COTSXRayParam GetXRayParam() { return m_poXRayParam; }
- // STDSwitch
- public OTS_CLASSIFY_ENGINE_TYPE GetEngineType() { return m_engineType; }
- public void SetEngineType(OTS_CLASSIFY_ENGINE_TYPE a_enginetype) { m_engineType = a_enginetype; }
- }
- }
|