public void TurnOnJunction(JunctionModes junctionMode, bool reset) { if (JunctionMode == JunctionModes.Off) { JunctionMode = junctionMode; foreach (Road road in RoadList) { road.SwitchOn(reset); } } }
//-- public Junction(string jncID, IEnumerable <Road> roadList, JunctionModes junctionMode, bool overrideCtrlOnEmergency, byte maxOpenTime, byte roadTurnOverDelay) { JunctionID = jncID; RoadList.Clear(); // create a reset all function CREM.Clear(); foreach (Road r in roadList) { RoadList.Add(r); } JunctionMode = junctionMode; OverrideCtrlOnEmergency = overrideCtrlOnEmergency; MaxOpenTime = maxOpenTime; RoadTurnOverDelay = roadTurnOverDelay; ResetCycle(); TimeLeftForNextActivity = 1; log = new LogModule("CORE\\" + jncID); log.Add(new string[] { "<INIT_CONFIG>", "\tjnc_id = " + jncID, "\tjncMode = " + junctionMode, "\toverride_ctrl_on_emergency = " + overrideCtrlOnEmergency, "\tmax_open_time = " + maxOpenTime, "\troad_turn_over_delay = " + roadTurnOverDelay, "</INIT_CONFIG>" }); log.FlushBuffer(); }