private bool IsDamp(Sdamp sdamp, out double level) { var e = new ProcessSdampEventArgs(sdamp.Pattern); OnProcessSdamp(e); level = e.Level; return(e.IsDamp); }
protected Signal[] GetSignals(T eventBlock) { var signals = new List <Signal>(); // compute Antigen signal var spamp = GetSpamp(eventBlock); if (spamp != null) { var antigen = new Antigen <T>(Address.Unknown, spamp, eventBlock); signals.Add(antigen); } var dangerPattern = GetSdamp(eventBlock); if (dangerPattern != null) { var sdamp = new Sdamp(Address.Unknown, dangerPattern); signals.Add(sdamp); } /*if (ITH >= 0 && LBP >= 0 && OHD >= 0) * { * var dangerDistance = * -0.131203973036663 * ITH + * 7.899539817161498 * LBP - * 0.203824367425025 * OHD - * 2.916552222394642; * * if (dangerDistance < 0) * { * signal.Type = SignalType.DAMP; * signal.Concentration = Math.Abs(dangerDistance); * } * else * { * signal.Type = SignalType.Safe; * signal.Concentration = dangerDistance; // TODO: Unknwon value * } * } * else * { * signal.Type = SignalType.Safe; * signal.Concentration = 0; * }*/ return(signals.ToArray()); }