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;
}
}
}