using Aitex.Core.Common; using Aitex.Core.RT.DataCenter; using Aitex.Core.RT.SCCore; using Aitex.Core.Util; using MECF.Framework.Common.Equipment; using MECF.Framework.Common.IOCore; using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using System.Threading.Tasks; namespace PunkHPX8_RT.Devices.EFEM { public class DummyDevice { #region 常量 private const string CASSETE_200_PRESENT = "Cassete200Present"; private const string CASSETE_150_PRESENT = "Cassete150Present"; private const string CASSETE_100_PRESENT = "Cassete100Present"; #endregion #region 内部变量 private bool _cassete200Present = false; private bool _cassete150Present = false; private bool _cassete100Present = false; /// /// 变量是否初始化字典 /// private Dictionary _variableInitializeDic = new Dictionary(); /// /// /// private ModuleName _module; /// /// 尺寸 /// private WaferSize _waferSize; /// /// 是否存在Cassete /// private bool _hasCassete = true; #endregion #region 属性 /// /// 尺寸 /// public WaferSize WaferSize { get { return _waferSize; } } /// /// 是否存在Cassete /// public bool HasCassette { get { return _hasCassete; } } #endregion /// /// 构造函数 /// /// public DummyDevice(ModuleName moduleName) { _module = moduleName; InitializeData(); DATA.Subscribe($"{_module}.CassettePlaced", () => true, SubscriptionAttribute.FLAG.IgnoreSaveDB); DATA.Subscribe($"{_module}.WaferSize", () => WaferSize.ToString(), SubscriptionAttribute.FLAG.IgnoreSaveDB); } private void InitializeData() { int dummyWaferSize = SC.GetValue($"EFEM.{_module.ToString()}WaferSize"); _waferSize = (WaferSize)dummyWaferSize; } } }