Ejemplo n.º 1
0
        /// <summary>
        /// Whether the signal is restricted to be <= 0
        /// </summary>
        public static bool IsAlwaysNonpositive(Signal signal)
        {
            if (signal == null)
            {
                throw new ArgumentNullException("signal");
            }

            return(signal.IsFlagEnabled(StdAspect.NegativeOrZeroConstraintFlag) ||
                   IsConstant(signal) && RealValue.CanConvertLosslessFrom(signal.Value) && RealValue.ConvertFrom(signal.Value).Value <= 0d);
        }
Ejemplo n.º 2
0
        public override bool StillValidAfterEvent(Signal signal)
        {
            if (signal == null)
            {
                throw new ArgumentNullException("signal");
            }

            if (signal.Value == null)
            {
                return(false);
            }
            return(RealValue.CanConvertLosslessFrom(signal.Value));
        }
Ejemplo n.º 3
0
 /// <returns>true if an event shall be posted.</returns>
 private bool UpdatePeriods(int index, Signal inputSignal)
 {
     if (RealValue.CanConvertLosslessFrom(inputSignal.Value))
     {
         periods[index] = TimeSpan.FromSeconds(1.0 / RealValue.ConvertFrom(inputSignal.Value).Value);
         return(true);
     }
     else
     {
         periods[index] = TimeSpan.Zero;
         return(false);
     }
 }
Ejemplo n.º 4
0
 public static bool IsConstantReal(Signal signal)
 {
     return(IsConstant(signal) && RealValue.CanConvertLosslessFrom(signal.Value));
 }