public bool AusgangToggeln(FahrstrassenSignalTyp signalTyp, bool verlaengern) { if (Verfuegbarkeit() || IsAktiv) { return(true); } return(false); }
public bool FahrstrasseSchalten(FahrstrasseN el, FahrstrassenSignalTyp signal, bool verlaengern) { bool action = false; if (this.AppTyp == AppTyp.Master) { _model.ElementToggeln( signal == FahrstrassenSignalTyp.StartSignal ? "FahrstrasseN_Start" : "FahrstrasseN_Ziel", el.ID ); //action = _model.FahrstrasseSchalten(el, signal); //if (master != null) { // master.SendeAnlageZustandsDatenAnAlle(this._model.AnlagenZustandsDatenAuslesen()); //} } if (this.AppTyp == AppTyp.Slave) { if (signal == FahrstrassenSignalTyp.ZielSignal) { if (slave != null) { try { slave.SlaveAnMasterMouseClick(el.GetType().Name + "_Ziel", el.ID); } catch (Exception e) { } } } else { if (slave != null) { try { slave.SlaveAnMasterMouseClick(el.GetType().Name + "_Start", el.ID); } catch (Exception e) { } } } return(true); } return(action); }
public bool FahrstrasseSchalten(FahrstrasseN el, FahrstrassenSignalTyp signalTyp) { if (el != null) { bool verlaengern = el.StartSignal.IsLocked; if (!el.IsAktiv && !verlaengern) { Thread fahrstraßenStartThread = new Thread(this.FahrstraßeStarten); fahrstraßenStartThread.Start(el); } bool action = el.AusgangToggeln(signalTyp, verlaengern && !el.StartSignal.AutoStart); //if (action && _ardController.IsPortOpen()) // OnAnlagenzustandChanged(el.Ausgang); if (signalTyp == FahrstrassenSignalTyp.ZielSignal) { this.ZeichnenElemente.ZugDateiSpeichern(); OnZugListeChanged(); } return(action); } return(false); }