public RadioSignalItemModel(RadioSignalingItem signalItem) { if (signalItem == null) { throw new ArgumentNullException(); } this._signalItem = signalItem; if (signalItem.Code == SignalCode.Emergency) { _emergencyState = Common.EmergencyState.EmergencyActive; } else if (signalItem.Code == SignalCode.EmergencyAck) { _emergencyState = Common.EmergencyState.EmergencyCleared; } else { _emergencyState = Common.EmergencyState.NonEmergency; } }
public void HandleRadioSignal(RadioSignalingItem sigItem, EmergencyState emerState = EmergencyState.NonEmergency) { if (!_firegroundEnabled) { return; } if (sigItem == null) { return; } RadioInfo rInfo = RadioInfoLookupHelper.Instance.GetRadioInfoFromSignalingItem(sigItem); if (rInfo == null || rInfo.ExcludeFromRollCall) { return; } RollCallItem rci = GetItemFromLookupKey(rInfo.SignalingLookupKey); if (rci == null) { rci = new RollCallItem(rInfo, emerState); } else { rci.EmergencyState = emerState; } if (_rollCallActive) { AddToGoodList(rci); } else { AddToWaitingList(rci); } }
public EmergencyRadioSignalItemModel(RadioSignalingItem signalItem) : base(signalItem) { _startedDT = null; _endedDT = null; }