Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
NWWriter_SUMO Class Reference

Exporter writing networks using the SUMO format. More...

#include <NWWriter_SUMO.h>

Public Types

enum  ConnectionStyle { SUMONET , PLAIN , TLL }

Static Public Member Functions

static void writeConnection (OutputDevice &into, const NBEdge &from, const NBEdge::Connection &c, bool includeInternal, ConnectionStyle style=SUMONET, bool geoAccuracy=false)
 Writes connections outgoing from the given edge (also used in NWWriter_XML).
static void writeDistrict (OutputDevice &into, const NBDistrict &d)
 Writes a district.
static void writeNetwork (const OptionsCont &oc, NBNetBuilder &nb)
 Writes the network into a SUMO-file.
static void writeProhibitions (OutputDevice &into, const NBConnectionProhibits &prohibitions)
 writes the given prohibitions
static void writeRoundabouts (OutputDevice &into, const std::set< EdgeSet > &roundabouts, const NBEdgeCont &ec)
 Writes roundabouts.
static void writeStopOffsets (OutputDevice &into, const StopOffset &stopOffset)
 Write a stopOffset element into output device.
static void writeTrafficLight (OutputDevice &into, const NBTrafficLightLogic *logic)
 writes a single traffic light logic to the given device
static void writeTrafficLights (OutputDevice &into, const NBTrafficLightLogicCont &tllCont)
 writes the traffic light logics to the given device

Static Private Member Functions

Methods for writing network parts
static bool writeInternalEdges (OutputDevice &into, const NBEdgeCont &ec, const NBNode &n)
 Writes internal edges (<edge ... with id[0]==':') of the given node.
static std::string getInternalBidi (const NBEdge *e, const NBEdge::Connection &k, double &length)
 retrieve bidi edge id for internal corresponding to the given connection
static void writeEdge (OutputDevice &into, const NBEdge &e, bool noNames, LaneSpreadFunction defaultSpread)
 Writes an edge (<edge ...).
static void writeLane (OutputDevice &into, const std::string &lID, double speed, double friction, SVCPermissions permissions, SVCPermissions preferred, SVCPermissions changeLeft, SVCPermissions changeRight, double startOffset, double endOffset, const StopOffset &stopOffset, double width, PositionVector shape, const Parameterised *params, double length, int index, const std::string &oppositeID, const std::string &type, bool accelRamp=false, bool customShape=false, const PositionVector &outlineShape=PositionVector())
 Writes a lane (<lane ...) of an edge.
static void writeJunction (OutputDevice &into, const NBNode &n)
 Writes a junction (<junction ...).
static bool writeInternalNodes (OutputDevice &into, const NBNode &n)
 Writes internal junctions (<junction with id[0]==':' ...) of the given node.
static bool writeInternalConnections (OutputDevice &into, const NBNode &n)
 Writes inner connections within the node.
static void writeInternalConnection (OutputDevice &into, const std::string &from, const std::string &to, int fromLane, int toLane, const std::string &via, LinkDirection dir=LinkDirection::STRAIGHT, const std::string &tlID="", int linkIndex=NBConnection::InvalidTlIndex, bool minor=false, double visibility=NBEdge::UNSPECIFIED_VISIBILITY_DISTANCE)
 Writes a single internal connection.
static std::string writeSUMOTime (SUMOTime time)
 writes a SUMOTime as int if possible, otherwise as a float
static std::string prohibitionConnection (const NBConnection &c)
 the attribute value for a prohibition
static void writeRoundabout (OutputDevice &into, const std::vector< std::string > &r, const NBEdgeCont &ec)
 Writes a roundabout.
static std::string getOppositeInternalID (const NBEdgeCont &ec, const NBEdge *from, const NBEdge::Connection &con, double &oppositeLength)
 retrieve the id of the opposite direction internal lane if it exists

Detailed Description

Exporter writing networks using the SUMO format.

Definition at line 55 of file NWWriter_SUMO.h.

Member Enumeration Documentation

◆ ConnectionStyle

