WaferTrack.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Aitex.Core.Util;
  7. namespace MECF.Framework.Simulator.Core.SubstrateTrackings
  8. {
  9. public enum WaferTrackStateEnum
  10. {
  11. Unknown,
  12. Unoccupied,
  13. Occupied,
  14. Blocked,
  15. }
  16. public class WaferTrack : Singleton<WaferTrack>
  17. {
  18. Dictionary<string, WaferTrackStateEnum> _states = new Dictionary<string, WaferTrackStateEnum>();
  19. public void UpdateWaferTrackState(string location, WaferTrackStateEnum state)
  20. {
  21. _states[location] = state;
  22. }
  23. internal bool IsOccupied(string location)
  24. {
  25. return _states[location] == WaferTrackStateEnum.Occupied;
  26. }
  27. internal WaferTrackStateEnum GetLocationState(string location)
  28. {
  29. return _states[location];
  30. }
  31. internal void UpdateMaterialMap(string location, WaferTrackStateEnum state)
  32. {
  33. _states[location] = state;
  34. }
  35. }
  36. }