public static BaseAction CreateBackStepAction(this LinearPositionLinkGantryOnAction a) { return(new LinearPositionLinkGantryOffAction() { MasterId = a.MasterId, SlaveId = a.SlaveId }); }
private BaseAction CreateBackStepAction(LinearPositionLinkGantryOnAction action) { return(new LinearPositionLinkGantryOffAction() { MasterId = action.MasterId, SlaveId = action.SlaveId }); }
private void AddActionCommandImpl() { BaseAction action = null; switch (ActionType) { case ActionType.AddPanel: action = new AddPanelAction(); break; case ActionType.LinearPositionLink: action = new LinearPositionLinkAction(); break; case ActionType.TwoPositionLink: action = new TwoPositionLinkAction(); break; case ActionType.LoadTool: action = new LoadToolAction(); break; case ActionType.UnloadTool: action = new UnloadToolAction(); break; case ActionType.LinearPositionLinkGantryOn: action = new LinearPositionLinkGantryOnAction(); break; case ActionType.LinearPositionLinkGantryOff: action = new LinearPositionLinkGantryOffAction(); break; case ActionType.LinearInterpolatedPositionLink: action = new LinearInterpolatedPositionLinkAction(); break; case ActionType.ArcInterpolatedPositionLink: action = new ArcInterpolatedPositionLinkAction(); break; default: break; } if (action != null) { action.Id = _index++; action.Name = $"Action {action.Id}"; Actions.Add(action); MachineStep.Actions.Add(action); } else { throw new InvalidOperationException("Action type not supported!"); } }
private void Execute(LinearPositionLinkGantryOnAction action, int notifyId) { Messenger.Send(new GantryMessage() { Master = action.MasterId, Slave = action.SlaveId, State = true }); NotifyExecuted(notifyId); }
public static void ExecuteAction(this LinearPositionLinkGantryOnAction a, int actionId = 0) { bool virtualSlave = false; Messenger.Default.Send(new CheckLinkPresenceMessage() { NotifyAction = () => virtualSlave = true }); Messenger.Default.Send(new LinearPositionGantryOnMessage() { MasterId = a.MasterId, SlaveId = a.SlaveId, BackNotifyId = actionId, VirtualSlave = virtualSlave, UnhookedSlave = a.SlaveUnhooked }); }