Enumerator
SUMONET 
PLAIN 
TLL 

Definition at line 58 of file NWWriter_SUMO.h.

Member Function Documentation

◆ getInternalBidi()

std::string NWWriter_SUMO::getInternalBidi ( const NBEdge * e,
const NBEdge::Connection & k,
double & length )
staticprivate

retrieve bidi edge id for internal corresponding to the given connection

Definition at line 453 of file NWWriter_SUMO.cpp.

References NBEdge::getConnections(), NBEdge::getConnectionsFromLane(), NBEdge::getNumLanes(), NBEdge::getTurnDestination(), NBEdge::Connection::id, NBEdge::Connection::length, PositionVector::reverse(), TL, NBEdge::Connection::toEdge, and WRITE_WARNINGF.

Referenced by writeInternalEdges().

Here is the caller graph for this function:

◆ getOppositeInternalID()

std::string NWWriter_SUMO::getOppositeInternalID ( const NBEdgeCont & ec,
const NBEdge * from,
const NBEdge::Connection & con,
double & oppositeLength )
staticprivate

retrieve the id of the opposite direction internal lane if it exists

Definition at line 250 of file NWWriter_SUMO.cpp.

References NBEdge::Connection::fromLane, OptionsCont::getBool(), NBEdge::getConnections(), NBEdge::Connection::getDescription(), NBNode::getDirection(), NBEdge::Connection::getInternalLaneID(), NBEdge::getLaneID(), NBEdge::getLanes(), OptionsCont::getOptions(), NBEdge::getToNode(), NBEdge::Connection::length, NBEdge::Lane::oppositeID, NBEdgeCont::retrieve(), STRAIGHT, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.

Referenced by writeInternalEdges().

Here is the caller graph for this function:

◆ prohibitionConnection()

std::string NWWriter_SUMO::prohibitionConnection ( const NBConnection & c)
staticprivate

the attribute value for a prohibition

Definition at line 1025 of file NWWriter_SUMO.cpp.

References NBConnection::getFrom(), NBEdge::getID(), and NBConnection::getTo().

Referenced by writeProhibitions().

Here is the caller graph for this function:

◆ writeConnection()

void NWWriter_SUMO::writeConnection ( OutputDevice & into,
const NBEdge & from,
const NBEdge::Connection & c,
bool includeInternal,
ConnectionStyle style = SUMONET,
bool geoAccuracy = false )
static

Writes connections outgoing from the given edge (also used in NWWriter_XML).

Parameters
[in]intoThe device to write the edge into
[in]fromThe edge to write connections for
[in]cThe connection to write
[in]includeInternalWhether information about inner-lanes used to cross the intersection shall be written
[in]plainWhether only plain-xml output should be written (omit some attributes)

Definition at line 760 of file NWWriter_SUMO.cpp.

