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;
     }
 }
Beispiel #2
0
        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;
 }