Eclipse SUMO - Simulation of Urban MObility
NBEdge::Connection Struct Referencefinal

A structure which describes a connection between edges or lanes. More...

#include <NBEdge.h>

Inheritance diagram for NBEdge::Connection:
[legend]
Collaboration diagram for NBEdge::Connection:
[legend]

Public Types

typedef std::map< std::string, std::string > Map
 parameters map More...
 

Public Member Functions

void clearParameter ()
 Clears the parameter map. More...
 
 Connection (int fromLane_, NBEdge *toEdge_, int toLane_, const bool mayDefinitelyPass_=false)
 Constructor. More...
 
std::string getDescription (const NBEdge *parent) const
 get string describing this connection More...
 
double getDouble (const std::string &key, const double defaultValue) const
 Returns the value for a given key converted to a double. More...
 
std::vector< double > getDoubles (const std::string &key, std::vector< double > defaultValue=std::vector< double >()) const
 Returns the value for a given key converted to a list of doubles. More...
 
std::string getInternalLaneID () const
 get ID of internal lane More...
 
virtual const std::string getParameter (const std::string &key, const std::string defaultValue="") const
 Returns the value for a given key. More...
 
const Parameterised::MapgetParametersMap () const
 Returns the inner key/value map. More...
 
std::string getParametersStr (const std::string kvsep="=", const std::string sep="|") const
 Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN". More...
 
bool hasParameter (const std::string &key) const
 Returns whether the parameter is set. More...
 
void mergeParameters (const Parameterised::Map &mapArg, const std::string separator=" ", bool uniqueValues=true)
 Adds or appends all given parameters from the map. More...
 
bool prohibits (const NBVehicle *const) const
 
bool restricts (const NBVehicle *const) const
 
virtual void setParameter (const std::string &key, const std::string &value)
 Sets a parameter. More...
 
void setParameters (const Parameterised &params)
 set the inner key/value map in map<string, string> format More...
 
void setParametersStr (const std::string &paramsString, const std::string kvsep="=", const std::string sep="|")
 set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN" More...
 
void unsetParameter (const std::string &key)
 Removes a parameter. More...
 
void updateParameters (const Parameterised::Map &mapArg)
 Adds or updates all given parameters from the map. More...
 
void writeParams (OutputDevice &device) const
 write Params in the given outputdevice More...
 

Static Public Member Functions

static bool areAttributesValid (const std::string &value, bool report=false, const std::string kvsep="=", const std::string sep="|")
 check if given string can be parsed to an attributes map "key1=value1|key2=value2|...|keyN=valueN" (used in generic datas) More...
 
static bool areParametersValid (const std::string &value, bool report=false, const std::string kvsep="=", const std::string sep="|")
 check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN" More...
 
static double getTravelTimeStatic (const NBRouterEdge *const edge, const NBVehicle *const, double)
 

Data Fields

SVCPermissions changeLeft = SVC_UNSPECIFIED
 List of vehicle types that are allowed to change Left from this connections internal lane(s) More...
 
SVCPermissions changeRight = SVC_UNSPECIFIED
 List of vehicle types that are allowed to change right from this connections internal lane(s) More...
 
double contPos = UNSPECIFIED_CONTPOS
 custom position for internal junction on this connection More...
 
double customLength
 custom length for connection More...
 
PositionVector customShape
 custom shape for connection More...
 
std::string edgeType
 optional type of Connection More...
 
std::vector< std::string > foeIncomingLanes
 FOE Incomings lanes. More...
 
std::vector< int > foeInternalLinks
 FOE Internal links. More...
 
double friction = UNSPECIFIED_FRICTION
 
int fromLane
 The lane the connections starts at. More...
 
bool haveVia = false
 check if Connection have a Via More...
 
std::string id
 id of Connection More...
 
bool indirectLeft = false
 Whether this connection is an indirect left turn. More...
 
int internalLaneIndex = UNSPECIFIED_INTERNAL_LANE_INDEX
 The lane index of this internal lane within the internal edge. More...
 
KeepClear keepClear = KEEPCLEAR_UNSPECIFIED
 whether the junction must be kept clear when using this connection More...
 
double length = UNSPECIFIED_LOADED_LENGTH
 computed length (average of all internal lane shape lengths that share an internal edge) More...
 
bool mayDefinitelyPass
 Information about being definitely free to drive (on-ramps) More...
 
SVCPermissions permissions = SVC_UNSPECIFIED
 List of vehicle types that are allowed on this connection. More...
 
PositionVector shape
 shape of Connection More...
 
double speed = UNSPECIFIED_SPEED
 custom speed for connection More...
 