References NBEdge::Connection::changeLeft, NBEdge::Connection::changeRight, OutputDevice::closeTag(), NBEdge::Connection::contPos, NBEdge::Connection::customLength, NBEdge::Connection::customShape, NBEdge::Connection::edgeType, NBEdge::Connection::fromLane, NBNode::getDirection(), OptionsCont::getFloat(), NBEdge::getID(), NBEdge::Connection::getInternalLaneID(), NBEdge::getJunctionPriority(), NBNode::getLinkState(), OptionsCont::getOptions(), NBEdge::getToNode(), getVehicleClassNames(), gPrecisionGeo, NBEdge::Connection::indirectLeft, NBEdge::Connection::keepClear, KEEPCLEAR_FALSE, LINKSTATE_MINOR, NBEdge::Connection::mayDefinitelyPass, NODIR, OutputDevice::openTag(), NBEdge::Connection::permissions, PLAIN, NBEdge::ROUNDABOUT, OutputDevice::setPrecision(), NBEdge::Connection::speed, SUMO_ATTR_CHANGE_LEFT, SUMO_ATTR_CHANGE_RIGHT, SUMO_ATTR_CONTPOS, SUMO_ATTR_DIR, SUMO_ATTR_FROM, SUMO_ATTR_FROM_LANE, SUMO_ATTR_INDIRECT, SUMO_ATTR_KEEP_CLEAR, SUMO_ATTR_LENGTH, SUMO_ATTR_PASS, SUMO_ATTR_SHAPE, SUMO_ATTR_SPEED, SUMO_ATTR_STATE, SUMO_ATTR_TLID, SUMO_ATTR_TLLINKINDEX, SUMO_ATTR_TLLINKINDEX2, SUMO_ATTR_TO, SUMO_ATTR_TO_LANE, SUMO_ATTR_TYPE, SUMO_ATTR_UNCONTROLLED, SUMO_ATTR_VIA, SUMO_ATTR_VISIBILITY_DISTANCE, SUMO_TAG_CONNECTION, SUMONET, SVC_IGNORING, SVC_UNSPECIFIED, SVCAll, NBEdge::Connection::tlID, TLL, NBEdge::Connection::tlLinkIndex, NBEdge::Connection::tlLinkIndex2, NBEdge::Connection::toEdge, NBEdge::Connection::toLane, toString(), NBEdge::Connection::uncontrolled, NBEdge::UNSPECIFIED_CONTPOS, NBEdge::UNSPECIFIED_LOADED_LENGTH, NBEdge::UNSPECIFIED_SPEED, NBEdge::UNSPECIFIED_VISIBILITY_DISTANCE, NBEdge::Connection::visibility, OutputDevice::writeAttr(), Parameterised::writeParams(), and writePermissions().

Referenced by NWWriter_XML::writeEdgesAndConnections(), writeNetwork(), and NWWriter_XML::writeTrafficLights().

Here is the caller graph for this function:

◆ writeDistrict()

void NWWriter_SUMO::writeDistrict ( OutputDevice & into,
const NBDistrict & d )
static

Writes a district.

Parameters
[in]intoThe device to write the edge into
[in]dThe district

Definition at line 969 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), Named::getID(), NBDistrict::getShape(), NBDistrict::getSinkEdges(), NBDistrict::getSinkWeights(), NBDistrict::getSourceEdges(), NBDistrict::getSourceWeights(), VectorHelper< T >::normaliseSum(), OutputDevice::openTag(), SUMO_ATTR_ID, SUMO_ATTR_SHAPE, SUMO_ATTR_WEIGHT, SUMO_TAG_TAZ, SUMO_TAG_TAZSINK, SUMO_TAG_TAZSOURCE, and OutputDevice::writeAttr().

Referenced by NWWriter_XML::writeDistricts(), and writeNetwork().

Here is the caller graph for this function:

◆ writeEdge()

void NWWriter_SUMO::writeEdge ( OutputDevice & into,
const NBEdge & e,
bool noNames,
LaneSpreadFunction defaultSpread )
staticprivate

Writes an edge (<edge ...).

Parameters
[in]intoThe device to write the edge into
[in]eThe edge to write
[in]noNamesWhether names shall be ignored
See also
writeLane()

Definition at line 482 of file NWWriter_SUMO.cpp.

