SUMO - Simulation of Urban MObility
NBEdge::Connection Struct Reference

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

#include <NBEdge.h>

Inheritance diagram for NBEdge::Connection:
Inheritance graph
Collaboration diagram for NBEdge::Connection:
Collaboration graph

Public Member Functions

void clearParameter ()
 Clears the parameter map. More...
 
 Connection (int fromLane_, NBEdge *toEdge_, int toLane_)
 Constructor. More...
 
 Connection (int fromLane_, NBEdge *toEdge_, int toLane_, bool mayDefinitelyPass_, bool keepClear_=true, double contPos_=UNSPECIFIED_CONTPOS, double visibility_=UNSPECIFIED_VISIBILITY_DISTANCE, double speed_=UNSPECIFIED_SPEED, bool haveVia_=false, bool uncontrolled_=false, const PositionVector &customShape_=PositionVector::EMPTY)
 constructor with more parameters 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::string getInternalLaneID () const
 get ID of internal lane More...
 
const std::string getParameter (const std::string &key, const std::string &defaultValue="") const
 Returns the value for a given key. More...
 
const std::map< std::string, std::string > & getParametersMap () const
 Returns the inner key/value map. More...
 
bool knowsParameter (const std::string &key) const
 Returns whether the parameter is known. More...
 
void setParameter (const std::string &key, const std::string &value)
 Sets a parameter. More...
 
void unsetParameter (const std::string &key)
 Removes a parameter. More...
 
void updateParameter (const std::map< std::string, std::string > &mapArg)
 Adds or updates all given parameters from the map. More...
 
void writeParams (OutputDevice &device) const
 write Params in the given outputdevice More...
 
 ~Connection ()
 destructor More...
 

Data Fields

double contPos
 custom position for internal junction on this connection More...
 
PositionVector customShape
 custom shape for connection More...
 
std::vector< std::string > foeIncomingLanes
 FOE Incomings lanes. More...
 
std::vector< int > foeInternalLinks
 FOE Internal links. More...
 
int fromLane
 The lane the connections starts at. More...
 
bool haveVia
 check if Connection have a Via More...
 
std::string id
 id of Connection More...
 
int internalLaneIndex
 The lane index of this internal lane within the internal edge. More...
 
bool keepClear
 whether the junction must be kept clear when using this connection More...
 
double 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...
 
PositionVector shape
 shape of Connection More...
 
double speed
 custom speed for connection More...
 
std::string tlID
 The id of the traffic light that controls this connection. More...
 
int tlLinkIndex
 The index of this connection within the controlling traffic light. More...
 
NBEdgetoEdge
 The edge the connections yields in. More...
 
int toLane
 The lane the connections yields in. More...
 
bool uncontrolled
 check if Connection is uncontrolled More...
 
std::string viaID
 if Connection have a via, ID of it More...
 
PositionVector viaShape
 shape of via More...
 
double visibility
 custom foe visiblity for connection More...
 
double vmax
 maximum velocity More...
 

Detailed Description

A structure which describes a connection between edges or lanes.

Definition at line 160 of file NBEdge.h.

Constructor & Destructor Documentation

◆ Connection() [1/2]

NBEdge::Connection::Connection ( int  fromLane_,
NBEdge toEdge_,
int  toLane_ 
)

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 91 of file NBEdge.cpp.

◆ Connection() [2/2]

NBEdge::Connection::Connection ( int  fromLane_,
NBEdge toEdge_,
int  toLane_,
bool  mayDefinitelyPass_,
bool  keepClear_ = true,
double  contPos_ = UNSPECIFIED_CONTPOS,
double  visibility_ = UNSPECIFIED_VISIBILITY_DISTANCE,
double  speed_ = UNSPECIFIED_SPEED,
bool  haveVia_ = false,
bool  uncontrolled_ = false,
const PositionVector customShape_ = PositionVector::EMPTY 
)

constructor with more parameters

Definition at line 108 of file NBEdge.cpp.

◆ ~Connection()

NBEdge::Connection::~Connection ( )
inline

destructor

Definition at line 179 of file NBEdge.h.

Member Function Documentation

◆ clearParameter()

◆ getDescription()

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

◆ getDouble()

◆ getInternalLaneID()

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

get ID of internal lane

Definition at line 80 of file NBEdge.cpp.

References internalLaneIndex, and toString().

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

◆ getParameter()

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

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

