Eclipse SUMO - Simulation of Urban MObility
|
#include <TrafficLight.h>
Static Public Member Functions | |
static void | addConstraint (const std::string &tlsID, const std::string &tripId, const std::string &foeSignal, const std::string &foeId, const int type=0, const int limit=0) |
static std::vector< libsumo::TraCILogic > | getAllProgramLogics (const std::string &tlsID) |
static std::vector< std::string > | getBlockingVehicles (const std::string &tlsID, int linkIndex) |
static std::vector< libsumo::TraCILogic > | getCompleteRedYellowGreenDefinition (const std::string &tlsID) |
static std::vector< libsumo::TraCISignalConstraint > | getConstraints (const std::string &tlsID, const std::string &tripId="") |
static std::vector< libsumo::TraCISignalConstraint > | getConstraintsByFoe (const std::string &foeSignal, const std::string &foeId="") |
static std::vector< std::string > | getControlledJunctions (const std::string &tlsID) |
static std::vector< std::string > | getControlledLanes (const std::string &tlsID) |
static std::vector< std::vector< libsumo::TraCILink > > | getControlledLinks (const std::string &tlsID) |
static double | getNextSwitch (const std::string &tlsID) |
static int | getPhase (const std::string &tlsID) |
static double | getPhaseDuration (const std::string &tlsID) |
static std::string | getPhaseName (const std::string &tlsID) |
static std::vector< std::string > | getPriorityVehicles (const std::string &tlsID, int linkIndex) |
static std::string | getProgram (const std::string &tlsID) |
static std::string | getRedYellowGreenState (const std::string &tlsID) |
static std::vector< std::string > | getRivalVehicles (const std::string &tlsID, int linkIndex) |
static int | getServedPersonCount (const std::string &tlsID, int index) |
static double | getSpentDuration (const std::string &tlsID) |
static bool | handleVariable (const std::string &objID, const int variable, VariableWrapper *wrapper, tcpip::Storage *paramData) |
static std::shared_ptr< VariableWrapper > | makeWrapper () |
static void | removeConstraints (const std::string &tlsID, const std::string &tripId, const std::string &foeSignal, const std::string &foeId) |
static void | setCompleteRedYellowGreenDefinition (const std::string &tlsID, const libsumo::TraCILogic &logic) |
static void | setNemaCycleLength (const std::string &tlsID, double cycleLength) |
static void | setNemaMaxGreens (const std::string &tlsID, const std::vector< double > &maxGreens) |
static void | setNemaOffset (const std::string &tlsID, double offset) |
static void | setNemaSplits (const std::string &tlsID, const std::vector< double > &splits) |
static void | setPhase (const std::string &tlsID, const int index) |
static void | setPhaseDuration (const std::string &tlsID, const double phaseDuration) |
static void | setPhaseName (const std::string &tlsID, const std::string &name) |
static void | setProgram (const std::string &tlsID, const std::string &programID) |
static void | setProgramLogic (const std::string &tlsID, const libsumo::TraCILogic &logic) |
LIBSUMO_ID_PARAMETER_API static LIBSUMO_SUBSCRIPTION_API void | setRedYellowGreenState (const std::string &tlsID, const std::string &state) |
static std::vector< libsumo::TraCISignalConstraint > | swapConstraints (const std::string &tlsID, const std::string &tripId, const std::string &foeSignal, const std::string &foeId) |
static void | updateConstraints (const std::string &vehID, std::string tripId="") |
Private Member Functions | |
TrafficLight ()=delete | |
invalidated standard constructor More... | |
Static Private Member Functions | |
static libsumo::TraCISignalConstraint | buildConstraint (const std::string &tlsID, const std::string &tripId, MSRailSignalConstraint *constraint) |
static std::vector< libsumo::TraCISignalConstraint > | findConstraintsDeadLocks (const std::string &foeId, const std::string &tripId, const std::string &foeSignal, const std::string &tlsID) |
perform swapConstraints to resolve deadlocks and return the new constraints More... | |
static std::vector< std::string > | getFutureTripIds (const std::string vehID) |
static std::vector< std::pair< std::string, std::string > > | getSwapParams (int constraintType) |
static SUMOVehicle * | getVehicleByTripId (const std::string tripOrVehID) |
static void | swapParameters (MSRailSignalConstraint *c) |
static void | swapParameters (MSRailSignalConstraint *c, const std::string &key1, const std::string &key2) |
static void | swapParameters (TraCISignalConstraint &c) |
static void | swapParameters (TraCISignalConstraint &c, const std::string &key1, const std::string &key2) |
Static Private Attributes | |
static ContextSubscriptionResults | myContextSubscriptionResults |
static SubscriptionResults | mySubscriptionResults |
Definition at line 43 of file TrafficLight.h.
|
privatedelete |
invalidated standard constructor
|
static |
Definition at line 306 of file libsumo/TrafficLight.cpp.
References MSRailSignal::addConstraint(), MSTLLogicControl::TLSLogicVariants::getDefault(), and libsumo::Helper::getTLS().
|
staticprivate |
Definition at line 958 of file libsumo/TrafficLight.cpp.
References MSRailSignalConstraint_Predecessor::cleared(), Named::getID(), Parameterised::getParametersMap(), MSRailSignalConstraint::getType(), MSRailSignalConstraint_Predecessor::isActive(), MSRailSignalConstraint_Predecessor::myFoeSignal, MSRailSignalConstraint_Predecessor::myLimit, MSRailSignalConstraint_Predecessor::myTripId, and libsumo::TraCISignalConstraint::tripId.
|
staticprivate |
perform swapConstraints to resolve deadlocks and return the new constraints
Definition at line 548 of file libsumo/TrafficLight.cpp.
References MSRailSignalConstraint_Predecessor::cleared(), SUMOVehicleParameter::depart, SUMOTrafficObject::getEdge(), MSRoute::getEdges(), Named::getID(), MSRailSignalControl::getInstance(), SUMOTrafficObject::getNumericalID(), SUMOTrafficObject::getParameter(), Parameterised::getParameter(), SUMOTrafficObject::getPositionOnLane(), SUMOVehicle::getRoute(), SUMOTrafficObject::getRoutePosition(), MSEdge::getToJunction(), SUMOVehicle::hasDeparted(), MSRailSignalConstraint_Predecessor::isActive(), MSRailSignalConstraint_Predecessor::myTripId, TL, toString(), VEHPARS_FORCE_REROUTE, SUMOVehicleParameter::wasSet(), and WRITE_WARNINGF.
|
static |
Definition at line 77 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getAllLogics(), libsumo::Helper::getTLS(), and STEPS2TIME.
Referenced by getCompleteRedYellowGreenDefinition().
|
static |
Definition at line 220 of file libsumo/TrafficLight.cpp.
References MSTrafficLightLogic::getBlockingVehicles(), MSTLLogicControl::TLSLogicVariants::getDefault(), MSTrafficLightLogic::getNumLinks(), libsumo::Helper::getTLS(), and toString().
|
inlinestatic |
Definition at line 81 of file TrafficLight.h.
References getAllProgramLogics().
|
static |
Definition at line 263 of file libsumo/TrafficLight.cpp.
References MSRailSignal::getConstraints(), MSTLLogicControl::TLSLogicVariants::getDefault(), and libsumo::Helper::getTLS().
|
static |
|
static |
Definition at line 95 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getLinks(), and libsumo::Helper::getTLS().
|
static |
Definition at line 108 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getLaneVectors(), and libsumo::Helper::getTLS().
|
static |
Definition at line 121 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), Named::getID(), MSLink::getLane(), MSTrafficLightLogic::getLaneVectors(), MSTrafficLightLogic::getLinks(), libsumo::Helper::getTLS(), and MSLink::getViaLane().
|
staticprivate |
Definition at line 782 of file libsumo/TrafficLight.cpp.
References MSNet::getInstance(), MSBaseVehicle::getParameter(), Parameterised::getParameter(), MSBaseVehicle::getStops(), MSVehicleControl::getVehicle(), and MSNet::getVehicleControl().
|
static |
Definition at line 169 of file libsumo/TrafficLight.cpp.
References libsumo::Helper::getTLS(), and STEPS2TIME.
|
static |
Definition at line 151 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getCurrentPhaseIndex(), and libsumo::Helper::getTLS().
|
static |
Definition at line 163 of file libsumo/TrafficLight.cpp.
References libsumo::Helper::getTLS(), and STEPS2TIME.
|
static |
Definition at line 157 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getCurrentPhaseDef(), MSPhaseDefinition::getName(), and libsumo::Helper::getTLS().
|
static |
Definition at line 249 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getDefault(), MSTrafficLightLogic::getNumLinks(), MSTrafficLightLogic::getPriorityVehicles(), libsumo::Helper::getTLS(), and toString().
|
static |
Definition at line 145 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getProgramID(), and libsumo::Helper::getTLS().
|
static |
Definition at line 71 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getCurrentPhaseDef(), MSPhaseDefinition::getState(), and libsumo::Helper::getTLS().
|
static |
Definition at line 235 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getDefault(), MSTrafficLightLogic::getNumLinks(), MSTrafficLightLogic::getRivalVehicles(), libsumo::Helper::getTLS(), and toString().
|
static |
Definition at line 180 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSLane::getEdge(), MSTransportable::getEdge(), MSTransportable::getLane(), MSLane::getLinkCont(), MSTrafficLightLogic::getLinksAt(), MSPerson::getNextEdge(), MSEdge::getPersons(), MSTrafficLightLogic::getPhaseNumber(), MSTrafficLightLogic::getPhases(), libsumo::Helper::getTLS(), and toString().
|
static |
Definition at line 175 of file libsumo/TrafficLight.cpp.
References libsumo::Helper::getTLS(), and STEPS2TIME.
|
staticprivate |
Definition at line 367 of file libsumo/TrafficLight.cpp.
|
staticprivate |
Definition at line 769 of file libsumo/TrafficLight.cpp.
References Named::getID(), MSNet::getInstance(), SUMOTrafficObject::getParameter(), Parameterised::getParameter(), MSNet::getVehicleControl(), MSVehicleControl::loadedVehBegin(), and MSVehicleControl::loadedVehEnd().
|
static |
Definition at line 986 of file libsumo/TrafficLight.cpp.
References libsumo::ID_COUNT, tcpip::Storage::readString(), tcpip::Storage::readUnsignedByte(), libsumo::TL_CONTROLLED_JUNCTIONS, libsumo::TL_CONTROLLED_LANES, libsumo::TL_CURRENT_PHASE, libsumo::TL_CURRENT_PROGRAM, libsumo::TL_NEXT_SWITCH, libsumo::TL_PHASE_DURATION, libsumo::TL_RED_YELLOW_GREEN_STATE, libsumo::TL_SPENT_DURATION, libsumo::TRACI_ID_LIST, libsumo::VAR_NAME, libsumo::VAR_PARAMETER, and libsumo::VAR_PARAMETER_WITH_KEY.
|
static |
Definition at line 980 of file libsumo/TrafficLight.cpp.
|
static |
Definition at line 436 of file libsumo/TrafficLight.cpp.
References MSRailSignal::getConstraints(), MSTLLogicControl::TLSLogicVariants::getDefault(), Named::getID(), libsumo::Helper::getTLS(), MSRailSignalConstraint_Predecessor::myFoeSignal, MSRailSignalConstraint_Predecessor::myTripId, and MSRailSignalConstraint::setActive().
|
inlinestatic |
Definition at line 84 of file TrafficLight.h.
References setProgramLogic().
|
static |
Definition at line 947 of file libsumo/TrafficLight.cpp.
References toString().
|
static |
Definition at line 942 of file libsumo/TrafficLight.cpp.
References toString().
|
static |
Definition at line 952 of file libsumo/TrafficLight.cpp.
References toString().
|
static |
Definition at line 937 of file libsumo/TrafficLight.cpp.
References toString().
|
static |
Definition at line 820 of file libsumo/TrafficLight.cpp.
References MSTrafficLightLogic::changeStepAndDuration(), MSPhaseDefinition::duration, MSTLLogicControl::TLSLogicVariants::getActive(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSTrafficLightLogic::getPhase(), MSTrafficLightLogic::getPhaseNumber(), libsumo::Helper::getTLS(), and toString().
|
static |
Definition at line 849 of file libsumo/TrafficLight.cpp.
References MSTrafficLightLogic::changeStepAndDuration(), MSTLLogicControl::TLSLogicVariants::getActive(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), libsumo::Helper::getTLS(), and TIME2STEPS.
|
static |
Definition at line 832 of file libsumo/TrafficLight.cpp.
References MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getCurrentPhaseDef(), and libsumo::Helper::getTLS().
|
static |
Definition at line 839 of file libsumo/TrafficLight.cpp.
References MSNet::getInstance(), libsumo::Helper::getTLS(), and MSTLLogicControl::TLSLogicVariants::switchTo().
|
static |
Definition at line 857 of file libsumo/TrafficLight.cpp.
References ACTUATED, MSTLLogicControl::TLSLogicVariants::addLogic(), MSNet::createTLWrapper(), DELAYBASED, MSTLLogicControl::TLSLogicVariants::executeOnSwitchActions(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSTLLogicControl::TLSLogicVariants::getLogic(), libsumo::Helper::getTLS(), MSNet::getTLSControl(), MSTrafficLightLogic::init(), MSPhaseDefinition::maxDuration, MSPhaseDefinition::minDuration, NEMA, MSPhaseDefinition::nextPhases, MSSimpleTrafficLightLogic::setPhases(), MSTrafficLightLogic::setTrafficLightSignals(), STATIC, TIME2STEPS, and toString().
Referenced by setCompleteRedYellowGreenDefinition().
|
static |
Definition at line 814 of file libsumo/TrafficLight.cpp.
References MSNet::getInstance(), libsumo::Helper::getTLS(), and MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline().
|
static |
Definition at line 323 of file libsumo/TrafficLight.cpp.
References MSRailSignal::addConstraint(), MSRailSignal::getConstraints(), MSTLLogicControl::TLSLogicVariants::getDefault(), Named::getID(), Parameterised::getParametersMap(), MSRailSignalConstraint::getSwappedType(), libsumo::Helper::getTLS(), MSRailSignalConstraint_Predecessor::myFoeSignal, MSRailSignalConstraint_Predecessor::myLimit, MSRailSignalConstraint_Predecessor::myTripId, MSRailSignal::removeConstraint(), and Parameterised::updateParameters().
|
staticprivate |
Definition at line 385 of file libsumo/TrafficLight.cpp.
References MSRailSignalConstraint::getType().
|
staticprivate |
Definition at line 393 of file libsumo/TrafficLight.cpp.
References Parameterised::getParameter(), Parameterised::setParameter(), and Parameterised::unsetParameter().
|
staticprivate |
Definition at line 409 of file libsumo/TrafficLight.cpp.
|
staticprivate |
Definition at line 417 of file libsumo/TrafficLight.cpp.
|
static |
Definition at line 463 of file libsumo/TrafficLight.cpp.
References MSRailSignalConstraint_Predecessor::cleared(), MSBaseVehicle::getCurrentRouteEdge(), MSRoute::getEdges(), Named::getID(), MSRailSignalControl::getInstance(), MSEdge::getLanes(), MSBaseVehicle::getParameter(), Parameterised::getParameter(), MSBaseVehicle::getRoute(), MSRailSignalControl::getSignals(), MSBaseVehicle::getStops(), MSLink::getTLLogic(), MSEdge::getToJunction(), MSJunction::getType(), libsumo::Helper::getVehicle(), MSRailSignalConstraint_Predecessor::isActive(), MSRailSignalConstraint_Predecessor::myFoeSignal, MSRailSignalConstraint_Predecessor::myTripId, and RAIL_SIGNAL.
|
staticprivate |
Definition at line 113 of file TrafficLight.h.
|
staticprivate |
Definition at line 112 of file TrafficLight.h.