References NBEdge::Lane::accelRamp, NBEdge::Lane::changeLeft, NBEdge::Lane::changeRight, OutputDevice::closeTag(), CONNECTOR, NBEdge::Lane::customShape, NBEdge::Lane::endOffset, StringUtils::escapeXML(), NBEdge::Lane::friction, NBEdge::getBidiEdge(), NBEdge::getDistance(), NBEdge::getEdgeStopOffset(), NBEdge::getEndOffset(), NBEdge::getFinalLength(), NBEdge::getFromNode(), NBEdge::getGeometry(), Named::getID(), NBEdge::getID(), NBEdge::getLaneID(), NBEdge::getLanes(), NBEdge::getLaneSpreadFunction(), NBEdge::getLoadedLength(), NBEdge::getPriority(), NBEdge::getRoutingType(), NBEdge::getStreetName(), NBEdge::getToNode(), NBEdge::getTurnDestination(), NBEdge::getTypeID(), NBEdge::hasDefaultGeometry(), NBEdge::hasLoadedLength(), NBEdge::isBidiRail(), StopOffset::isDefined(), NBEdge::isMacroscopicConnector(), NBEdge::Lane::laneStopOffset, OutputDevice::openTag(), NBEdge::Lane::oppositeID, NBEdge::Lane::permissions, NBEdge::Lane::preferred, NBEdge::Lane::shape, NBEdge::Lane::speed, SUMO_ATTR_BIDI, SUMO_ATTR_DISTANCE, SUMO_ATTR_FROM, SUMO_ATTR_FUNCTION, SUMO_ATTR_ID, SUMO_ATTR_LENGTH, SUMO_ATTR_NAME, SUMO_ATTR_PRIORITY, SUMO_ATTR_ROUTINGTYPE, SUMO_ATTR_SHAPE, SUMO_ATTR_SPREADTYPE, SUMO_ATTR_TO, SUMO_ATTR_TYPE, SUMO_TAG_EDGE, NBEdge::Lane::type, NBEdge::Lane::width, OutputDevice::writeAttr(), writeLane(), Parameterised::writeParams(), and writeStopOffsets().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeInternalConnection()

void NWWriter_SUMO::writeInternalConnection ( OutputDevice & into,
const std::string & from,
const std::string & to,
int fromLane,
int toLane,
const std::string & via,
LinkDirection dir = LinkDirection::STRAIGHT,
const std::string & tlID = "",
int linkIndex = NBConnection::InvalidTlIndex,
bool minor = false,
double visibility = NBEdge::UNSPECIFIED_VISIBILITY_DISTANCE )
staticprivate

Writes a single internal connection.

Parameters
[in]fromThe id of the from-edge
[in]toThe id of the to-edge
[in]toLaneThe indexd of the to-lane
[in]viaThe (optional) via edge

Definition at line 884 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), NBConnection::InvalidTlIndex, OutputDevice::openTag(), SUMO_ATTR_DIR, SUMO_ATTR_FROM, SUMO_ATTR_FROM_LANE, SUMO_ATTR_STATE, SUMO_ATTR_TLID, SUMO_ATTR_TLLINKINDEX, SUMO_ATTR_TO, SUMO_ATTR_TO_LANE, SUMO_ATTR_VIA, SUMO_ATTR_VISIBILITY_DISTANCE, SUMO_TAG_CONNECTION, NBEdge::UNSPECIFIED_VISIBILITY_DISTANCE, and OutputDevice::writeAttr().

Referenced by writeInternalConnections(), and writeNetwork().

Here is the caller graph for this function:

◆ writeInternalConnections()

bool NWWriter_SUMO::writeInternalConnections ( OutputDevice & into,
const NBNode & n )
staticprivate

Writes inner connections within the node.

Parameters
[in]intoThe device to write the edge into
[in]nThe node to write inner links for

Definition at line 854 of file NWWriter_SUMO.cpp.

References OptionsCont::getBool(), OptionsCont::getOptions(), NBConnection::InvalidTlIndex, n, and writeInternalConnection().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeInternalEdges()

bool NWWriter_SUMO::writeInternalEdges ( OutputDevice & into,
const NBEdgeCont & ec,
const NBNode & n )
staticprivate

Writes internal edges (<edge ... with id[0]==':') of the given node.

Parameters
[in]intoThe device to write the edges into
[in]nThe node to write the edges of
Returns
Whether an internal edge was written

Definition at line 303 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), CROSSING, OptionsCont::getFloat(), getInternalBidi(), getOppositeInternalID(), OptionsCont::getOptions(), NBNode::WalkingArea::hasCustomShape, NBNode::WalkingArea::id, INTERNAL, NBNode::WalkingArea::length, MAX2(), n, OutputDevice::openTag(), NBEdge::Lane::permissions, NBEdge::Lane::preferred, NBNode::WalkingArea::shape, SUMO_ATTR_BIDI, SUMO_ATTR_CROSSING_EDGES, SUMO_ATTR_FUNCTION, SUMO_ATTR_ID, SUMO_ATTR_TYPE, SUMO_TAG_EDGE, SVC_PEDESTRIAN, SVC_UNSPECIFIED, SVCAll, NBEdge::UNSPECIFIED_FRICTION, NBEdge::UNSPECIFIED_OFFSET, WALKINGAREA, NBNode::WalkingArea::width, OutputDevice::writeAttr(), and writeLane().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeInternalNodes()

