NoPodPolicy.cs 875 B

12345678910111213141516171819202122232425262728
  1. using Aitex.Core.RT.Device;
  2. using athosRT.Devices.EFEM.Task;
  3. using MECF.Framework.Common.Equipment;
  4. using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.LoadPorts.LoadPortBase;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace athosRT.Devices.EFEM.ABS
  11. {
  12. public class NoPodPolicy : CheckImp, IPolicy
  13. {
  14. public bool Check(string device, out string reason)
  15. {
  16. reason = string.Empty;
  17. if (device == "SignalTower" || !ModuleHelper.IsLoadPort(ModuleHelper.Converter(device)))
  18. return true;
  19. LoadPortBaseDevice device1 = DEVICE.GetDevice<LoadPortBaseDevice>(device);
  20. if (device1.IsPresent && device1.IsPlacement)
  21. return true;
  22. reason = "NONPOD";
  23. return false;
  24. }
  25. }
  26. }