Eclipse SUMO - Simulation of Urban MObility
MSTransportableDevice_Routing Class Reference

A device that performs person rerouting based on current edge speeds. More...

#include <MSTransportableDevice_Routing.h>

Inheritance diagram for MSTransportableDevice_Routing:
[legend]
Collaboration diagram for MSTransportableDevice_Routing:
[legend]

Public Member Functions

void addTo (const StoringVisitor &cont) const
 Adds this object to the given container. More...
 
const std::string deviceName () const
 return the name for this type of device More...
 
virtual void generateOutput (OutputDevice *) const
 Called on vehicle deletion to extend tripinfo and other outputs. More...
 
MSTransportablegetHolder () const
 Returns the person that holds this device. More...
 
const std::string & getID () const
 Returns the id. More...
 
std::string getParameter (const std::string &key) const
 try to retrieve the given parameter from this device. Throw exception for unsupported key More...
 
void loadState (const SUMOSAXAttributes &attrs)
 Loads the state of the device from the given description. More...
 
virtual void notifyParking ()
 called to update state for parking vehicles More...
 
void reroute (const SUMOTime currentTime, const bool onInit=false)
 initiate the rerouting, create router / thread pool on first use More...
 
void saveState (OutputDevice &out) const
 Saves the state of the device. More...
 
virtual void setID (const std::string &newID)
 resets the id More...
 
void setParameter (const std::string &key, const std::string &value)
 try to set the given parameter for this device. Throw exception for unsupported key More...
 
 ~MSTransportableDevice_Routing ()
 Destructor. More...
 

Static Public Member Functions

static void buildDevices (MSTransportable &p, std::vector< MSTransportableDevice * > &into)
 Build devices for the given person, if needed. More...
 
static void buildTransportableDevices (MSTransportable &p, std::vector< MSTransportableDevice * > &into)
 Build devices for the given person, if needed. More...
 
static void buildVehicleDevices (SUMOVehicle &v, std::vector< MSVehicleDevice * > &into)
 Build devices for the given vehicle, if needed. More...
 
static bool checkOptions (OptionsCont &oc)
 checks MSTransportableDevice_Routing-options More...
 
static void cleanupAll ()
 perform cleanup for all devices More...
 
static std::mt19937 * getEquipmentRNG ()
 
template<class T >
static std::string getIDSecure (const T *obj, const std::string &fallBack="NULL")
 get an identifier for Named-like object which may be Null More...
 
static void insertOptions (OptionsCont &oc)
 Inserts MSTransportableDevice_Routing-options. More...
 

Static Protected Member Functions

Helper methods for device assignment
static void insertDefaultAssignmentOptions (const std::string &deviceName, const std::string &optionsTopic, OptionsCont &oc, const bool isPerson=false)
 Adds common command options that allow to assign devices to vehicles. More...
 
template<class DEVICEHOLDER >
static bool equippedByDefaultAssignmentOptions (const OptionsCont &oc, const std::string &deviceName, DEVICEHOLDER &v, bool outputOptionSet, const bool isPerson=false)
 Determines whether a vehicle should get a certain device. More...
 
Helper methods for parsing parameters
static std::string getStringParam (const SUMOVehicle &v, const OptionsCont &oc, std::string paramName, std::string deflt, bool required)
 
static double getFloatParam (const SUMOVehicle &v, const OptionsCont &oc, std::string paramName, double deflt, bool required)
 
static bool getBoolParam (const SUMOVehicle &v, const OptionsCont &oc, std::string paramName, bool deflt, bool required)
 

Protected Attributes

MSTransportablemyHolder
 The person that stores the device. More...
 
std::string myID
 The name of the object. More...
 

Private Member Functions

 MSTransportableDevice_Routing (const MSTransportableDevice_Routing &)
 Invalidated copy constructor. More...
 
 MSTransportableDevice_Routing (MSTransportable &holder, const std::string &id, SUMOTime period)
 Constructor. More...
 
MSTransportableDevice_Routingoperator= (const MSTransportableDevice_Routing &)
 Invalidated assignment operator. More...
 
SUMOTime wrappedRerouteCommandExecute (SUMOTime currentTime)
 Performs rerouting after a period. More...
 

Private Attributes

SUMOTime myLastRouting
 The last time a routing took place. More...
 
SUMOTime myPeriod
 The period with which a vehicle shall be rerouted. More...
 
WrappingCommand< MSTransportableDevice_Routing > * myRerouteCommand
 The (optional) command responsible for rerouting. More...
 

Static Private Attributes

static std::mt19937 myEquipmentRNG
 A random number generator used to choose from vtype/route distributions and computing the speed factors. More...
 
static std::map< std::string, std::set< std::string > > myExplicitIDs
 vehicles which explicitly carry a device, sorted by device, first More...
 

Detailed Description

A device that performs person rerouting based on current edge speeds.