Definition at line 71 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), NBEdge::addRestrictedLane(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::equippedByParameter(), libsumo::Simulation::findIntermodalRoute(), MSDevice::getBoolParam(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), GNELane::getColorValue(), GUILane::getColorValue(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice::getFloatParam(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), libsumo::Polygon::getParameter(), libsumo::Route::getParameter(), libsumo::POI::getParameter(), libsumo::Person::getParameter(), libsumo::TrafficLight::getParameter(), libsumo::Edge::getParameter(), libsumo::Lane::getParameter(), libsumo::VehicleType::getParameter(), libsumo::Vehicle::getParameter(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSDevice::getStringParam(), MSSOTLTrafficLightLogic::getThreshold(), MSTriggeredRerouter::getWeight(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NIImporter_OpenStreetMap::insertEdge(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), libsumo::Helper::moveToXYMap(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSDelayBasedTrafficLightLogic::MSDelayBasedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), MSTriggeredRerouter::notifyEnter(), MSDevice_SSM::requestsTrajectories(), NBEdgeCont::splitAt(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), MSDevice_SSM::useGeoCoords(), and NWWriter_DlrNavteq::writeLinksUnsplitted().

◆ getParametersMap()

◆ knowsParameter()

◆ setParameter()

◆ 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.

◆ updateParameter()

void Parameterised::updateParameter ( const std::map< std::string, std::string > &  mapArg)
inherited

◆ writeParams()

Field Documentation

◆ contPos

double NBEdge::Connection::contPos

custom position for internal junction on this connection

Definition at line 203 of file NBEdge.h.

Referenced by GNEEdge::addConnection(), NBEdge::buildInnerEdges(), GNEConnection::getAttribute(), GNEConnection::setAttribute(), and NWWriter_SUMO::writeConnection().

◆ customShape

◆ foeIncomingLanes

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

FOE Incomings lanes.

Definition at line 236 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges().

◆ foeInternalLinks

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

FOE Internal links.

Definition at line 233 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges().

◆ fromLane

◆ haveVia

bool NBEdge::Connection::haveVia

◆ id

std::string NBEdge::Connection::id

id of Connection

Definition at line 215 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges(), and NWWriter_SUMO::writeInternalConnections().

◆ internalLaneIndex

int NBEdge::Connection::internalLaneIndex

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

Definition at line 239 of file NBEdge.h.

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

◆ keepClear

bool NBEdge::Connection::keepClear

whether the junction must be kept clear when using this connection

Definition at line 200 of file NBEdge.h.

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

◆ length

double NBEdge::Connection::length

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

Definition at line 251 of file NBEdge.h.

Referenced by NWWriter_SUMO::getOppositeInternalID().

◆ mayDefinitelyPass

bool NBEdge::Connection::mayDefinitelyPass

◆ shape

◆ speed

double NBEdge::Connection::speed

◆ tlID

std::string NBEdge::Connection::tlID

◆ tlLinkIndex

int NBEdge::Connection::tlLinkIndex

The index of this connection within the controlling traffic light.

Definition at line 194 of file NBEdge.h.

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

◆ toEdge

NBEdge* NBEdge::Connection::toEdge

The edge the connections yields in.

Definition at line 185 of file NBEdge.h.

Referenced by GNEEdge::addConnection(), NBEdge::addLane(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimTL::NIVissimTLSignal::addTo(), NBEdge::bothLeftIntersect(), NBEdge::buildInnerEdges(), NBEdge::canMoveConnection(), NBRequest::checkLaneFoesByClass(), NBRequest::checkLaneFoesByCooperation(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedTLDef::collectLinks(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBEdge::connections_sorter(), NBEdge::debugPrintConnections(), NBNode::displaceShapeAtWidthChange(), GNEConnection::getAttribute(), NBNode::getConnectionIndex(), getDescription(), NWWriter_SUMO::getOppositeInternalID(), NBRequest::getResponseString(), NBRequest::mergeConflict(), NBEdge::moveConnectionToLeft(), NBEdge::moveConnectionToRight(), NBEdge::moveOutgoingConnectionsFrom(), 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(), GNEChange_Connection::redo(), GNEEdge::removeConnection(), NBEdge::removeFromConnections(), NBNode::tlsContConflict(), GNEChange_Connection::undo(), GNEConnection::updateGeometry(), GNEConnection::updateLinkState(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeInternalConnections(), and NWWriter_OpenDrive::writeNetwork().

◆ toLane

◆ uncontrolled

bool NBEdge::Connection::uncontrolled

◆ viaID

std::string NBEdge::Connection::viaID

if Connection have a via, ID of it

Definition at line 227 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges(), and NWWriter_SUMO::writeInternalConnections().

◆ viaShape

PositionVector NBEdge::Connection::viaShape

◆ visibility

double NBEdge::Connection::visibility

custom foe visiblity for connection

Definition at line 206 of file NBEdge.h.

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

◆ vmax

double NBEdge::Connection::vmax

maximum velocity

Definition at line 221 of file NBEdge.h.

Referenced by NBEdge::buildInnerEdges(), and NWWriter_OpenDrive::writeInternalEdge().


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