public void HandleAlarmEvent(AlarmHandleType alarmType) { switch (alarmType) { case AlarmHandleType.ImmediateHandle: this.ChangeProductionState(ProductionState.Alarm); break; case AlarmHandleType.DelayHandle: this.ChangeProductionState(ProductionState.Alarm); break; case AlarmHandleType.AutoAndImmeDiateHandle: this.EnterAbortedState.WaitOne(10000); MachineAlarmState.Instance.IsImmidiateAlarm = true; this.ChangeState(MachineAlarmState.Instance); break; case AlarmHandleType.AutoAndDelayHandle: MachineAlarmState.Instance.IsImmidiateAlarm = false; this.ChangeState(MachineAlarmState.Instance); break; } }
public static AlarmInfo Create(AlarmLevel level, int errorCode, string where, string message, AlarmHandleType handleType) { AlarmInfo alarmInfo = new AlarmInfo() { DateTime = DateTime.Now, Level = level, ErrorCode = errorCode, Where = where, Message = message, HandleType = handleType }; return(alarmInfo); }