The routing-device system consists of in-vehicle devices that perform the routing and simulation-wide static methods for collecting edge weights and parallelizing in MSRoutingEngine.

A device is assigned using the common explicit/probability - procedure.

A device computes a new route for a person as soon as a personTrip appears in the plan.

Definition at line 49 of file MSTransportableDevice_Routing.h.

Constructor & Destructor Documentation

◆ ~MSTransportableDevice_Routing()

MSTransportableDevice_Routing::~MSTransportableDevice_Routing ( )

Destructor.

Definition at line 77 of file MSTransportableDevice_Routing.cpp.

References WrappingCommand< T >::deschedule(), and myRerouteCommand.

◆ MSTransportableDevice_Routing() [1/2]

MSTransportableDevice_Routing::MSTransportableDevice_Routing ( MSTransportable holder,
const std::string &  id,
SUMOTime  period 
)
private

Constructor.

Parameters
[in]holderThe vehicle that holds this device
[in]idThe ID of the device
[in]periodThe period with which a new route shall be searched

Definition at line 66 of file MSTransportableDevice_Routing.cpp.

References MSEventControl::addEvent(), SUMOVehicleParameter::depart, MSNet::getInsertionEvents(), MSNet::getInstance(), MSTransportable::getParameter(), MSRoutingEngine::hasEdgeUpdates(), VEHPARS_FORCE_REROUTE, SUMOVehicleParameter::wasSet(), and wrappedRerouteCommandExecute().

Referenced by buildDevices().

Here is the caller graph for this function:

◆ MSTransportableDevice_Routing() [2/2]

MSTransportableDevice_Routing::MSTransportableDevice_Routing ( const MSTransportableDevice_Routing )
private

Invalidated copy constructor.

Member Function Documentation

◆ addTo()

void Named::addTo ( const StoringVisitor cont) const
inlineinherited

Adds this object to the given container.

Parameters
[in,filled]cont The container to add this item to

Definition at line 117 of file Named.h.

References Named::StoringVisitor::add().

◆ buildDevices()

void MSTransportableDevice_Routing::buildDevices ( MSTransportable p,
std::vector< MSTransportableDevice * > &  into 
)
static

Build devices for the given person, if needed.

The options are read and evaluated whether rerouting-devices shall be built for the given person.

When the first device is built, the static container of edge weights used for routing is initialised with the mean speed the edges allow. In addition, an event is generated which updates these weights is built and added to the list of events to execute at a simulation end.

The built device is stored in the given vector.

Parameters
[in]pThe person for which a device may be built
[filled]into The vector to store the built device in

Definition at line 51 of file MSTransportableDevice_Routing.cpp.

References MSDevice::equippedByDefaultAssignmentOptions(), Named::getID(), OptionsCont::getOptions(), MSTransportable::getParameter(), OptionsCont::getString(), MSRoutingEngine::initWeightUpdate(), MSTransportableDevice_Routing(), string2time(), VEHPARS_FORCE_REROUTE, and SUMOVehicleParameter::wasSet().

Referenced by MSDevice::buildTransportableDevices().

Here is the caller graph for this function:

◆ buildTransportableDevices()

void MSDevice::buildTransportableDevices ( MSTransportable p,
std::vector< MSTransportableDevice * > &  into 
)
staticinherited

Build devices for the given person, if needed.

Parameters
[in]pThe person for which a device may be built
[filled]into The vector to store the built device in

Definition at line 119 of file MSDevice.cpp.

References buildDevices(), and MSTransportableDevice_FCD::buildDevices().

Referenced by MSTransportable::MSTransportable().

Here is the caller graph for this function:

◆ buildVehicleDevices()

void MSDevice::buildVehicleDevices ( SUMOVehicle v,
std::vector< MSVehicleDevice * > &  into 
)
staticinherited

◆ checkOptions()

static bool MSTransportableDevice_Routing::checkOptions ( OptionsCont oc)
static

checks MSTransportableDevice_Routing-options

Parameters
[filled]oc The options container with the user-defined options

◆ cleanupAll()

void MSDevice::cleanupAll ( )
staticinherited

perform cleanup for all devices

Definition at line 126 of file MSDevice.cpp.

References MSDevice_FCD::cleanup(), MSDevice_Taxi::cleanup(), MSDevice_Tripinfo::cleanup(), and MSRoutingEngine::cleanup().

Referenced by MSNet::clearAll().

Here is the caller graph for this function:

◆ deviceName()

const std::string MSTransportableDevice_Routing::deviceName ( ) const
inlinevirtual

return the name for this type of device

Implements MSDevice.

Definition at line 85 of file MSTransportableDevice_Routing.h.

Referenced by getParameter(), and setParameter().

Here is the caller graph for this function:

◆ equippedByDefaultAssignmentOptions()

