using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SHARP_CLAS_UI { public class Process_Info_Recipe { #region Property //Base public string Name { get; set; } public DateTime Create_Time { get; set; } //Hatch data public float Hatch_Distance { get; set; } public int Jump_Repeat { get; set; } public int Jump_Range { get; set; } public int Waveform { get; set; } //Space data public float Work_Area_X { get; set; } public float Work_Area_Y { get; set; } //Process Draw Info public Process_Draw_Info Draw_Info_1 { get; set; } public Process_Draw_Info Draw_Info_2 { get; set; } public Process_Draw_Info Draw_Info_3 { get; set; } public Process_Draw_Info Draw_Info_4 { get; set; } //Scanner info public double Mark_Speed { get; set; } public double Jump_Speed { get; set; } public short Laser_On_Delay { get; set; } public short Laser_Off_Delay { get; set; } public ushort Jump_Delay { get; set; } public ushort Mark_Delay { get; set; } public ushort Frequency { get; set; } public double Power { get; set; } public double Target_Power_W { get; set; } public string CTB_File_Path { get; set; } //Scanner data public double Scanner_X_A1 { get; set; } public double Scanner_X_A2 { get; set; } public double Scanner_X_B1 { get; set; } public double Scanner_X_B2 { get; set; } public double Scanner_Z_A1 { get; set; } public double Scanner_Z_A2 { get; set; } public double Scanner_Z_B1 { get; set; } public double Scanner_Z_B2 { get; set; } public double Scanner_Y_A1 { get; set; } public double Scanner_Y_A2 { get; set; } public double Scanner_Y_B1 { get; set; } public double Scanner_Y_B2 { get; set; } //Plasma Position public double Plasma_X_A1 { get; set; } public double Plasma_X_A2 { get; set; } public double Plasma_X_B1 { get; set; } public double Plasma_X_B2 { get; set; } public double Plasma_Y_A1 { get; set; } public double Plasma_Y_A2 { get; set; } public double Plasma_Y_B1 { get; set; } public double Plasma_Y_B2 { get; set; } public double Plasma_Distance { get; set; } public double Plasma_Speed { get; set; } #endregion #region Construct public Process_Info_Recipe() { //Base Name = string.Empty; Create_Time = DateTime.Now; //Hatch data Hatch_Distance = 0; Jump_Repeat = 0; Jump_Range = 0; Waveform = 0; //Space data Work_Area_X = 0; Work_Area_Y = 0; //Process Draw Info Draw_Info_1 = new Process_Draw_Info(); Draw_Info_2 = new Process_Draw_Info(); Draw_Info_3 = new Process_Draw_Info(); Draw_Info_4 = new Process_Draw_Info(); //Scanner info Mark_Speed = 0; Jump_Speed = 0; Laser_On_Delay = 0; Laser_Off_Delay = 0; Jump_Delay = 0; Mark_Delay = 0; Frequency = 0; Power = 0; Target_Power_W = 0; CTB_File_Path = string.Empty; //Scanner data Scanner_X_A1 = 0; Scanner_X_A2 = 0; Scanner_X_B1 = 0; Scanner_X_B2 = 0; Scanner_Z_A1 = 0; Scanner_Z_A2 = 0; Scanner_Z_B1 = 0; Scanner_Z_B2 = 0; Scanner_Y_A1 = 0; Scanner_Y_A2 = 0; Scanner_Y_B1 = 0; Scanner_Y_B2 = 0; //Plasma data Plasma_X_A1 = 0; Plasma_X_A2 = 0; Plasma_X_B1 = 0; Plasma_X_B2 = 0; Plasma_Y_A1 = 0; Plasma_Y_A2 = 0; Plasma_Y_B1 = 0; Plasma_Y_B2 = 0; Plasma_Distance = 0; Plasma_Speed = 0; } #endregion #region Function public Process_Info_Recipe Clone() { Process_Info_Recipe info = new Process_Info_Recipe(); info.Name = this.Name; info.Create_Time = this.Create_Time; info.Hatch_Distance = this.Hatch_Distance; info.Jump_Repeat = this.Jump_Repeat; info.Jump_Range = this.Jump_Range; info.Waveform = this.Waveform; info.Work_Area_X = this.Work_Area_X; info.Work_Area_Y = this.Work_Area_Y; info.Draw_Info_1 = this.Draw_Info_1.Clone(); info.Draw_Info_2 = this.Draw_Info_2.Clone(); info.Draw_Info_3 = this.Draw_Info_3.Clone(); info.Draw_Info_4 = this.Draw_Info_4.Clone(); info.Mark_Speed = this.Mark_Speed; info.Jump_Speed = this.Jump_Speed; info.Laser_On_Delay = this.Laser_On_Delay; info.Laser_Off_Delay = this.Laser_Off_Delay; info.Jump_Delay = this.Jump_Delay; info.Mark_Delay = this.Mark_Delay; info.Frequency = this.Frequency; info.Power = this.Power; info.Target_Power_W = this.Target_Power_W; info.CTB_File_Path = this.CTB_File_Path; info.Scanner_X_A1 = this.Scanner_X_A1; info.Scanner_X_A2 = this.Scanner_X_A2; info.Scanner_X_B1 = this.Scanner_X_B1; info.Scanner_X_B2 = this.Scanner_X_B2; info.Scanner_Z_A1 = this.Scanner_Z_A1; info.Scanner_Z_A2 = this.Scanner_Z_A2; info.Scanner_Z_B1 = this.Scanner_Z_B1; info.Scanner_Z_B2 = this.Scanner_Z_B2; info.Scanner_Y_A1 = this.Scanner_Y_A1; info.Scanner_Y_A2 = this.Scanner_Y_A2; info.Scanner_Y_B1 = this.Scanner_Y_B1; info.Scanner_Y_B2 = this.Scanner_Y_B2; info.Plasma_X_A1 = this.Plasma_X_A1; info.Plasma_X_A2 = this.Plasma_X_A2; info.Plasma_X_B1 = this.Plasma_X_B1; info.Plasma_X_B2 = this.Plasma_X_B2; info.Plasma_Y_A1 = this.Plasma_Y_A1; info.Plasma_Y_A2 = this.Plasma_Y_A2; info.Plasma_Y_B1 = this.Plasma_Y_B1; info.Plasma_Y_B2 = this.Plasma_Y_B2; info.Plasma_Distance = this.Plasma_Distance; info.Plasma_Speed = this.Plasma_Speed; return info; } #endregion } }