public override void Pulse(Connection sender, double value) { PendingValue += sender.Calculate(value); if (++SignalsReceived < Previous.Length) { return; } SignalsReceived = 0; double output = Func.Activation(PendingValue); LastInputSignal = PendingValue; LastOutputSignal = output; if (Inspector != null && Inspector.TraceLevel >= 1) { Inspector.Trace(this, "Input sum={0}, output={1}", PendingValue, output); } if (Next != null) { foreach (Connection i in Next) { i.Next.Pulse(i, output); } } PendingValue = 0; }