template<class DEVICEHOLDER >
bool MSDevice::equippedByDefaultAssignmentOptions ( const OptionsCont oc,
const std::string &  deviceName,
DEVICEHOLDER &  v,
bool  outputOptionSet,
const bool  isPerson = false 
)
staticprotectedinherited

◆ generateOutput()

virtual void MSDevice::generateOutput ( OutputDevice ) const
inlinevirtualinherited

Called on vehicle deletion to extend tripinfo and other outputs.

The device may write some statistics into the tripinfo output and may choose to finalize its own outputs. It is assumed that the information written to tripinfoOut is a valid xml-snipplet, which will be embedded within the vehicle's tripinfo information.

The device should use the openTag / closeTag methods of the OutputDevice for correct indentation.

Exceptions
IOErrornot yet implemented

Reimplemented in MSDevice_Vehroutes, MSDevice_Tripinfo, MSDevice_Taxi, MSDevice_SSM, MSDevice_Example, MSDevice_Emissions, MSDevice_ElecHybrid, and MSDevice_Bluelight.

Definition at line 123 of file MSDevice.h.

◆ getBoolParam()

bool MSDevice::getBoolParam ( const SUMOVehicle v,
const OptionsCont oc,
std::string  paramName,
bool  deflt,
bool  required 
)
staticprotectedinherited

Definition at line 198 of file MSDevice.cpp.

References MSDevice::getStringParam(), StringUtils::toBool(), toString(), and WRITE_ERROR.

Referenced by MSDevice_ToC::buildVehicleDevices().

Here is the caller graph for this function:

◆ getEquipmentRNG()

static std::mt19937* MSDevice::getEquipmentRNG ( )
inlinestaticinherited

Definition at line 88 of file MSDevice.h.

References MSDevice::myEquipmentRNG.

Referenced by NLBuilder::initRandomness(), MSStateHandler::myStartElement(), and MSStateHandler::saveRNGs().

Here is the caller graph for this function:

◆ getFloatParam()

◆ getHolder()

MSTransportable& MSTransportableDevice::getHolder ( ) const
inlineinherited

Returns the person that holds this device.

Returns
The person that holds this device

Definition at line 70 of file MSTransportableDevice.h.

References MSTransportableDevice::myHolder.

◆ getID()

const std::string& Named::getID ( ) const
inlineinherited

Returns the id.

Returns
The stored id

Definition at line 73 of file Named.h.