std::string tlID
 The id of the traffic light that controls this connection. More...
 
int tlLinkIndex = -1
 The index of this connection within the controlling traffic light. More...
 
int tlLinkIndex2 = -1
 The index of the internal junction within the controlling traffic light (optional) More...
 
NBEdgetoEdge
 The edge the connections yields in. More...
 
int toLane
 The lane the connections yields in. More...
 
bool uncontrolled = false
 check if Connection is uncontrolled More...
 
std::string viaID
 if Connection have a via, ID of it More...
 
double viaLength = 0.
 the length of the via shape (maybe customized) More...
 
PositionVector viaShape
 shape of via More...
 
double visibility = UNSPECIFIED_VISIBILITY_DISTANCE
 custom foe visiblity for connection More...
 
double vmax = UNSPECIFIED_SPEED
 maximum velocity More...
 

Static Private Member Functions

static bool isParameterValid (const std::string &value, const std::string &kvsep, const std::string &sep)
 check if given string can be parsed to a parameter of type "key=value" More...
 

Private Attributes

Parameterised::Map myMap
 The key->value map. More...
 

NBRouterEdge interface

static ConstRouterEdgePairVector myViaSuccessors = ConstRouterEdgePairVector({ std::pair<NBRouterEdge*, NBRouterEdge*>(nullptr, nullptr) })
 
const std::string & getID () const
 
double getSpeed () const
 
double getLength () const
 
int getNumericalID () const
 
const ConnectiongetBidiEdge () const
 
bool isInternal () const
 
const ConstRouterEdgePairVectorgetViaSuccessors (SUMOVehicleClass vClass=SVC_IGNORING, bool ignoreTransientPermissions=false) const
 

Detailed Description

A structure which describes a connection between edges or lanes.

Definition at line 201 of file NBEdge.h.

Member Typedef Documentation

◆ Map

typedef std::map<std::string, std::string> Parameterised::Map
inherited

parameters map

Definition at line 45 of file Parameterised.h.

Constructor & Destructor Documentation

◆ Connection()

NBEdge::Connection::Connection ( int  fromLane_,
NBEdge toEdge_,
int  toLane_,
const bool  mayDefinitelyPass_ = false 
)

Constructor.

Parameters
[in]fromLane_The lane the connections starts at
[in]toEdge_The edge the connections yields in
[in]toLane_The lane the connections yields in

Definition at line 103 of file NBEdge.cpp.

Member Function Documentation

◆ areAttributesValid()

