示例#1
0
 public static ActuatorCommandProcessResult Create(ParameterType parameter, CommandImpact impact) =>
 new ActuatorCommandProcessResult
 {
     ExecutedCommand = new ParameterCommand
     {
         Parameter     = parameter,
         CommandImpact = impact
     }
 };
示例#2
0
 public static bool IsLessOrSameFromSameDirection(this CommandImpact value, CommandImpact toCompare)
 {
     return(value.IsSameChangeDirection(toCompare) && Math.Abs((int)value) <= Math.Abs((int)toCompare));
 }
示例#3
0
 public static bool IsSameChangeDirection(this CommandImpact value, CommandImpact toCompare)
 {
     return(value == toCompare ||
            (value > 0 && toCompare > 0) ||
            (value < 0 && toCompare < 0));
 }
示例#4
0
 private bool IsActuatorApplicable(IActuator actuator, CommandImpact requestedImpact)
 {
     return(!actuator.ActuatorDeviceInfo.IsConstantImpact &&
            actuator.ActuatorDeviceInfo.Impacts.Any(x => x.IsLessOrSameFromSameDirection(requestedImpact)));
 }