References Named::myID.

Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSCFModel_ACC::_v(), MSCFModel_CACC::_v(), MSCFModel_Wiedemann::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSTransportableControl::abortAnyWaitingForVehicle(), MSLaneChangerSublane::abortLCManeuver(), MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), MSVehicleTransfer::add(), MSPModel_Striping::add(), PCPolyContainer::add(), ShapeContainer::add(), MSDetectorControl::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSChargingStation::addChargeValueForOutput(), MSOverheadWire::addChargeValueForOutput(), NBNodeCont::addCluster2Join(), NLHandler::addConnection(), NBLoadedSUMOTLDef::addConnection(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSLCM_SL2015::addLCSpeedAdvice(), MSTLLogicControl::TLSLogicVariants::addLogic(), MSLane::addNeigh(), RONet::addNode(), MSTractionSubstation::addOverheadWireClampToCircuit(), MSTractionSubstation::addOverheadWireInnerSegmentToCircuit(), MSTractionSubstation::addOverheadWireSegmentToCircuit(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), MSDispatch::addReservation(), MSRouteHandler::addRide(), RONet::addRouteDef(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), RORouteHandler::addStop(), ROVehicle::addStop(), MSBaseVehicle::addStop(), MSNet::addStoppingPlace(), MSVehicle::addTransportable(), AGActivityTripWriter::addTrip(), MSRouteHandler::addVehicleStopsToImplicitRoute(), NIXMLConnectionsHandler::addWalkingArea(), MSTransportable::appendStage(), LIBSUMO_NAMESPACE::Person::appendWalkingStage(), MSCFModel::applyHeadwayAndSpeedDifferencePerceptionErrors(), MSCFModel::applyHeadwayPerceptionError(), libsumo::Helper::applySubscriptionFilterLateralDistanceSinglePass(), libsumo::Helper::applySubscriptionFilters(), MSDevice_ToC::awarenessRecoveryStep(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSPModel_Striping::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), MSVehicle::boardTransportables(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), buildDevices(), MSTransportableDevice_FCD::buildDevices(), NIImporter_VISUM::buildDistrictNode(), MSRailSignal::LinkInfo::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), NBEdge::buildInnerEdges(), NLTriggerBuilder::buildInnerOverheadWireSegments(), GNETLSEditorFrame::buildInternalLanes(), NIVissimEdge::buildNBEdge(), NGEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSRailSignal::DriveWay::buildRoute(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), LIBSUMO_NAMESPACE::Vehicle::buildStopParameters(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_BTreceiver::buildVehicleDevices(), MSDevice_BTsender::buildVehicleDevices(), MSDevice_DriverState::buildVehicleDevices(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Emissions::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice_FCD::buildVehicleDevices(), MSDevice_Routing::buildVehicleDevices(), MSDevice_SSM::buildVehicleDevices(), MSDevice_Taxi::buildVehicleDevices(), MSDevice_ToC::buildVehicleDevices(), MSDevice_Tripinfo::buildVehicleDevices(), MSDevice_Transportable::buildVehicleDevices(), MSDevice_Vehroutes::buildVehicleDevices(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSE2Collector::calculateTimeLossAndTimeOnDetector(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLaneChanger::change(), MSLaneChangerSublane::change(), MSLCM_SL2015::changed(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), LIBSUMO_NAMESPACE::Vehicle::changeTarget(), MSTLLogicControl::check2Switch(), MSEdge::checkAndRegisterBiDirEdge(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeSublane(), NBEdgeCont::checkConsistency(), MSRailSignal::DriveWay::checkCrossingFlanks(), MSDevice_ToC::checkDynamicToC(), MSLane::checkFailure(), MSLane::checkForPedestrians(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), MSDevice_Battery::checkParam(), MSDevice_ElecHybrid::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSAbstractLaneChangeModel::checkTraCICommands(), MSLaneChanger::checkTraCICommands(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), ShapeContainer::clearHighlights(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), MSDevice_SSM::closeEncounter(), MSRouteHandler::closeFlow(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), MSLCM_SL2015::commitManoeuvre(), IntermodalRouter< E, L, N, V >::compute(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), MSVehicle::computeAngle(), MSDispatch::computeDetourTime(), NBNodeShapeComputer::computeEdgeBoundaries(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeTypeComputer::computeNodeTypes(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), MSLCM_SL2015::computeSpeedLat(), MSDevice_SSM::computeSSMs(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), NGNet::connect(), MSRailSignal::constraintsAllow(), MSLaneChanger::continueChange(), MSLaneChangerSublane::continueChangeSublane(), LIBSUMO_NAMESPACE::Person::convertTraCIStage(), NBLoadedSUMOTLDef::copyIndices(), NBOwnTLDef::corridorLike(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), MSDevice_Taxi::customerArrived(), MSDevice_ToC::deactivateDeliberateLCs(), MSRailSignal::DriveWay::deadlockLaneOccupied(), libsumo::Helper::debugPrint(), MSLCM_SL2015::decideDirection(), MSActuatedTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSVehicleControl::deleteVehicle(), MSDevice_ElecHybrid::deleteVehicleFromCircuit(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSE3Collector::detectorUpdate(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), NBNodeCont::discardTrafficLights(), MSDispatch_Greedy::dispatch(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), MSDevice_Taxi::dispatchShared(), MSDevice_SSM::Encounter::Encounter(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), MSTransportableControl::erase(), METriggeredCalibrator::execute(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSCalibrator::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), MSCFModel::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSLaneChanger::findCandidate(), libsumo::Helper::findCloserLane(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), LIBSUMO_NAMESPACE::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), MSDevice_SSM::flushGlobalMeasures(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), NBTrafficLightDefinition::forbids(), NBNodeCont::generateNodeClusters(), MSDevice_Tripinfo::generateOutput(), GUITrafficLightLogicWrapper::getActiveTLLogic(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), LIBSUMO_NAMESPACE::Vehicle::getBestLanes(), NBOwnTLDef::getBestPair(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSRailSignal::getClickableTLLinkID(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), LIBSUMO_NAMESPACE::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), NBNodeShapeComputer::getDefaultRadius(), MSLink::getDescription(), MSStop::getDescription(), NBTrafficLightDefinition::getDescription(), GUIPerson::getDestinationEdgeID(), MSDevice_SSM::getDetectionRange(), RODFNet::getDetectorEdge(), MSActuatedTrafficLightLogic::getDetectorPriority(), MSRailSignal::LinkInfo::getDriveWay(), GUIPerson::getEdgeID(), GUIMEVehicle::getEdgeID(), MSMeanData::getEdgeID(), libsumo::Calibrator::getEdgeID(), LIBSUMO_NAMESPACE::RouteProbe::getEdgeID(), MSDevice_SSM::getExtraTime(), MSPModel_Remote::getFirstPedestrianLane(), MSLane::getFirstVehicleInformation(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), MSCalibrator::getID(), NBEdge::getID(), MSRailSignal::getJunctionLinkID(), RORouteHandler::getJunctionTaz(), libsumo::Calibrator::getLaneID(), MSParkingArea::getLastFreePosWithReservation(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLaneChangerSublane::getLeaders(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), MSDevice_SSM::getMeasuresAndThresholds(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPModel_Striping::getNeighboringObstacles(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextLaneObstacles(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), MSDevice_SSM::getOutputFilename(), MSDevice_ElecHybrid::getOverheadWireSegmentID(), MSOverheadWire::getOverheadWireSegmentName(), MSDevice_ToC::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), GUIContainer::getParameterWindow(), GUILane::getParameterWindow(), GUITrafficLightLogicWrapper::getParameterWindow(), GUILane::getParentName(), MSLane::getPartialBehind(), MSSimpleDriverState::getPerceivedHeadway(), MSSimpleDriverState::getPerceivedSpeedDifference(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), PolygonDynamics::getPolygonID(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), MSBaseVehicle::getPrefixedParameter(), MSCFModel_CC::getRadarMeasurements(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), LIBSUMO_NAMESPACE::Vehicle::getRoadID(), MSLCHelper::getRoundaboutDistBonus(), LIBSUMO_NAMESPACE::Vehicle::getRouteID(), libsumo::Calibrator::getRouteProbeID(), MSBaseVehicle::getRouteValidity(), MSVehicle::getSafeFollowSpeed(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getSingularType(), MSTransportable::getSingularType(), LIBSUMO_NAMESPACE::Person::getStage(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSStageTrip::getStageSummary(), MSStageWaiting::getStageSummary(), MSStageDriving::getStageSummary(), MSStageTranship::getStageSummary(), MSDevice_Taxi::getStopLane(), MSNet::getStoppingPlaceID(), MSDevice::getStringParam(), MSLane::getSurroundingVehicles(), MSActuatedTrafficLightLogic::getTarget(), LIBSUMO_NAMESPACE::Person::getTaxiReservations(), MSRailSignal::getTLLinkID(), NIImporter_OpenDrive::getTLSSecure(), MSDevice_ElecHybrid::getTractionSubstationID(), PedestrianEdge< E, L, N, V >::getTravelTime(), MSVehicle::getUpcomingLanesUntil(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), LIBSUMO_NAMESPACE::Person::getVehicle(), MSPModel_Striping::getVehicleObstacles(), MSDevice_SSM::getVehiclesOnJunction(), MSRailSignalConstraint::getVehID(), MSStageDriving::getWaitingDescription(), MSEdge::getWaitingVehicle(), MSLink::getZipperSpeed(), GNEEdge::GNEEdge(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSRailSignal::hasInsertionConstraint(), MSRailSignal::hasOncomingRailTraffic(), MSBaseVehicle::hasValidRouteStart(), MSVehicle::hasValidRouteStart(), MSBaseVehicle::haveValidStopEdges(), libsumo::POI::highlight(), LIBSUMO_NAMESPACE::Vehicle::highlight(), MSIdling_Stop::idle(), MSIdling_RandomCircling::idle(), MSVehicle::ignoreRed(), MSLCM_LC2013::inform(), MSLCM_SL2015::inform(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), NBEdge::init(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSE2Collector::initAuxiliaries(), MESegment::initialise(), MSTrafficLightLogic::initMesoTLSPenalties(), PolygonDynamics::initTrackedPosition(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), MSCFModel_IDM::insertionFollowSpeed(), MSEdge::insertVehicle(), MSLane::integrateNewVehicles(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSVehicle::isLeader(), MESegment::isOpen(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), MSStageDriving::isWaitingFor(), MESegment::jamThresholdForSpeed(), NBNodeCont::joinSameJunctions(), MSVehicle::joinTrainPartFront(), MSAbstractLaneChangeModel::laneChangeOutput(), MSVehicle::lateralDistanceToLane(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSVehicle::leaveLane(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), ODDistrictCont::makeDistricts(), MSE2Collector::makeMoveNotification(), MSE2Collector::makeVehicleInfo(), MSSOTLE2Sensors::meanVehiclesSpeed(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), MSDevice_ToC::MRMExecutionStep(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSDevice_ElecHybrid::MSDevice_ElecHybrid(), MSDevice_Taxi::MSDevice_Taxi(), MSDevice_ToC::MSDevice_ToC(), MSE2Collector::MSE2Collector(), MSLCM_LC2013::MSLCM_LC2013(), MSSimpleDriverState::MSSimpleDriverState(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), MSStateHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), MSPModel_Striping::nextBlocking(), MSDevice_ElecHybrid::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_ElecHybrid::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Transportable::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE2Collector::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_ElecHybrid::notifyMove(), MSDevice_Battery::notifyMove(), MSDevice_Bluelight::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_Example::notifyMove(), MSDevice_SSM::notifyMove(), MSDevice_Transportable::notifyMove(), MSE2Collector::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_ToC::notifyMove(), MSE3Collector::MSE3LeaveReminder::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), GNETLSEditorFrame::onCmdDefSwitch(), GUIViewTraffic::onGamingClick(), MSVehicle::onRemovalFromNet(), MSLink::opened(), RORouteHandler::openRoute(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), MSEdge::transportable_by_position_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), RODFNet::idComp::operator()(), MSLaneChangerSublane::outputLCStarted(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_Turns(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildOverheadWireSection(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSCFModel_CC::performAutoLaneChange(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), PolygonDynamics::PolygonDynamics(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), MSLCM_SL2015::prepareStep(), MSDevice_Taxi::prepareStop(), MSAbstractLaneChangeModel::primaryLaneChanged(), AGStreet::print(), MSStageDriving::proceed(), MSDevice_SSM::processEncounters(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkApproaches(), MSVehicle::processNextStop(), NIXMLNodesHandler::processNodeType(), TraCIServerAPI_Vehicle::processSet(), MEVehicle::processStop(), MSVehicle::processTraCISpeedControl(), NIXMLNodesHandler::processTrafficLightDefinitions(), MSDelayBasedTrafficLightLogic::proposeProlongation(), NBNodeCont::pruneClusterFringe(), NBNodeCont::pruneSlipLaneNodes(), MSPModel_Striping::PState::PState(), MSOffTrafficLightLogic::rebuildPhase(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), MSRailSignalControl::registerProtectedDriveway(), MSLink::removeApproaching(), MSVehicle::removePassedDriveItems(), GNEJunction::removeTLSConnections(), NBNodeCont::rename(), RORouteDef::repairCurrentRoute(), GNEJunction::replaceIncomingConnections(), MSVehicle::replaceParkingArea(), MSBaseVehicle::replaceRouteEdges(), MSVehicle::replaceStop(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSDevice_SSM::requestsTrajectories(), MSDevice_ToC::requestToC(), MSPerson::reroute(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSTransportable::rerouteParkingArea(), MSDevice_ToC::resetDeliberateLCs(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), LIBSUMO_NAMESPACE::Vehicle::resume(), MSRailSignal::retrieveDriveWay(), NIImporter_OpenDrive::retrieveSignalEdges(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), MSStageWaiting::routeOutput(), MSStageDriving::routeOutput(), MSLane::safeInsertionSpeed(), LIBSUMO_NAMESPACE::RouteProbe::sampleCurrentRouteID(), LIBSUMO_NAMESPACE::RouteProbe::sampleLastRouteID(), RONet::saveAndRemoveRoutesUntil(), ROPerson::Ride::saveAsXML(), ROVehicle::saveAsXML(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSBaseVehicle::saveState(), MSLane::saveState(), MSTransportable::saveState(), MESegment::saveState(), MSDevice::saveState(), MSDevice_Routing::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), saveState(), MSStageDriving::saveState(), MSCalibrator::scheduleRemoval(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSVehicle::setAngle(), MSLink::setApproaching(), MSVehicle::setApproachingForAllLinks(), MSStageTrip::setArrived(), NBNodeCont::setAsTLControlled(), MSSimpleDriverState::setAwareness(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NLEdgeControlBuilder::setDefaultStopOffsets(), MSChargingStation::setEfficency(), MSAbstractLaneChangeModel::setManeuverDist(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), MSLCM_SL2015::setOwnState(), MSActuatedTrafficLightLogic::setParameter(), MSDevice_ToC::setParameter(), MSCFModel_CACC::setParameter(), MSCFModel_CC::setParameter(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), libsumo::Helper::setRemoteControlled(), MSLink::setRequestInformation(), LIBSUMO_NAMESPACE::Vehicle::setRoute(), LIBSUMO_NAMESPACE::Vehicle::setRouteID(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), MSStageDriving::setVehicle(), MSOverheadWire::setVoltage(), NBEdge::shiftPositionAtNode(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSStopOut::stopStarted(), MSLane::succLinkSec(), MSDevice_ToC::switchHolderType(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), MSDevice_ToC::ToCPreparationStep(), MSDevice_ToC::triggerDownwardToC(), MSDevice_ToC::triggerMRM(), MSDevice_ToC::triggerUpwardToC(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), MSSimpleDriverState::update(), PolygonDynamics::update(), MSDevice_SSM::updateAndWriteOutput(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffsets(), MSVehicle::updateDriveItems(), MSRailSignal::updateDriveway(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::updateFurtherLanes(), MSLCM_SL2015::updateGaps(), GNETLSEditorFrame::TLSJunction::updateJunctionDescription(), GNENetHelper::AttributeCarriers::updateJunctionID(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateShadowLane(), MSVehicle::updateState(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), MSDevice_SSM::useGeoCoords(), NBNodeTypeComputer::validateRailCrossings(), libsumo::Helper::VehicleStateListener::vehicleStateChanged(), TraCIServer::vehicleStateChanged(), MSDynamicShapeUpdater::vehicleStateChanged(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSInstantInductLoop::write(), NBParking::write(), MSElecHybridExport::write(), MSFCDExport::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSElecHybridExport::writeAggregated(), MSLink::writeApproaching(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), MSTractionSubstation::writeOut(), MSDevice_ToC::writeOutput(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSOverheadWire::writeOverheadWireSegmentOutput(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_SUMO::writeTrafficLight(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), MSDevice_Transportable::~MSDevice_Transportable(), MSTriggeredRerouter::~MSTriggeredRerouter(), and RONet::~RONet().

◆ getIDSecure()

template<class T >
static std::string Named::getIDSecure ( const T *  obj,
const std::string &  fallBack = "NULL" 
)
inlinestaticinherited

get an identifier for Named-like object which may be Null

Definition at line 66 of file Named.h.

Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), NBRailwayTopologyAnalyzer::assignDirectionPriority(), MSLaneChanger::changeOpposite(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), AStarRouter< E, V >::compute(), DijkstraRouter< E, V >::compute(), NBOwnTLDef::computeLogicAndConts(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSRailSignal::DriveWay::findProtection(), NBPTLineCont::findWay(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), MSVehicle::getBackPositionOnLane(), NBOwnTLDef::getBestCombination(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSLaneChanger::getColumnleader(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), GUIVehicle::getLaneID(), LIBSUMO_NAMESPACE::Person::getLaneID(), MSVehicle::getLatOffset(), MSLane::getLeaderOnConsecutive(), MSLaneChanger::getRealLeader(), GUIVehicle::getShadowLaneID(), GUIVehicle::getTargetLaneID(), MSDevice_SSM::getVehiclesOnJunction(), MSCFModel_IDM::insertionFollowSpeed(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToStringSorting(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingArea(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().

◆ getParameter()

std::string MSTransportableDevice_Routing::getParameter ( const std::string &  key) const
virtual

try to retrieve the given parameter from this device. Throw exception for unsupported key

Reimplemented from MSDevice.

Definition at line 105 of file MSTransportableDevice_Routing.cpp.

References deviceName(), myPeriod, and time2string().

◆ getStringParam()

std::string MSDevice::getStringParam ( const SUMOVehicle v,
const OptionsCont oc,
std::string  paramName,
std::string  deflt,
bool  required 
)
staticprotectedinherited

◆ insertDefaultAssignmentOptions()

void MSDevice::insertDefaultAssignmentOptions ( const std::string &  deviceName,
const std::string &  optionsTopic,
OptionsCont oc,
const bool  isPerson = false 
)
staticprotectedinherited

Adds common command options that allow to assign devices to vehicles.

Parameters
[in]deviceNameThe name of the device type
[in]optionsTopicThe options topic into which the options shall be added
[filled]oc The options container to add the options to

Definition at line 134 of file MSDevice.cpp.

References OptionsCont::addDescription(), OptionsCont::addSynonyme(), MSDevice::deviceName(), and OptionsCont::doRegister().

Referenced by MSDevice_Battery::insertOptions(), MSDevice_Bluelight::insertOptions(), MSDevice_BTreceiver::insertOptions(), MSDevice_BTsender::insertOptions(), MSDevice_DriverState::insertOptions(), MSDevice_ElecHybrid::insertOptions(), MSDevice_Emissions::insertOptions(), MSDevice_Example::insertOptions(), MSDevice_FCD::insertOptions(), MSDevice_Routing::insertOptions(), MSDevice_SSM::insertOptions(), MSDevice_Taxi::insertOptions(), MSDevice_ToC::insertOptions(), MSDevice_Tripinfo::insertOptions(), MSDevice_Vehroutes::insertOptions(), MSTransportableDevice_FCD::insertOptions(), and insertOptions().

Here is the caller graph for this function:

◆ insertOptions()

void MSTransportableDevice_Routing::insertOptions ( OptionsCont oc)
static

Inserts MSTransportableDevice_Routing-options.

Parameters
[filled]oc The options container to add the options to

Definition at line 42 of file MSTransportableDevice_Routing.cpp.

References OptionsCont::addDescription(), OptionsCont::addSynonyme(), OptionsCont::doRegister(), and MSDevice::insertDefaultAssignmentOptions().

Referenced by MSDevice::insertOptions().

Here is the caller graph for this function:

◆ loadState()

void MSTransportableDevice_Routing::loadState ( const SUMOSAXAttributes attrs)
virtual

Loads the state of the device from the given description.

Parameters
[in]attrsXML attributes describing the current state

Reimplemented from MSDevice.

Definition at line 148 of file MSTransportableDevice_Routing.cpp.

References SUMOSAXAttributes::getString(), myPeriod, and SUMO_ATTR_STATE.

◆ notifyParking()

virtual void MSDevice::notifyParking ( )
inlinevirtualinherited

called to update state for parking vehicles

Reimplemented in MSDevice_Battery.

Definition at line 152 of file MSDevice.h.

◆ operator=()

MSTransportableDevice_Routing& MSTransportableDevice_Routing::operator= ( const MSTransportableDevice_Routing )
private

Invalidated assignment operator.

◆ reroute()

void MSTransportableDevice_Routing::reroute ( const SUMOTime  currentTime,
const bool  onInit = false 
)

initiate the rerouting, create router / thread pool on first use

Definition at line 93 of file MSTransportableDevice_Routing.cpp.

References MSRoutingEngine::getLastAdaptation(), MSRoutingEngine::initEdgeWeights(), myLastRouting, and SVC_PEDESTRIAN.

Referenced by wrappedRerouteCommandExecute().

Here is the caller graph for this function:

◆ saveState()

void MSTransportableDevice_Routing::saveState ( OutputDevice out) const
virtual

Saves the state of the device.

Parameters
[in]outThe OutputDevice to write the information into

Reimplemented from MSDevice.

Definition at line 137 of file MSTransportableDevice_Routing.cpp.

References OutputDevice::closeTag(), Named::getID(), myPeriod, OutputDevice::openTag(), SUMO_ATTR_ID, SUMO_ATTR_STATE, SUMO_TAG_DEVICE, toString(), and OutputDevice::writeAttr().

◆ setID()

virtual void Named::setID ( const std::string &  newID)
inlinevirtualinherited

resets the id

Parameters
[in]newIDThe new id of this object

Reimplemented in MSTransportable, and MSBaseVehicle.

Definition at line 81 of file Named.h.

References Named::myID.

Referenced by Distribution_Parameterized::parse(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdgeCont::rename(), NBNodeCont::rename(), GNEJunction::setAttribute(), and IntermodalNetwork< E, L, N, V >::splitEdge().

Here is the caller graph for this function:

◆ setParameter()

void MSTransportableDevice_Routing::setParameter ( const std::string &  key,
const std::string &  value 
)
virtual

try to set the given parameter for this device. Throw exception for unsupported key

Reimplemented from MSDevice.

Definition at line 114 of file MSTransportableDevice_Routing.cpp.

References MSEventControl::addEvent(), WrappingCommand< T >::deschedule(), deviceName(), MSNet::getInsertionEvents(), MSNet::getInstance(), myPeriod, myRerouteCommand, SIMSTEP, TIME2STEPS, StringUtils::toDouble(), and wrappedRerouteCommandExecute().

◆ wrappedRerouteCommandExecute()

SUMOTime MSTransportableDevice_Routing::wrappedRerouteCommandExecute ( SUMOTime  currentTime)
private

Performs rerouting after a period.

A new route is computed by calling the vehicle's "reroute" method, supplying "getEffort" as the edge effort retrieval method.

This method is called from the event handler at the begin of a simulation step after the rerouting period is over. The reroute period is returned.

Parameters
[in]currentTimeThe current simulation time
Returns
The offset to the next call (the rerouting period "myPeriod")
See also
MSVehicle::reroute
MSEventHandler
WrappingCommand

Definition at line 86 of file MSTransportableDevice_Routing.cpp.

References myPeriod, and reroute().

Referenced by MSTransportableDevice_Routing(), and setParameter().

Here is the caller graph for this function:

Field Documentation

◆ myEquipmentRNG

std::mt19937 MSDevice::myEquipmentRNG
staticprivateinherited

A random number generator used to choose from vtype/route distributions and computing the speed factors.

Definition at line 190 of file MSDevice.h.

Referenced by MSDevice::equippedByDefaultAssignmentOptions(), and MSDevice::getEquipmentRNG().

◆ myExplicitIDs

std::map< std::string, std::set< std::string > > MSDevice::myExplicitIDs
staticprivateinherited

vehicles which explicitly carry a device, sorted by device, first

Definition at line 187 of file MSDevice.h.

Referenced by MSDevice::equippedByDefaultAssignmentOptions().

◆ myHolder

MSTransportable& MSTransportableDevice::myHolder
protectedinherited

The person that stores the device.

Definition at line 76 of file MSTransportableDevice.h.

Referenced by MSTransportableDevice::getHolder().

◆ myID

◆ myLastRouting

SUMOTime MSTransportableDevice_Routing::myLastRouting
private

The last time a routing took place.

Definition at line 143 of file MSTransportableDevice_Routing.h.

Referenced by reroute().

◆ myPeriod

SUMOTime MSTransportableDevice_Routing::myPeriod
private

The period with which a vehicle shall be rerouted.

Definition at line 140 of file MSTransportableDevice_Routing.h.

Referenced by getParameter(), loadState(), saveState(), setParameter(), and wrappedRerouteCommandExecute().

◆ myRerouteCommand

WrappingCommand< MSTransportableDevice_Routing >* MSTransportableDevice_Routing::myRerouteCommand
private

The (optional) command responsible for rerouting.

Definition at line 146 of file MSTransportableDevice_Routing.h.

Referenced by setParameter(), and ~MSTransportableDevice_Routing().


The documentation for this class was generated from the following files: