using Aitex.Core.RT.Device; using Aitex.Core.RT.SCCore; using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.LoadPorts.LoadPortBase; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace EFEM.RT.Tasks { public class ThicknessTask : CheckImp, ITask { public ThicknessTask() { } public bool Execute(out string result, params string[] args) { HasInfoMessage = false; string device = Args2Unit(args.Length > 0 ? args[0] : string.Empty); if (device == null) { result = PARAM_NG; return false; } if (args.Length < 2) { result = PARAM_NG; return false; } if (!Check(device, out result)) { return false; } if (!Check(device, out result)) { return false; } if (CheckIsPort(device)) { SC.SetItemValueFromString($"CarrierInfo.{device}ThicknessType", args[1].ToString()); } else { result = PARAM_NG; return false; } return true; } public bool? Monitor(out string result, params string[] args) { result = string.Empty; string device = Args2Unit(args.Length > 0 ? args[0] : string.Empty); return true; } } public class GetThicknessTask : CheckImp, ITask { public GetThicknessTask() { } public bool Execute(out string result, params string[] args) { string device = Args2Unit(args.Length > 0 ? args[0] : string.Empty); if (device == null) { result = PARAM_NG; return false; } if (!Check(device, out result)) { return false; } if (!Check(device, out result)) { return false; } if (CheckIsPort(device)) { //SC.SetItemValueFromString($"CarrierInfo.{device}ThicknessType", args[1].ToString()); } else { result = PARAM_NG; return false; } return true; } public bool? Monitor(out string result, params string[] args) { result = string.Empty; string device = Args2Unit(args.Length > 0 ? args[0] : string.Empty); result = SC.GetStringValue($"CarrierInfo.{device}ThicknessType"); return true; } } }