bool Parameterised::areAttributesValid ( const std::string &  value,
bool  report = false,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
staticinherited

check if given string can be parsed to an attributes map "key1=value1|key2=value2|...|keyN=valueN" (used in generic datas)

Definition at line 219 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::isParameterValid(), TL, and WRITE_WARNINGF.

Referenced by GNEFrameAttributeModules::GenericDataAttributes::areAttributesValid(), GNEEdgeData::isValid(), GNEEdgeRelData::isValid(), and GNETAZRelData::isValid().

Here is the caller graph for this function:

◆ areParametersValid()

bool Parameterised::areParametersValid ( const std::string &  value,
bool  report = false,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
staticinherited

◆ clearParameter()

void Parameterised::clearParameter ( )
inherited

Clears the parameter map.

Definition at line 139 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NLHandler::beginEdgeParsing(), and GNESingleParametersDialog::onCmdAccept().

Here is the caller graph for this function:

◆ getBidiEdge()

const Connection* NBEdge::Connection::getBidiEdge ( ) const
inlinevirtual

Implements NBRouterEdge.

Definition at line 324 of file NBEdge.h.

◆ getDescription()

std::string NBEdge::Connection::getDescription ( const NBEdge parent) const

get string describing this connection

Definition at line 97 of file NBEdge.cpp.

References Named::getIDSecure(), getVehicleClassNames(), SVC_UNSPECIFIED, and toString().

Referenced by NBEdge::buildInnerEdges(), NBEdgeCont::checkGrade(), NBNode::computeInternalLaneShape(), NWWriter_SUMO::getOppositeInternalID(), and NBRequest::getResponseString().

Here is the caller graph for this function:

◆ getDouble()

double Parameterised::getDouble ( const std::string &  key,
const double  defaultValue 
) const
inherited

◆ getDoubles()

std::vector< double > Parameterised::getDoubles ( const std::string &  key,
std::vector< double >  defaultValue = std::vector<double>() 
) const
inherited

Returns the value for a given key converted to a list of doubles.

Parameters
[in]keyThe key to ask for
[in]defaultValueThe default value to return if no value is stored under the key
Returns
The value stored under the key

Definition at line 118 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::myMap, TL, StringUtils::toDouble(), WRITE_WARNING, and WRITE_WARNINGF.

Referenced by EnergyParams::EnergyParams().

Here is the caller graph for this function:

◆ getID()

const std::string& NBEdge::Connection::getID ( ) const
inlinevirtual

Implements NBRouterEdge.

Definition at line 311 of file NBEdge.h.

References id.

Referenced by NBNode::recheckVClassConnections().

Here is the caller graph for this function:

◆ getInternalLaneID()

std::string NBEdge::Connection::getInternalLaneID ( ) const

get ID of internal lane

Definition at line 91 of file NBEdge.cpp.

References internalLaneIndex, and toString().

Referenced by NWWriter_SUMO::getOppositeInternalID(), and NWWriter_SUMO::writeConnection().

Here is the caller graph for this function:

◆ getLength()

double NBEdge::Connection::getLength ( ) const
inlinevirtual

Implements NBRouterEdge.

Definition at line 318 of file NBEdge.h.

References PositionVector::length(), shape, and viaShape.

◆ getNumericalID()

int NBEdge::Connection::getNumericalID ( ) const
inlinevirtual

Implements NBRouterEdge.

Definition at line 321 of file NBEdge.h.

◆ getParameter()

const std::string Parameterised::getParameter ( const std::string &  key,
const std::string  defaultValue = "" 
) const
virtualinherited

Returns the value for a given key.

Parameters
[in]keyThe key to ask for
[in]defaultValueThe default value to return if no value is stored under the key
Returns
The value stored under the key

Reimplemented in NEMALogic, MSSimpleTrafficLightLogic, and MSActuatedTrafficLightLogic.

Definition at line 90 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSPModel_JuPedSim::add(), NBRailwayTopologyAnalyzer::addBidiEdge(), NBEdge::addRestrictedLane(), FareModul::addStop(), GUIInductLoop::buildDetectorGUIRepresentation(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), ROEdge::cacheParamRestrictions(), SUMOVTypeParameter::cacheParamRestrictions(), MSVehicleType::check(), MSRailSignal::constraintsAllow(), GUINet::createTLWrapper(), GNEEdge::drawEdgeName(), GNEConnection::drawEdgeValues(), GNEGenericData::drawFilteredAttribute(), GUIEdge::drawGL(), EnergyParams::EnergyParams(), MSDevice_SSM::filterByConflictType(), LIBSUMO_NAMESPACE::TrafficLight::findConstraintsDeadLocks(), LIBSUMO_NAMESPACE::Simulation::findIntermodalRoute(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), GUIVehicle::getColorValue(), GNEEdgeData::getColorValue(), GNEEdgeRelData::getColorValue(), GNETAZRelData::getColorValue(), GNELane::getColorValue(), GUIEdge::getColorValue(), GUILane::getColorValue(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), LIBSUMO_NAMESPACE::TrafficLight::getFutureTripIds(), MSTLLogicControl::WAUTSwitchProcedure::getGSPTime(), RORoutable::getMaxSpeed(), MSDevice_SSM::getMDRAC_PRT(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), GUIBaseVehicle::getOptionalName(), GUITrafficLightLogicWrapper::getOptionalName(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSimpleTrafficLightLogic::getParameter(), NEMALogic::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), MSBaseVehicle::getPrefixedParameter(), GUIBaseVehicle::getScaleValue(), LIBSUMO_NAMESPACE::Vehicle::getStopParameter(), MSDevice::getStringParam(), LIBSUMO_NAMESPACE::TrafficLight::getVehicleByTripId(), MSRailSignalConstraint::getVehID(), MSTriggeredRerouter::getWeight(), MSRailSignal::hasInsertionConstraint(), MSLink::ignoreFoe(), MSSOTLPhasePolicy::init(), MSStageDriving::init(), PushButtonLogic::init(), SigmoidLogic::init(), SUMOVTypeParameter::initRailVisualizationParameters(), NIImporter_OpenStreetMap::insertNodeChecking(), MSAbstractLaneChangeModel::laneChangeOutput(), NWWriter_OpenDrive::mapmatchRoadObjects(), Parameterised::mergeParameters(), MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSDevice_GLOSA::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), GNEVType::overwriteVType(), NWWriter_OpenDrive::parseTrafficSign(), NBTrafficLightDefinition::railSignalUncontrolled(), MSDevice_Battery::readParameterValue(), MSDevice_SSM::requestsTrajectories(), MSDevice_Bluelight::resetVehicle(), GNEEdgeData::setColor(), GNEEdgeRelData::setColor(), NBTrafficLightLogicCont::setOpenDriveSignalParameters(), NBEdge::setOrigID(), MSVehicle::slowDownForSchedule(), NBEdgeCont::splitAt(), LIBSUMO_NAMESPACE::TrafficLight::swapParameters(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSDevice_SSM::useGeoCoords(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::WAUTSwitchProcedure_Stretch(), MSDevice_SSM::writeLanesPositions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), MSDevice_SSM::writePositions(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_OpenDrive::writeRoadObjects(), and NWWriter_OpenDrive::writeSignals().

◆ getParametersMap()

const Parameterised::Map & Parameterised::getParametersMap ( ) const
inherited

Returns the inner key/value map.

Definition at line 145 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_SUMO::_loadNetwork(), NBNode::addCrossing(), NBEdge::addLane(), NBEdge::append(), LIBSUMO_NAMESPACE::TrafficLight::buildConstraint(), GUIParameterTableWindow::closeBuilding(), NLHandler::closeEdge(), NBTrafficLightDefinition::compute(), GNEGenericData::drawAttribute(), GNEGenericData::drawFilteredAttribute(), NLDetectorBuilder::endE3Detector(), GNEAccess::getACParametersMap(), GNECalibrator::getACParametersMap(), GNEDetector::getACParametersMap(), GNEMultiEntryExitDetector::getACParametersMap(), GNEOverheadWire::getACParametersMap(), GNEParkingSpace::getACParametersMap(), GNERerouter::getACParametersMap(), GNERouteProbe::getACParametersMap(), GNEStoppingPlace::getACParametersMap(), GNETAZ::getACParametersMap(), GNEVaporizer::getACParametersMap(), GNEVariableSpeedSign::getACParametersMap(), GNEDataInterval::getACParametersMap(), GNEDataSet::getACParametersMap(), GNEGenericData::getACParametersMap(), GNEContainer::getACParametersMap(), GNEPerson::getACParametersMap(), GNEPersonTrip::getACParametersMap(), GNERide::getACParametersMap(), GNERoute::getACParametersMap(), GNEStop::getACParametersMap(), GNEStopPlan::getACParametersMap(), GNETranship::getACParametersMap(), GNETransport::getACParametersMap(), GNEVehicle::getACParametersMap(), GNEVType::getACParametersMap(), GNEWalk::getACParametersMap(), GNEConnection::getACParametersMap(), GNECrossing::getACParametersMap(), GNEEdge::getACParametersMap(), GNEEdgeType::getACParametersMap(), GNEJunction::getACParametersMap(), GNELane::getACParametersMap(), GNELaneType::getACParametersMap(), GNEPOI::getACParametersMap(), GNEPoly::getACParametersMap(), MSRailSignalConstraint_Predecessor::getDescription(), NWWriter_OpenDrive::getDividerType(), GUILane::getParameterWindow(), GNESingleParametersDialog::GNESingleParametersDialog(), MSRailCrossing::init(), MSActuatedTrafficLightLogic::init(), MSDevice_Taxi::initDispatch(), MSPModel_JuPedSim::initialize(), NIImporter_OpenStreetMap::insertEdge(), NIImporter_OpenStreetMap::insertNodeChecking(), GNEEdgeData::isGenericDataVisible(), GNEEdgeRelData::isGenericDataVisible(), GNETAZRelData::isGenericDataVisible(), GNEGenericData::isVisibleInspectDeleteSelect(), NBEdge::NBEdge(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), NBTrafficLightLogic::NBTrafficLightLogic(), GUIParameterTableWindow::numParams(), GNESingleParametersDialog::onCmdReset(), GNEVType::overwriteVType(), TraCIServerAPI_TrafficLight::processGet(), Parameterised::setParameters(), LIBSUMO_NAMESPACE::TrafficLight::swapConstraints(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), and GNETAZRelData::writeGenericData().

◆ getParametersStr()

std::string Parameterised::getParametersStr ( const std::string  kvsep = "=",
const std::string  sep = "|" 
) const
inherited

Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN".

Definition at line 151 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by GNEAccess::getAttribute(), GNEBusStop::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEChargingStation::getAttribute(), GNEContainerStop::getAttribute(), GNEEntryExitDetector::getAttribute(), GNEInductionLoopDetector::getAttribute(), GNEInstantInductionLoopDetector::getAttribute(), GNELaneAreaDetector::getAttribute(), GNEMultiEntryExitDetector::getAttribute(), GNEOverheadWire::getAttribute(), GNEParkingArea::getAttribute(), GNEParkingSpace::getAttribute(), GNERerouter::getAttribute(), GNERouteProbe::getAttribute(), GNETAZ::getAttribute(), GNETAZSourceSink::getAttribute(), GNETractionSubstation::getAttribute(), GNEVaporizer::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEEdgeData::getAttribute(), GNEEdgeRelData::getAttribute(), GNETAZRelData::getAttribute(), GNEContainer::getAttribute(), GNEPerson::getAttribute(), GNERoute::getAttribute(), GNEStop::getAttribute(), GNEVehicle::getAttribute(), GNEVType::getAttribute(), GNEConnection::getAttribute(), GNEEdge::getAttribute(), GNEEdgeType::getAttribute(), GNEJunction::getAttribute(), GNELane::getAttribute(), GNELaneType::getAttribute(), GNEPOI::getAttribute(), and GNEPoly::getAttribute().

Here is the caller graph for this function:

◆ getSpeed()

double NBEdge::Connection::getSpeed ( ) const
inlinevirtual

Implements NBRouterEdge.

Definition at line 314 of file NBEdge.h.

References vmax.

◆ getTravelTimeStatic()

static double NBRouterEdge::getTravelTimeStatic ( const NBRouterEdge *const  edge,
const NBVehicle * const  ,
double   
)
inlinestaticinherited

Definition at line 82 of file NBEdge.h.

References NBRouterEdge::getLength(), and NBRouterEdge::getSpeed().

Referenced by NBPTLineCont::fixBidiStops(), GNEPathManager::PathCalculator::PathCalculator(), and GNEPathManager::PathCalculator::updatePathCalculator().

Here is the caller graph for this function:

◆ getViaSuccessors()

const ConstRouterEdgePairVector& NBEdge::Connection::getViaSuccessors ( SUMOVehicleClass  vClass = SVC_IGNORING,
bool  ignoreTransientPermissions = false 
) const
inlinevirtual

Implements NBRouterEdge.

Definition at line 330 of file NBEdge.h.

References myViaSuccessors, and UNUSED_PARAMETER.

◆ hasParameter()

bool Parameterised::hasParameter ( const std::string &  key) const
inherited

Returns whether the parameter is set.

Parameters
[in]keyThe key to ask for
Returns
Whether the key is known

Definition at line 84 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSStageWalking::activateEntryReminders(), NBEdge::append(), MSVehicleType::build(), GUIInductLoop::buildDetectorGUIRepresentation(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), GUINet::createTLWrapper(), EnergyParams::EnergyParams(), MSDevice_SSM::filterByConflictType(), NWWriter_DlrNavteq::getBrunnelType(), GNEEdgeData::getColorValue(), GNEEdgeRelData::getColorValue(), GNETAZRelData::getColorValue(), GNELane::getColorValue(), GUILane::getColorValue(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice_SSM::getMDRAC_PRT(), MSDevice_SSM::getMeasuresAndThresholds(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), LIBSUMO_NAMESPACE::Simulation::getParameter(), MSDevice::getStringParam(), MSTriggeredRerouter::getWeight(), MSStageDriving::init(), SUMOVTypeParameter::initRailVisualizationParameters(), MSEdge::insertVehicle(), NIImporter_OpenStreetMap::load(), NWWriter_OpenDrive::mapmatchRoadObjects(), Parameterised::mergeParameters(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic(), GNEVType::overwriteVType(), NWWriter_OpenDrive::parseTrafficSign(), NBTrafficLightDefinition::railSignalUncontrolled(), MSDevice_Battery::readParameterValue(), MSDevice_SSM::requestsTrajectories(), NBTrafficLightLogicCont::setOpenDriveSignalParameters(), MSVehicle::slowDownForSchedule(), MSDevice_SSM::useGeoCoords(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::WAUTSwitchProcedure_Stretch(), MSDevice_SSM::writeLanesPositions(), MSDevice_SSM::writePositions(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_OpenDrive::writeRoadObjects(), and NWWriter_OpenDrive::writeSignals().

Here is the caller graph for this function:

◆ isInternal()

bool NBEdge::Connection::isInternal ( ) const
inlinevirtual

Reimplemented from NBRouterEdge.

Definition at line 327 of file NBEdge.h.

◆ isParameterValid()

bool Parameterised::isParameterValid ( const std::string &  value,
const std::string &  kvsep,
const std::string &  sep 
)
staticprivateinherited

check if given string can be parsed to a parameter of type "key=value"

Definition at line 254 of file Parameterised.cpp.

References StringTokenizer::getVector(), and SUMOXMLDefinitions::isValidParameterKey().

Referenced by Parameterised::areAttributesValid(), and Parameterised::areParametersValid().

Here is the caller graph for this function:

◆ mergeParameters()

void Parameterised::mergeParameters ( const Parameterised::Map mapArg,
const std::string  separator = " ",
bool  uniqueValues = true 
)
inherited

Adds or appends all given parameters from the map.

Parameters
[in]mapArgThe keys/values to insert

Definition at line 65 of file Parameterised.cpp.

References Parameterised::getParameter(), Parameterised::hasParameter(), and Parameterised::setParameter().

Referenced by NBEdge::append().

Here is the caller graph for this function:

◆ prohibits()

bool NBRouterEdge::prohibits ( const NBVehicle * const  ) const
inlineinherited

Definition at line 74 of file NBEdge.h.

◆ restricts()

bool NBRouterEdge::restricts ( const NBVehicle * const  ) const
inlineinherited

Definition at line 77 of file NBEdge.h.

◆ setParameter()

void Parameterised::setParameter ( const std::string &  key,
const std::string &  value 
)
virtualinherited

Sets a parameter.

Parameters
[in]keyThe parameter's name
[in]valueThe parameter's value

Reimplemented in NEMALogic, MSSimpleTrafficLightLogic, MSRailSignal, MSActuatedTrafficLightLogic, and MSRailCrossing.

Definition at line 45 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NBRailwayTopologyAnalyzer::addBidiEdge(), NLHandler::addDistrict(), RONetHandler::addParam(), ShapeHandler::addPOI(), NBOwnTLDef::buildNemaPhases(), MSParkingArea::enter(), NIImporter_MATSim::EdgesHandler::insertEdge(), NIImporter_OpenStreetMap::insertEdge(), NIImporter_OpenStreetMap::insertNodeChecking(), MSLane::isInsertionSuccess(), NBNodeCont::joinNodeCluster(), NBEdge::Lane::Lane(), NWWriter_OpenDrive::mapmatchRoadObjects(), Parameterised::mergeParameters(), MSStateHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIXMLTrafficLightsHandler::myStartElement(), ShapeHandler::myStartElement(), GNESingleParametersDialog::onCmdAccept(), NBRailwayTopologyAnalyzer::reverseEdges(), GNEVType::setAttribute(), NBEdge::setJunctionPriority(), NIImporter_OpenDrive::setLaneAttributes(), MSRailCrossing::setParameter(), MSActuatedTrafficLightLogic::setParameter(), MSRailSignal::setParameter(), MSSimpleTrafficLightLogic::setParameter(), NEMALogic::setParameter(), LIBSUMO_NAMESPACE::Simulation::setParameter(), Parameterised::setParametersStr(), LIBSUMO_NAMESPACE::Vehicle::setStopParameter(), LIBSUMO_NAMESPACE::TrafficLight::swapParameters(), Parameterised::updateParameters(), NWWriter_OpenDrive::writeNetwork(), and NIImporter_OpenDrive::writeRoadObjects().

Here is the caller graph for this function:

◆ setParameters()

void Parameterised::setParameters ( const Parameterised params)
inherited

set the inner key/value map in map<string, string> format

Definition at line 167 of file Parameterised.cpp.

References Parameterised::getParametersMap(), and Parameterised::myMap.

Referenced by MSStageDriving::clone(), MSStageTranship::clone(), MSStageTrip::clone(), MSStageWaiting::clone(), MSStageWalking::clone(), and MSStageTrip::setArrived().

Here is the caller graph for this function:

◆ setParametersStr()

void Parameterised::setParametersStr ( const std::string &  paramsString,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
inherited

set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN"

Parameters
[in]paramsStringA serialized key-value map
[in]kvsepThe separater between key and value
[in]sepThe separater between map entries

Definition at line 173 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::myMap, and Parameterised::setParameter().

Referenced by MSDevice_Taxi::initDispatch(), GNEAccess::setAttribute(), GNEBusStop::setAttribute(), GNECalibrator::setAttribute(), GNECalibratorFlow::setAttribute(), GNEChargingStation::setAttribute(), GNEContainerStop::setAttribute(), GNEEntryExitDetector::setAttribute(), GNEInductionLoopDetector::setAttribute(), GNEInstantInductionLoopDetector::setAttribute(), GNELaneAreaDetector::setAttribute(), GNEMultiEntryExitDetector::setAttribute(), GNEOverheadWire::setAttribute(), GNEParkingArea::setAttribute(), GNEParkingSpace::setAttribute(), GNERerouter::setAttribute(), GNERouteProbe::setAttribute(), GNETAZ::setAttribute(), GNETAZSourceSink::setAttribute(), GNETractionSubstation::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNEEdgeData::setAttribute(), GNEEdgeRelData::setAttribute(), GNETAZRelData::setAttribute(), GNEContainer::setAttribute(), GNEPerson::setAttribute(), GNERoute::setAttribute(), GNEStop::setAttribute(), GNEVehicle::setAttribute(), GNEVType::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEEdgeType::setAttribute(), GNEJunction::setAttribute(), GNELane::setAttribute(), GNELaneType::setAttribute(), GNEPOI::setAttribute(), and GNEPoly::setAttribute().

Here is the caller graph for this function:

◆ unsetParameter()

void Parameterised::unsetParameter ( const std::string &  key)
inherited

Removes a parameter.

Parameters
[in]keyThe parameter's name

Definition at line 51 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_OpenStreetMap::insertEdge(), MSLane::isInsertionSuccess(), NIImporter_OpenStreetMap::load(), GNEVType::setAttribute(), and LIBSUMO_NAMESPACE::TrafficLight::swapParameters().

Here is the caller graph for this function:

◆ updateParameters()

void Parameterised::updateParameters ( const Parameterised::Map mapArg)
inherited

◆ writeParams()

void Parameterised::writeParams ( OutputDevice device) const
inherited

write Params in the given outputdevice

Definition at line 188 of file Parameterised.cpp.

References OutputDevice::closeTag(), StringUtils::escapeXML(), Parameterised::myMap, OutputDevice::openTag(), SUMO_ATTR_KEY, SUMO_ATTR_VALUE, SUMO_TAG_PARAM, and OutputDevice::writeAttr().

Referenced by MSStageWaiting::routeOutput(), MSTransportable::routeOutput(), ROPerson::saveAsXML(), ROVehicle::saveAsXML(), MEVehicle::saveState(), MSVehicle::saveState(), MSStop::write(), SUMOVTypeParameter::write(), SUMOVehicleParameter::Stop::write(), NBPTStop::write(), MSRailSignalConstraint_Predecessor::write(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEChargingStation::writeAdditional(), GNEContainerStop::writeAdditional(), GNEInductionLoopDetector::writeAdditional(), GNEInstantInductionLoopDetector::writeAdditional(), GNELaneAreaDetector::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEParkingArea::writeAdditional(), GNEParkingSpace::writeAdditional(), GNERerouter::writeAdditional(), GNERouteProbe::writeAdditional(), GNETAZ::writeAdditional(), GNETractionSubstation::writeAdditional(), GNEVaporizer::writeAdditional(), GNEVariableSpeedSign::writeAdditional(), NWWriter_SUMO::writeConnection(), GNEContainer::writeDemandElement(), GNEPerson::writeDemandElement(), GNERoute::writeDemandElement(), GNEVehicle::writeDemandElement(), NWWriter_SUMO::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), NWWriter_XML::writeNodes(), MSDevice_Vehroutes::writeOutput(), NWWriter_SUMO::writeTrafficLight(), SUMOPolygon::writeXML(), and PointOfInterest::writeXML().

Here is the caller graph for this function:

Field Documentation

◆ changeLeft

SVCPermissions NBEdge::Connection::changeLeft = SVC_UNSPECIFIED

List of vehicle types that are allowed to change Left from this connections internal lane(s)

Definition at line 255 of file NBEdge.h.

Referenced by GNEConnection::getAttribute(), GNEConnection::setAttribute(), and NWWriter_SUMO::writeConnection().

◆ changeRight

SVCPermissions NBEdge::Connection::changeRight = SVC_UNSPECIFIED

List of vehicle types that are allowed to change right from this connections internal lane(s)

Definition at line 258 of file NBEdge.h.

Referenced by GNEConnection::getAttribute(), GNEConnection::setAttribute(), and NWWriter_SUMO::writeConnection().

◆ contPos

double NBEdge::Connection::contPos = UNSPECIFIED_CONTPOS

◆ customLength

◆ customShape

◆ edgeType

std::string NBEdge::Connection::edgeType

◆ foeIncomingLanes

std::vector<std::string> NBEdge::Connection::foeIncomingLanes

FOE Incomings lanes.

Definition at line 291 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges().

◆ foeInternalLinks

std::vector<int> NBEdge::Connection::foeInternalLinks

FOE Internal links.

Definition at line 288 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges().

◆ friction

double NBEdge::Connection::friction = UNSPECIFIED_FRICTION

◆ fromLane

◆ haveVia

bool NBEdge::Connection::haveVia = false

◆ id

std::string NBEdge::Connection::id

◆ indirectLeft

◆ internalLaneIndex

int NBEdge::Connection::internalLaneIndex = UNSPECIFIED_INTERNAL_LANE_INDEX

The lane index of this internal lane within the internal edge.

Definition at line 294 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges(), and getInternalLaneID().

◆ keepClear

KeepClear NBEdge::Connection::keepClear = KEEPCLEAR_UNSPECIFIED

whether the junction must be kept clear when using this connection

Definition at line 231 of file NBEdge.h.

Referenced by GNEEdge::addConnection(), GNEConnection::getAttribute(), NIXMLConnectionsHandler::parseLaneBound(), GNEConnection::setAttribute(), and NWWriter_SUMO::writeConnection().

◆ length

double NBEdge::Connection::length = UNSPECIFIED_LOADED_LENGTH

computed length (average of all internal lane shape lengths that share an internal edge)

Definition at line 306 of file NBEdge.h.

Referenced by NBEdge::assignInternalLaneLength(), NWWriter_SUMO::getInternalBidi(), and NWWriter_SUMO::getOppositeInternalID().

◆ mayDefinitelyPass

◆ myMap

◆ myViaSuccessors

ConstRouterEdgePairVector NBEdge::Connection::myViaSuccessors = ConstRouterEdgePairVector({ std::pair<NBRouterEdge*, NBRouterEdge*>(nullptr, nullptr) })
static

Definition at line 310 of file NBEdge.h.

Referenced by getViaSuccessors().

◆ permissions

SVCPermissions NBEdge::Connection::permissions = SVC_UNSPECIFIED

List of vehicle types that are allowed on this connection.

Definition at line 252 of file NBEdge.h.

Referenced by GNEConnection::getAttribute(), GNEConnection::setAttribute(), and NWWriter_SUMO::writeConnection().

◆ shape

◆ speed

◆ tlID

std::string NBEdge::Connection::tlID

◆ tlLinkIndex

◆ tlLinkIndex2

int NBEdge::Connection::tlLinkIndex2 = -1

The index of the internal junction within the controlling traffic light (optional)

Definition at line 225 of file NBEdge.h.

Referenced by NIXMLTrafficLightsHandler::addTlConnection(), GNEConnection::getAttribute(), GNEConnection::getNBConnection(), GNEConnection::setAttribute(), NBEdge::setControllingTLInformation(), and NWWriter_SUMO::writeConnection().

◆ toEdge

NBEdge* NBEdge::Connection::toEdge

The edge the connections yields in.

Definition at line 213 of file NBEdge.h.

Referenced by GNEEdge::addConnection(), NBEdge::addLane(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimTL::NIVissimTLSignal::addTo(), NBRequest::bidiConflict(), NBEdge::buildInnerEdges(), NBEdge::canMoveConnection(), NBRequest::checkLaneFoesByClass(), NBRequest::checkLaneFoesByCooperation(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedTLDef::collectLinks(), NBNode::computeInternalLaneShape(), NBEdge::connections_sorter(), NBEdge::debugPrintConnections(), NBNode::displaceShapeAtWidthChange(), GNEConnection::getAttribute(), NBNode::getConnectionIndex(), NWWriter_SUMO::getInternalBidi(), NBEdge::getInternalLaneWidth(), NWWriter_SUMO::getOppositeInternalID(), NBRequest::getResponseString(), NBRequest::indirectLeftTurnConflict(), NBRequest::mergeConflict(), NBEdge::moveConnectionToLeft(), NBEdge::moveConnectionToRight(), NBNode::needsCont(), NBEdge::connections_toedge_finder::operator()(), NBEdge::connections_toedgelane_finder::operator()(), NBEdge::connections_finder::operator()(), NBEdge::connections_conflict_finder::operator()(), NBEdge::connections_relative_edgelane_sorter::operator()(), NBRequest::oppositeLeftTurnConflict(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NBNode::recheckVClassConnections(), GNEChange_Connection::redo(), GNEEdge::removeConnection(), NBEdge::removeFromConnections(), NBRequest::rightTurnConflict(), GNEConnection::setAttribute(), NBNode::tlsContConflict(), GNEChange_Connection::undo(), GNEConnection::updateGeometry(), GNEConnection::updateLinkState(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeConnection(), and NWWriter_OpenDrive::writeInternalEdge().

◆ toLane

◆ uncontrolled

◆ viaID

std::string NBEdge::Connection::viaID

if Connection have a via, ID of it

Definition at line 279 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges().

◆ viaLength

double NBEdge::Connection::viaLength = 0.

the length of the via shape (maybe customized)

Definition at line 285 of file NBEdge.h.

Referenced by NBEdge::assignInternalLaneLength().

◆ viaShape

◆ visibility

double NBEdge::Connection::visibility = UNSPECIFIED_VISIBILITY_DISTANCE

◆ vmax

double NBEdge::Connection::vmax = UNSPECIFIED_SPEED

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