bool NWWriter_SUMO::writeInternalNodes ( OutputDevice & into,
const NBNode & n )
staticprivate

Writes internal junctions (<junction with id[0]==':' ...) of the given node.

Parameters
[in]intoThe device to write the edge into
[in]nThe junction/node to write internal nodes for

Definition at line 703 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), INTERNAL, joinToString(), n, OutputDevice::openTag(), SUMO_ATTR_ID, SUMO_ATTR_INCLANES, SUMO_ATTR_INTLANES, SUMO_ATTR_TYPE, SUMO_TAG_JUNCTION, StringUtils::toInt(), OutputDevice::writeAttr(), and NWFrame::writePositionLong().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeJunction()

void NWWriter_SUMO::writeJunction ( OutputDevice & into,
const NBNode & n )
staticprivate

Writes a junction (<junction ...).

Parameters
[in]intoThe device to write the edge into
[in]nThe junction/node to write

Definition at line 624 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), DEAD_END, DEFAULT, StringUtils::escapeXML(), OptionsCont::getOptions(), n, NOJUNCTION, OutputDevice::openTag(), SUMO_ATTR_CUSTOMSHAPE, SUMO_ATTR_FRINGE, SUMO_ATTR_ID, SUMO_ATTR_INCLANES, SUMO_ATTR_INTLANES, SUMO_ATTR_NAME, SUMO_ATTR_RADIUS, SUMO_ATTR_RIGHT_OF_WAY, SUMO_ATTR_ROUNDABOUT, SUMO_ATTR_SHAPE, SUMO_ATTR_TYPE, SUMO_TAG_JUNCTION, toString(), NBNode::UNSPECIFIED_RADIUS, OutputDevice::writeAttr(), and NWFrame::writePositionLong().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeLane()

void NWWriter_SUMO::writeLane ( OutputDevice & into,
const std::string & lID,
double speed,
double friction,
SVCPermissions permissions,
SVCPermissions preferred,
SVCPermissions changeLeft,
SVCPermissions changeRight,
double startOffset,
double endOffset,
const StopOffset & stopOffset,
double width,
PositionVector shape,
const Parameterised * params,
double length,
int index,
const std::string & oppositeID,
const std::string & type,
bool accelRamp = false,
bool customShape = false,
const PositionVector & outlineShape = PositionVector() )
staticprivate

Writes a lane (<lane ...) of an edge.

Parameters
[in]intoThe device to write the edge into
[in]lIDThe ID of the lane
[in]origIDThe original ID of the edge in the input
[in]lengthLane's length
[in]indexThe index of the lane within the edge
[in]oppositeIDThe ID of the opposite lane for overtaking
[in]accelRampwhether this lane is an acceleration lane
[in]customShapewhether this lane has a custom shape

Definition at line 548 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), PositionVector::getSubpart(), getVehicleClassNames(), StopOffset::isDefined(), PositionVector::length(), MAX2(), MIN2(), OutputDevice::openTag(), SUMO_ATTR_ACCELERATION, SUMO_ATTR_CHANGE_LEFT, SUMO_ATTR_CHANGE_RIGHT, SUMO_ATTR_CUSTOMSHAPE, SUMO_ATTR_ENDOFFSET, SUMO_ATTR_FRICTION, SUMO_ATTR_ID, SUMO_ATTR_INDEX, SUMO_ATTR_LANE, SUMO_ATTR_LENGTH, SUMO_ATTR_OUTLINESHAPE, SUMO_ATTR_SHAPE, SUMO_ATTR_SPEED, SUMO_ATTR_TYPE, SUMO_ATTR_WIDTH, SUMO_TAG_LANE, SUMO_TAG_NEIGH, SVC_IGNORING, SVC_UNSPECIFIED, SVCAll, NBEdge::UNSPECIFIED_FRICTION, NBEdge::UNSPECIFIED_OFFSET, NBEdge::UNSPECIFIED_WIDTH, OutputDevice::writeAttr(), Parameterised::writeParams(), writePermissions(), writePreferences(), and writeStopOffsets().

