| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613 | 
							- using System;
 
- using System.Collections.Generic;
 
- using Aitex.Core.RT.Event;
 
- using MECF.Framework.Common.Event;
 
- namespace FurnaceRT.Equipments.Systems
 
- {
 
-     public partial class EquipmentManager
 
-     {
 
-         private List<AlarmEventItem> _triggeredAlarmList = new List<AlarmEventItem>();
 
-         public AlarmEventItem PLCDisconnectAlarm { get; set; }
 
-         public AlarmEventItem PLCConnectRecoveryWarning { get; set; }
 
-         public AlarmEventItem MoveWaferFailedWarning { get; set; }
 
-         public AlarmEventItem ReturnWaferFailedWarning { get; set; }
 
-         public AlarmEventItem DeleteWaferFailedWarning { get; set; }
 
-         public AlarmEventItem CreateWaferFailedWarning { get; set; }
 
-         public AlarmEventItem SetLotIDFailedWarning { get; set; }
 
-         public AlarmEventItem ChargeProcessDischargeStartFailedWarning { get; set; }
 
-         public AlarmEventItem LoadProcessStockerStartFailedWarning { get; set; }
 
-         public AlarmEventItem LoadProcessUnloadStartFailedWarning { get; set; }
 
-         public AlarmEventItem ExpertChargeProcessDischargeStartFailedWarning { get; set; }
 
-         public AlarmEventItem ExpertChargeProcessStartFailedWarning { get; set; }
 
-         public AlarmEventItem LoadCassetteJobStartFailedWarning { get; set; }
 
-         public AlarmEventItem UnloadCassetteJobStartFailedWarning { get; set; }
 
-         public AlarmEventItem ChargeWaferJobStartFailedWarning { get; set; }
 
-         public AlarmEventItem ReturnAllWaferJobStartFailedWarning { get; set; }
 
-         public AlarmEventItem ChargeWaferJobMonitorFailedAlarm { get; set; }
 
-         public AlarmEventItem DischargeWaferJobMonitorFailedAlarm { get; set; }
 
-         public AlarmEventItem SDWaferTypeUseCountWarning { get; set; }
 
-         public AlarmEventItem SDWaferTypeUseCountAlarm { get; set; }
 
-         public AlarmEventItem SDWaferTypeUseTimeWarning { get; set; }
 
-         public AlarmEventItem SDWaferTypeUseTimeAlarm { get; set; }
 
-         public AlarmEventItem SDWaferTypeThicknessWarning { get; set; }
 
-         public AlarmEventItem SDWaferTypeThicknessAlarm { get; set; }
 
-         public AlarmEventItem FDWaferTypeUseCountWarning { get; set; }
 
-         public AlarmEventItem FDWaferTypeUseCountAlarm { get; set; }
 
-         public AlarmEventItem FDWaferTypeUseTimeWarning { get; set; }
 
-         public AlarmEventItem FDWaferTypeUseTimeAlarm { get; set; }
 
-         public AlarmEventItem FDWaferTypeThicknessWarning { get; set; }
 
-         public AlarmEventItem FDWaferTypeThicknessAlarm { get; set; }
 
-         public AlarmEventItem EquipmentEmergencyStopAlarm { get; set; }
 
-         public AlarmEventItem TransferJobStartFailedWarning { get; set; }
 
-         #region MyRegion
 
-         public AlarmEventItem RecipeExecuteFreqAlarm { get; set; }
 
-         public AlarmEventItem RecipeExecuteFreqWarning { get; set; }
 
-         public AlarmEventItem RecipeThicknessAlarm { get; set; }
 
-         public AlarmEventItem RecipeThicknessWarning { get; set; }
 
-         public AlarmEventItem BoatRecipeThicknessAlarm { get; set; }
 
-         public AlarmEventItem BoatRecipeThicknessWarning { get; set; }
 
-         public AlarmEventItem ReatorStepRunFreqWarning { get; set; }
 
-         public AlarmEventItem ReatorStepRunFreqAlarm { get; set; }
 
-         public AlarmEventItem ReatorStepRunTimeWarning { get; set; }
 
-         public AlarmEventItem ReatorStepRunTimeAlarm { get; set; }
 
-         public AlarmEventItem ReatorStepThicknessAlarm { get; set; }
 
-         public AlarmEventItem ReatorStepThicknessWarning { get; set; }
 
-         #endregion
 
-         private void InitAlarmDefine()
 
-         {
 
-             PLCDisconnectAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.PLCDisconnectAlarm",
 
-                 Description = $"PLC disconnect ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             PLCConnectRecoveryWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.PLCConnectRecoveryWarning",
 
-                 Description = $"PLC connect recovery ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             MoveWaferFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.MoveWaferFailedWarning",
 
-                 Description = $"{Name} move wafer failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReturnWaferFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReturnWaferFailedWarning",
 
-                 Description = $"{Name} return wafer failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             DeleteWaferFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.DeleteWaferFailedWarning",
 
-                 Description = $"{Name} delete wafer failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             CreateWaferFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.CreateWaferFailedWarning",
 
-                 Description = $"{Name} create wafer failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SetLotIDFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SetLotIDFailedWarning",
 
-                 Description = $"{Name} set lotID failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ChargeProcessDischargeStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ChargeProcessDischargeStartFailedWarning",
 
-                 Description = $"{Name} ChargeProcessDischarge start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             LoadProcessStockerStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.LoadProcessStockerStartFailedWarning",
 
-                 Description = $"{Name} LoadProcessStocker start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             LoadProcessUnloadStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.LoadProcessUnloadStartFailedWarning",
 
-                 Description = $"{Name} LoadProcessUnload start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ExpertChargeProcessDischargeStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ExpertChargeProcessDischargeStartFailedWarning",
 
-                 Description = $"{Name} Expert ChargeProcessDischarge start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ExpertChargeProcessStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ExpertChargeProcessStartFailedWarning",
 
-                 Description = $"{Name} Expert ChargeProcess start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             LoadCassetteJobStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.LoadCassetteJobStartFailedWarning",
 
-                 Description = $"{Name} LoadCassette job start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             UnloadCassetteJobStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.UnloadCassetteJobStartFailedWarning",
 
-                 Description = $"{Name} UnloadCassette job start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ChargeWaferJobStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ChargeWaferJobStartFailedWarning",
 
-                 Description = $"{Name} ChargeWafer job start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReturnAllWaferJobStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReturnAllWaferJobStartFailedWarning",
 
-                 Description = $"{Name} ReturnAllWafer job start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ChargeWaferJobMonitorFailedAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ChargeWaferJobMonitorFailedAlarm",
 
-                 Description = $"{Name} ChargeWafer job monitor start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             DischargeWaferJobMonitorFailedAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.DischargeWaferJobMonitorFailedAlarm",
 
-                 Description = $"{Name} DischargeWafer job monitor start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-         
 
-             RecipeExecuteFreqWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.RecipeExecuteFreqWarning",
 
-                 Description = $"",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             RecipeExecuteFreqAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.RecipeExecuteFreqAlarm",
 
-                 Description = $"",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             RecipeThicknessWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.RecipeThicknessWarning",
 
-                 Description = $"",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             RecipeThicknessAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.RecipeThicknessAlarm",
 
-                 Description = $"",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             BoatRecipeThicknessWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.BoatRecipeThicknessWarning",
 
-                 Description = $"BoatRecipeThicknessWarning",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             BoatRecipeThicknessAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.BoatRecipeThicknessAlarm",
 
-                 Description = $"BoatRecipeThicknessAlarm",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReatorStepRunTimeWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReatorStepRunTimeWarning",
 
-                 Description = $"ReatorStepRunTimeWarning",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReatorStepRunTimeAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReatorStepRunTimeAlarm",
 
-                 Description = $"ReatorStepRunTimeAlarm",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReatorStepRunFreqWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReatorStepRunFreqWarning",
 
-                 Description = $"ReatorStepRunFreqWarning",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReatorStepRunFreqAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReatorStepRunFreqAlarm",
 
-                 Description = $"ReatorStepRunFreqAlarm",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReatorStepThicknessWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReatorStepThicknessWarning",
 
-                 Description = $"ReatorStepThicknessWarning",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             ReatorStepThicknessAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.ReatorStepThicknessAlarm",
 
-                 Description = $"ReatorStepThicknessAlarm",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SDWaferTypeUseCountWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SDWaferTypeUseCountWarning",
 
-                 Description = $"SD wafer useCount warning ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SDWaferTypeUseCountAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SDWaferTypeUseCountAlarm",
 
-                 Description = $"SD wafer useCount alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SDWaferTypeUseTimeWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SDWaferTypeUseTimeWarning",
 
-                 Description = $"SD wafer useTime warning ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SDWaferTypeUseTimeAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SDWaferTypeUseTimeAlarm",
 
-                 Description = $"SD wafer type use time alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SDWaferTypeThicknessWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SDWaferTypeThicknessWarning",
 
-                 Description = $"SD wafer thickness warning ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             SDWaferTypeThicknessAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.SDWaferTypeThicknessAlarm",
 
-                 Description = $"SD wafer thickness alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             FDWaferTypeUseCountWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.FDWaferTypeUseCountWarning",
 
-                 Description = $"FD wafer useCount warning ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             FDWaferTypeUseCountAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.FDWaferTypeUseCountAlarm",
 
-                 Description = $"FD wafer useCount alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             FDWaferTypeUseTimeWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.FDWaferTypeUseTimeWarning",
 
-                 Description = $"FD wafer useTime warning ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             FDWaferTypeUseTimeAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.FDWaferTypeUseTimeAlarm",
 
-                 Description = $"FD wafer useTime alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             FDWaferTypeThicknessWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.FDWaferTypeThicknessWarning",
 
-                 Description = $"FD wafer thickness warning ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             FDWaferTypeThicknessAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.FDWaferTypeThicknessAlarm",
 
-                 Description = $"FD wafer thickness alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             EquipmentEmergencyStopAlarm = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.EquipmentEmergencyStopAlarm",
 
-                 Description = $"{Name} equipment emergency stop alarm ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Alarm,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-             TransferJobStartFailedWarning = SubscribeAlarm(new AlarmEventItem()
 
-             {
 
-                 EventEnum = $"{Name}.TransferJobStartFailedWarning",
 
-                 Description = $"Transfer job start failed ",
 
-                 Solution = "No information available. Press[Clear] to delete alarm message.",
 
-                 Explaination = "No information available.",
 
-                 AutoRecovery = false,
 
-                 Level = EventLevel.Warning,
 
-                 Action = EventAction.Clear,
 
-                 Category = "SystemAlarm",
 
-             }, () => { return true; });
 
-         }
 
-         public void OnModuleDeviceAlarmStateChanged(string deviceId, AlarmEventItem alarmItem)
 
-         {
 
-             if (alarmItem.IsTriggered)
 
-             {
 
-                 EventLevel level = alarmItem.Level;
 
-                 _triggeredAlarmList.Add(alarmItem);
 
-                 if (level == EventLevel.Alarm)
 
-                 {
 
-                     try
 
-                     {
 
-                         EV.PostAlarmLog(Module, alarmItem);
 
-                     }
 
-                     catch (Exception ex)
 
-                     {
 
-                         EV.WriteEvent(ex.Message.ToString());
 
-                     }
 
-                 }
 
-                 else
 
-                 {
 
-                     EV.PostWarningLog(Module, alarmItem);
 
-                 }
 
-             }
 
-             else
 
-             {
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |