Example #1
0
 public override IState <AssemblyStation> GetNext(AssemblyStation vm, string updatedPropertyName)
 {
     if (vm.StInput)
     {
         return(new WorkingState(this));
     }
     return(new IdleState(this));
 }
 public override IState <AssemblyStation> GetNext(AssemblyStation vm, string updatedPropertyName)
 {
     AssemblyStation.Blocked  = false;
     AssemblyStation.StOutput = true;
     if (vm.StInput)
     {
         return(new WorkingState(this));
     }
     else
     {
         return(new IdleState(this));
     }
 }
Example #3
0
 public override IState <AssemblyStation> GetNext(AssemblyStation vm, string updatedPropertyName)
 {
     if (vm.Intervention)
     {
         return(new InterventionState(this));
     }
     if (vm.Alarm)
     {
         return(new AlarmState(this));
     }
     if (vm.Excluded)
     {
         return(new ExcludedState(this));
     }
     if (!vm.StInput)
     {
         return(this);
     }
     return(new WorkingState(this));
 }
 public override IState <AssemblyStation> GetNext(AssemblyStation vm, string updatedPropertyName)
 {
     if (vm.Intervention)
     {
         return(new InterventionState(this));
     }
     if (updatedPropertyName == "Blocked" || vm.Blocked)
     {
         return(new BlockedState(this));
     }
     if (updatedPropertyName == "Run" && vm.Run)
     {
         return(this);
     }
     if (updatedPropertyName == "StOutput")
     {
         return(this);
     }
     if (updatedPropertyName == "Run" && vm.StInput && !vm.Blocked)
     {
         return(new WorkingState(this));
     }
     return(new IdleState(this));
 }
Example #5
0
 public override bool ChangesState(AssemblyStation vm, string updatedPropertyName)
 {
     return(new [] { "Excluded", "Alarm", "Intervention", "StInput" }.Any(name => name == updatedPropertyName));
 }
Example #6
0
 public IdleState(AssemblyStation station) : base(station)
 {
 }
Example #7
0
 public override bool ChangesState(AssemblyStation vm, string updatedPropertyName)
 {
     return(updatedPropertyName == "Intervention");
 }
 public override bool ChangesState(AssemblyStation vm, string updatedPropertyName)
 {
     return(updatedPropertyName == "StOutput");
 }
Example #9
0
 public override IState <AssemblyStation> GetNext(AssemblyStation vm, string updatedPropertyName)
 {
     return(new IdleState(this));
 }
        public SimulationService(AssemblyStation vm)
        {
            var state = new IdleState(vm);

            vm.PropertyChanged += state.Notify;
        }
 public override bool ChangesState(AssemblyStation vm, string updatedPropertyName)
 {
     return(TransitionVariables.Contains(updatedPropertyName));
 }