Referenced by writeEdge(), and writeInternalEdges().

Here is the caller graph for this function:

◆ writeNetwork()

void NWWriter_SUMO::writeNetwork ( const OptionsCont & oc,
NBNetBuilder & nb )
static

Writes the network into a SUMO-file.

Parameters
[in]ocThe options to use
[in]nbThe network builder to fill

Definition at line 55 of file NWWriter_SUMO.cpp.

References NBDistrictCont::begin(), NBEdgeCont::begin(), NBNodeCont::begin(), OutputDevice::close(), OutputDevice::closeTag(), NBDistrictCont::end(), NBEdgeCont::end(), NBNodeCont::end(), OptionsCont::exists(), OptionsCont::getBool(), NBEdge::getConnections(), NBNode::getCrossing(), NBNode::getCrossings(), OutputDevice::getDevice(), NBNetBuilder::getDistrictCont(), NBNetBuilder::getEdgeCont(), OptionsCont::getFloat(), OptionsCont::getInt(), NBNetBuilder::getNodeCont(), OptionsCont::getOptions(), NBEdgeCont::getRoundabouts(), OptionsCont::getString(), NBNetBuilder::getTLLogicCont(), NBNetBuilder::getTypeCont(), NBEdgeCont::getUsedTypes(), NBNode::getWalkingAreas(), NBHelpers::interpretLaneID(), OptionsCont::isDefault(), OptionsCont::isSet(), SUMOXMLDefinitions::LaneSpreadFunctions, OutputDevice::lf(), LINKSTATE_MAJOR, LINKSTATE_MINOR, NETWORK_VERSION(), OutputDevice::openTag(), NBNode::Crossing::priority, OptionsCont::resetWritable(), RIGHT, OptionsCont::set(), NBDistrictCont::size(), STRAIGHT, SUMO_ATTR_AVOID_OVERLAP, SUMO_ATTR_CHECKLANEFOES_ALL, SUMO_ATTR_CHECKLANEFOES_ROUNDABOUT, SUMO_ATTR_CORNERDETAIL, SUMO_ATTR_DIR, SUMO_ATTR_FROM, SUMO_ATTR_FROM_LANE, SUMO_ATTR_HIGHER_SPEED, SUMO_ATTR_INTERNAL_JUNCTIONS_VEHICLE_WIDTH, SUMO_ATTR_JUNCTIONS_ENDPOINT_SHAPE, SUMO_ATTR_JUNCTIONS_MINIMAL_SHAPE, SUMO_ATTR_LEFTHAND, SUMO_ATTR_LIMIT_TURN_SPEED, SUMO_ATTR_LINKDETAIL, SUMO_ATTR_RECTANGULAR_LANE_CUT, SUMO_ATTR_SPREADTYPE, SUMO_ATTR_STATE, SUMO_ATTR_TLID, SUMO_ATTR_TLLINKINDEX, SUMO_ATTR_TLS_IGNORE_INTERNAL_JUNCTION_JAM, SUMO_ATTR_TO, SUMO_ATTR_TO_LANE, SUMO_ATTR_VERSION, SUMO_ATTR_WALKINGAREAS, SUMO_TAG_CONNECTION, TL, NBNode::Crossing::tlID, NBNode::Crossing::tlLinkIndex, toString(), WRITE_WARNING, OutputDevice::writeAttr(), writeConnection(), writeDistrict(), writeEdge(), NBTypeCont::writeEdgeTypes(), writeInternalConnection(), writeInternalConnections(), writeInternalEdges(), writeInternalNodes(), writeJunction(), GeoConvHelper::writeLocation(), writeProhibitions(), writeRoundabouts(), writeTrafficLights(), and OutputDevice::writeXMLHeader().

