SUMO - Simulation of Urban MObility
|
#include <MSLogicJunction.h>
Public Types | |
typedef std::bitset< 64 > | InnerState |
Container for junction-internal lane occupation Each element of this container represents one particular junction-internal lane. | |
typedef std::bitset< 64 > | LinkFoes |
Container for link foes. |
Public Member Functions | |
void | addTo (const StoringVisitor &cont) const |
Adds this object to the given container. | |
virtual const std::vector < MSLane * > & | getFoeInternalLanes (const MSLink *const ) const |
virtual const std::vector < MSLink * > & | getFoeLinks (const MSLink *const ) const |
const std::string & | getID () const |
Returns the id. | |
const Position & | getPosition () const |
const PositionVector & | getShape () const |
Returns this junction's shape. | |
virtual void | postloadInit () |
initialises the junction after the whole net has been loaded | |
void | setID (const std::string &newID) |
resets the id | |
virtual | ~MSLogicJunction () |
Destructor. |
Protected Member Functions | |
MSLogicJunction (const std::string &id, const Position &position, const PositionVector &shape, std::vector< MSLane * > incoming) | |
Constructor. |
Protected Attributes | |
std::vector< MSLane * > | myEmptyLanes |
std::vector< MSLink * > | myEmptyLinks |
std::string | myID |
The name of the object. | |
std::vector< MSLane * > | myIncomingLanes |
list of incoming lanes | |
InnerState | myInnerState |
Position | myPosition |
The position of the junction. | |
PositionVector | myShape |
The shape of the junction. |
Private Member Functions | |
MSLogicJunction (const MSLogicJunction &) | |
Invalidated copy constructor. | |
MSLogicJunction & | operator= (const MSLogicJunction &) |
Invalidated assignment operator. |
A junction which may not let all vehicles through, but must perform any kind of an operation to determine which cars are allowed to drive in this step.
Definition at line 56 of file MSLogicJunction.h.
typedef std::bitset<64> MSLogicJunction::InnerState |
Container for junction-internal lane occupation Each element of this container represents one particular junction-internal lane.
Definition at line 69 of file MSLogicJunction.h.
typedef std::bitset<64> MSLogicJunction::LinkFoes |
Container for link foes.
Definition at line 64 of file MSLogicJunction.h.
|
virtual |
Destructor.
Definition at line 64 of file MSLogicJunction.cpp.
|
protected |
Constructor.
[in] | id | The id of the junction |
[in] | position | The position of the junction |
[in] | shape | The shape of the junction |
[in] | incoming | The incoming lanes |
[in] | internal | The internal lanes |
Definition at line 48 of file MSLogicJunction.cpp.
|
private |
Invalidated copy constructor.
|
inlineinherited |
Adds this object to the given container.
in,filled] | cont The container to add this item to |
Definition at line 114 of file Named.h.
References Named::StoringVisitor::add().
|
inlinevirtualinherited |
Reimplemented in MSRightOfWayJunction.
Definition at line 92 of file MSJunction.h.
References MSJunction::myEmptyLanes.
|
inlinevirtualinherited |
Reimplemented in MSRightOfWayJunction.
Definition at line 88 of file MSJunction.h.
References MSJunction::myEmptyLinks.
|
inlineinherited |
Returns the id.
Reimplemented in MS_E2_ZS_CollectorOverLanes.
Definition at line 60 of file Named.h.
References Named::myID.
Referenced by Named::StoringVisitor::add(), MSDetectorControl::add(), RORouteDef::addAlternative(), MSNet::addBusStop(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), RONet::addNode(), NIImporter_SUMO::addPhase(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), MSPerson::MSPersonStage_Driving::beginEventOutput(), MSPerson::MSPersonStage_Waiting::beginEventOutput(), NIVisumTL::build(), RODFNet::buildApproachList(), MS_E2_ZS_CollectorOverLanes::buildCollector(), NIImporter_VISUM::buildDistrictNode(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSVehicleTransfer::checkInsertions(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBNode::computeNodeShape(), NBTrafficLightLogicCont::computeSingleLogic(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), NBEdge::connections_sorter(), NLDetectorBuilder::convUncontE2PosLength(), MSLane::detectCollisions(), NIVissimDistrictConnection::dict_BuildDistricts(), MSPerson::MSPersonStage_Driving::endEventOutput(), MSPerson::MSPersonStage_Waiting::endEventOutput(), MSE3Collector::enter(), MSCalibrator::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSNet::getBusStopID(), MS_E2_ZS_CollectorOverLanes::getLanePredeccessorLanes(), AGStreet::getName(), NIImporter_VISUM::getNamedEdgeContinuating(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), NBEdgeCont::ignoreFilterMatch(), MSActuatedTrafficLightLogic::init(), MSAgentbasedTrafficLightLogic::init(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBTrafficLightLogicCont::insert(), NBNodeCont::insert(), NBEdgeCont::insert(), NBEdgeCont::joinSameNodeConnectingEdges(), MSE3Collector::leave(), NIImporter_OpenDrive::loadNetwork(), NBRampsComputer::moveRampRight(), MSPerson::MSPersonStage_Waiting::MSPersonStage_Waiting(), MSVehicle::MSVehicle(), NBOwnTLDef::myCompute(), NBLoadedTLDef::myCompute(), NIXMLTrafficLightsHandler::myEndElement(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSDevice_Tripinfo::notifyEnter(), MSDevice_Tripinfo::notifyLeave(), MSDevice_Person::notifyLeave(), RORouteHandler::openRoute(), Named::ComparatorIdLess::operator()(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), NBLoadedTLDef::SignalGroup::patchTYellow(), AGStreet::print(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Lane::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), NWWriter_SUMO::prohibitionConnection(), NBEdgeCont::recheckPostProcessConnections(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::removeUnwishedNodes(), NBNodeCont::rename(), NBEdgeCont::rename(), NBConnection::replaceFrom(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), PCPolyContainer::save(), RONet::saveAndRemoveRoutesUntil(), NBNodeCont::setAsTLControlled(), NBEdge::setControllingTLInformation(), NIXMLEdgesHandler::setNodes(), NBOwnTLDef::setTLControllingInformation(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdgeCont::splitAt(), NIXMLConnectionsHandler::validateLaneInfo(), TraCIServerAPI_Vehicle::vtdMap_matchingEdgeLane(), TraCIServerAPI_Vehicle::vtdMap_matchingRoutePosition(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), NBSign::writeAsPOI(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeInternalConnections(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), MSInductLoop::writeTypedXMLOutput(), MSFullExport::writeVehicles(), MSRouteProbe::writeXMLOutput(), and MSE2Collector::writeXMLOutput().
|
inherited |
returns the junction's position
Definition at line 58 of file MSJunction.cpp.
References MSJunction::myPosition.
Referenced by GUIJunctionWrapper::drawGL(), GUINet::getJunctionPosition(), TraCIServerAPI_Junction::getPosition(), GUIJunctionWrapper::GUIJunctionWrapper(), and TraCIServerAPI_Junction::processGet().
|
inlineinherited |
Returns this junction's shape.
Definition at line 84 of file MSJunction.h.
References MSJunction::myShape.
Referenced by GUIJunctionWrapper::drawGL(), and GUIJunctionWrapper::GUIJunctionWrapper().
|
private |
Invalidated assignment operator.
|
virtual |
initialises the junction after the whole net has been loaded
Reimplemented from MSJunction.
Reimplemented in MSRightOfWayJunction.
Definition at line 68 of file MSLogicJunction.cpp.
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 68 of file Named.h.
References Named::myID.
Referenced by NBNodeCont::rename(), and NBEdgeCont::rename().
|
protectedinherited |
Definition at line 104 of file MSJunction.h.
Referenced by MSJunction::getFoeInternalLanes().
|
protectedinherited |
Definition at line 103 of file MSJunction.h.
Referenced by MSJunction::getFoeLinks().
|
protectedinherited |
The name of the object.
Definition at line 121 of file Named.h.
Referenced by NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSCalibrator::execute(), Named::getID(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), ROEdge::getTravelTime(), MSCalibrator::init(), NBEdge::init(), MSCalibrator::myStartElement(), MSCalibrator::VehicleRemover::notifyEnter(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), RORouteDef::repairCurrentRoute(), Named::setID(), NBEdge::splitGeometry(), MSXMLRawOut::writeLane(), NBNode::writeLogic(), MSCalibrator::writeXMLOutput(), MSE3Collector::writeXMLOutput(), and MSMeanData::writeXMLOutput().
|
protected |
list of incoming lanes
Definition at line 92 of file MSLogicJunction.h.
Referenced by MSRightOfWayJunction::postloadInit().
|
protected |
Current inner state
Definition at line 100 of file MSLogicJunction.h.
Referenced by MSRightOfWayJunction::postloadInit().
|
protectedinherited |
The position of the junction.
Definition at line 98 of file MSJunction.h.
Referenced by MSJunction::getPosition().
|
protectedinherited |
The shape of the junction.
Definition at line 101 of file MSJunction.h.
Referenced by MSJunction::getShape().