using System; namespace VisionCommon { public enum eSubSysSetupType { None, Calibration, CenterTuning } /// /// SubSystem별 비전 셋업 기능을 위한 레시피 /// public class SubSysSetupRecipe : ICloneCopy { /// /// 캘리브레이션 시퀀스 설정 /// public CalSetupRecipe CalSetupRecipe { get; set; } = new CalSetupRecipe(); /// /// 센터튜닝 시퀀스 설정 (필요시 생성) /// public CenterTuningRecipe CenterTuningRecipe { get; set; } public SubSysSetupRecipe Clone() { return ((ICloneable)this).Clone() as SubSysSetupRecipe; } object ICloneable.Clone() { var cloneObj = new SubSysSetupRecipe(); CopyTo(cloneObj); return cloneObj; } public void CopyTo(SubSysSetupRecipe target) { target.CalSetupRecipe = this.CalSetupRecipe.Clone(); if (this.CenterTuningRecipe != null) { target.CenterTuningRecipe = this.CenterTuningRecipe.Clone(); } } } }