public override void AddEvent(ulong NOW, ulong after, AbstractValue value, VHDL.DelayMechanism delayMechanism) { AbstractTimeStampInfo <T> newValue = new AbstractTimeStampInfo <T>(valueCovertor.GetValue(value)); if (delayMechanism is VHDL.TRANSPORTDelayMechanism) { dump.AddTransportEvent(NOW + after, newValue); return; } if (delayMechanism.PulseRejectionLimit != null) { TIME_VALUE reject = ExpressionEvaluator.DefaultEvaluator.Evaluate(delayMechanism.PulseRejectionLimit) as TIME_VALUE; dump.AddInertialEvent(NOW, NOW + after, newValue, (UInt64)reject.DoubleValue); return; } if (delayMechanism is VHDL.INERTIALDelayMechanism) { dump.AddInertialEvent(NOW, NOW + after, newValue); return; } }
void Signal_OnAddEvent(Signal sender, ulong NOW, ulong after, AbstractValue value, VHDL.DelayMechanism delayMechanism) { }
public void AddEvent(UInt64 NOW, UInt64 after, AbstractValue value, VHDL.DelayMechanism delayMechanism) { Dump.AddEvent(NOW, after, value, delayMechanism); onAddEvent(this, NOW, after, value, delayMechanism); }
/// <summary> /// Добавление события в очередь назначения сигнала /// </summary> /// <param name="NOW"></param> /// <param name="after"></param> /// <param name="value"></param> /// <param name="delayMechanism"></param> public abstract void AddEvent(ulong NOW, ulong after, AbstractValue value, VHDL.DelayMechanism delayMechanism);