Referenced by NWFrame::writeNetwork().

Here is the caller graph for this function:

◆ writeProhibitions()

void NWWriter_SUMO::writeProhibitions ( OutputDevice & into,
const NBConnectionProhibits & prohibitions )
static

writes the given prohibitions

Definition at line 1009 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), OutputDevice::openTag(), prohibitionConnection(), SUMO_ATTR_PROHIBITED, SUMO_ATTR_PROHIBITOR, SUMO_TAG_PROHIBITION, and OutputDevice::writeAttr().

Referenced by NWWriter_XML::writeEdgesAndConnections(), and writeNetwork().

Here is the caller graph for this function:

◆ writeRoundabout()

void NWWriter_SUMO::writeRoundabout ( OutputDevice & into,
const std::vector< std::string > & r,
const NBEdgeCont & ec )
staticprivate

Writes a roundabout.

Parameters
[in]intoThe device to write the edge into
[in]rThe roundabout to write
[in]ecThe edge control to retrieve named edges from

Definition at line 940 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), Named::getID(), NBEdge::getID(), NBEdge::getToNode(), joinToString(), OutputDevice::openTag(), NBEdgeCont::retrieve(), SUMO_ATTR_EDGES, SUMO_ATTR_NODES, SUMO_TAG_ROUNDABOUT, WRITE_WARNING, and OutputDevice::writeAttr().

Referenced by writeRoundabouts().

Here is the caller graph for this function:

◆ writeRoundabouts()

void NWWriter_SUMO::writeRoundabouts ( OutputDevice & into,
const std::set< EdgeSet > & roundabouts,
const NBEdgeCont & ec )
static

Writes roundabouts.

Parameters
[in]intoThe device to write the edge into
[in]roundaboutesThe roundabouts to write
[in]ecThe edge control to retrieve named edges from

Definition at line 914 of file NWWriter_SUMO.cpp.

References OutputDevice::lf(), and writeRoundabout().

Referenced by NWWriter_XML::writeEdgesAndConnections(), and writeNetwork().

Here is the caller graph for this function:

◆ writeStopOffsets()

void NWWriter_SUMO::writeStopOffsets ( OutputDevice & into,
const StopOffset & stopOffset )
static

Write a stopOffset element into output device.

Definition at line 1101 of file NWWriter_SUMO.cpp.

References OutputDevice::closeTag(), StopOffset::getOffset(), StopOffset::getPermissions(), getVehicleClassNames(), StopOffset::isDefined(), OutputDevice::openTag(), SUMO_ATTR_EXCEPTIONS, SUMO_ATTR_VALUE, SUMO_ATTR_VCLASSES, SUMO_TAG_STOPOFFSET, and OutputDevice::writeAttr().

Referenced by writeEdge(), NWWriter_XML::writeEdgesAndConnections(), and writeLane().

Here is the caller graph for this function:

◆ writeSUMOTime()

std::string NWWriter_SUMO::writeSUMOTime ( SUMOTime time)
staticprivate

writes a SUMOTime as int if possible, otherwise as a float

Definition at line 999 of file NWWriter_SUMO.cpp.

References STEPS2TIME, and toString().

Referenced by writeTrafficLight().

Here is the caller graph for this function:

◆ writeTrafficLight()

◆ writeTrafficLights()

void NWWriter_SUMO::writeTrafficLights ( OutputDevice & into,
const NBTrafficLightLogicCont & tllCont )
static

writes the traffic light logics to the given device

Definition at line 1031 of file NWWriter_SUMO.cpp.

References NBTrafficLightDefinition::finalChecks(), NBTrafficLightLogicCont::getComputed(), NBTrafficLightLogicCont::getDefinition(), OutputDevice::lf(), and writeTrafficLight().

Referenced by GNENet::saveTLSPrograms(), writeNetwork(), and NWWriter_XML::writeTrafficLights().

Here is the caller graph for this function:

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