Eclipse SUMO - Simulation of Urban MObility
NWWriter_DlrNavteq Class Reference

Exporter writing networks using XML (native input) format. More...

#include <NWWriter_DlrNavteq.h>

Static Public Member Functions

static int getBrunnelType (const NBEdge *const edge)
 get the navteq brunnel type More...
 
static int getFormOfWay (const NBEdge *const edge)
 get the form of way More...
 
static int getRoadClass (const NBEdge *const edge)
 get the navteq road class More...
 
static void writeNetwork (const OptionsCont &oc, NBNetBuilder &nb)
 Writes the network into XML-files (nodes, edges, connections, traffic lights) More...
 

Static Private Member Functions

static std::string getAllowedTypes (SVCPermissions permissions)
 build the ascii-bit-vector for column vehicle_type More...
 
static double getGraphLength (const NBEdge *const edge)
 get the length of the edge when measured up to the junction center More...
 
static int getNavteqLaneCode (const int numLanes)
 get the lane number encoding More...
 
static std::string getSinglePostalCode (const std::string &zipCode, const std::string edgeID)
 
static int getSpeedCategory (int kph)
 get the navteq speed class based on the speed in km/h More...
 
static int getSpeedCategoryUpperBound (int kph)
 get the SPEED_LIMIT as defined by elmar (upper bound of speed category) More...
 
static int speedInKph (double metersPerSecond)
 get edge speed rounded to kmh More...
 
static void writeConnectedLanes (const OptionsCont &oc, NBNodeCont &nc)
 Writes the connected_lanes file. More...
 
static void writeHeader (OutputDevice &device, const OptionsCont &oc)
 write header comments (input paramters, date, etc...) More...
 
static void writeLinksUnsplitted (const OptionsCont &oc, const NBEdgeCont &ec, const std::map< const NBEdge *, std::string > &internalNodes)
 Writes the links_unsplitted file. More...
 
static void writeNodesUnsplitted (const OptionsCont &oc, const NBNodeCont &nc, const NBEdgeCont &ec, std::map< const NBEdge *, std::string > &internalNodes)
 Writes the nodes_unsplitted file. More...
 
static void writeProhibitedManoeuvres (const OptionsCont &oc, const NBNodeCont &nc, const NBEdgeCont &ec)
 Writes the prohibited_manoeuvres file. More...
 
static void writeTrafficSignals (const OptionsCont &oc, NBNodeCont &nc)
 Writes the traffic_signals file. More...
 

Static Private Attributes

static const std::string UNDEFINED
 magic value for undefined stuff More...
 

Detailed Description

Exporter writing networks using XML (native input) format.

Definition at line 51 of file NWWriter_DlrNavteq.h.

Member Function Documentation

◆ getAllowedTypes()

std::string NWWriter_DlrNavteq::getAllowedTypes ( SVCPermissions  permissions)
staticprivate

build the ascii-bit-vector for column vehicle_type

Definition at line 289 of file NWWriter_DlrNavteq.cpp.

References SVC_BICYCLE, SVC_BUS, SVC_COACH, SVC_DELIVERY, SVC_EMERGENCY, SVC_HOV, SVC_MOTORCYCLE, SVC_PASSENGER, SVC_PEDESTRIAN, SVC_TAXI, SVC_TRAILER, SVC_TRUCK, and SVCAll.

Referenced by writeConnectedLanes(), writeLinksUnsplitted(), and writeProhibitedManoeuvres().

Here is the caller graph for this function:

◆ getBrunnelType()

int NWWriter_DlrNavteq::getBrunnelType ( const NBEdge *const  edge)
static

get the navteq brunnel type

Definition at line 417 of file NWWriter_DlrNavteq.cpp.

References NBEdge::getTypeID(), and Parameterised::hasParameter().

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ getFormOfWay()

int NWWriter_DlrNavteq::getFormOfWay ( const NBEdge *const  edge)
static

get the form of way

Definition at line 430 of file NWWriter_DlrNavteq.cpp.

References NBEdge::getJunctionPriority(), NBEdge::getPermissions(), NBEdge::getToNode(), NBEdge::getTypeID(), and SVC_PEDESTRIAN.

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ getGraphLength()

double NWWriter_DlrNavteq::getGraphLength ( const NBEdge *const  edge)
staticprivate

get the length of the edge when measured up to the junction center

Definition at line 445 of file NWWriter_DlrNavteq.cpp.

References NBEdge::getFromNode(), NBEdge::getGeometry(), NBNode::getPosition(), NBEdge::getToNode(), PositionVector::length(), PositionVector::push_back_noDoublePos(), and PositionVector::push_front_noDoublePos().

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ getNavteqLaneCode()

int NWWriter_DlrNavteq::getNavteqLaneCode ( const int  numLanes)
staticprivate

get the lane number encoding

Definition at line 409 of file NWWriter_DlrNavteq.cpp.

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ getRoadClass()

int NWWriter_DlrNavteq::getRoadClass ( const NBEdge *const  edge)
static

get the navteq road class

Definition at line 311 of file NWWriter_DlrNavteq.cpp.

References NBEdge::getNumLanes(), NBEdge::getSpeed(), NBEdge::getTypeID(), speedInKph(), and StringUtils::startsWith().

Referenced by writeLinksUnsplitted(), and NWWriter_Amitran::writeNetwork().

Here is the caller graph for this function:

◆ getSinglePostalCode()

std::string NWWriter_DlrNavteq::getSinglePostalCode ( const std::string &  zipCode,
const std::string  edgeID 
)
staticprivate

Definition at line 454 of file NWWriter_DlrNavteq.cpp.

References StringTokenizer::getVector(), and WRITE_WARNINGF.

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ getSpeedCategory()

int NWWriter_DlrNavteq::getSpeedCategory ( int  kph)
staticprivate

get the navteq speed class based on the speed in km/h

Definition at line 355 of file NWWriter_DlrNavteq.cpp.

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ getSpeedCategoryUpperBound()

int NWWriter_DlrNavteq::getSpeedCategoryUpperBound ( int  kph)
staticprivate

get the SPEED_LIMIT as defined by elmar (upper bound of speed category)

Definition at line 382 of file NWWriter_DlrNavteq.cpp.

Referenced by writeLinksUnsplitted().

Here is the caller graph for this function:

◆ speedInKph()

static int NWWriter_DlrNavteq::speedInKph ( double  metersPerSecond)
inlinestaticprivate

get edge speed rounded to kmh

Definition at line 128 of file NWWriter_DlrNavteq.h.

Referenced by getRoadClass(), and writeLinksUnsplitted().

Here is the caller graph for this function:

◆ writeConnectedLanes()

void NWWriter_DlrNavteq::writeConnectedLanes ( const OptionsCont oc,
NBNodeCont nc 
)
staticprivate

Writes the connected_lanes file.

Parameters
[in]ocThe options to use
[in]ncThe node-container from which to read data

Definition at line 544 of file NWWriter_DlrNavteq.cpp.

References NBNodeCont::begin(), OutputDevice::close(), NBNodeCont::end(), NBEdge::Connection::fromLane, getAllowedTypes(), NBEdge::getConnections(), OutputDevice::getDevice(), NBEdge::getID(), Named::getID(), NBNode::getIncomingEdges(), NBEdge::getPermissions(), OptionsCont::getString(), NBEdge::Connection::toEdge, NBEdge::Connection::toLane, and writeHeader().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeHeader()

void NWWriter_DlrNavteq::writeHeader ( OutputDevice device,
const OptionsCont oc 
)
staticprivate

write header comments (input paramters, date, etc...)

Definition at line 65 of file NWWriter_DlrNavteq.cpp.

References OptionsCont::getString(), and OptionsCont::writeConfiguration().

Referenced by writeConnectedLanes(), writeLinksUnsplitted(), writeNodesUnsplitted(), writeProhibitedManoeuvres(), and writeTrafficSignals().

Here is the caller graph for this function:

◆ writeLinksUnsplitted()

void NWWriter_DlrNavteq::writeLinksUnsplitted ( const OptionsCont oc,
const NBEdgeCont ec,
const std::map< const NBEdge *, std::string > &  internalNodes 
)
staticprivate

Writes the links_unsplitted file.

Parameters
[in]ocThe options to use
[in]ecThe edge-container from which to read data
[int]internalNodes The internal node ids, generated for edges with complex geometry

Definition at line 197 of file NWWriter_DlrNavteq.cpp.

References OutputDevice::close(), getAllowedTypes(), OptionsCont::getBool(), getBrunnelType(), OutputDevice::getDevice(), getFormOfWay(), NBEdge::getFromNode(), getGraphLength(), NBEdge::getID(), Named::getID(), getNavteqLaneCode(), NBEdge::getNumLanes(), Parameterised::getParameter(), NBEdge::getPermissions(), getRoadClass(), getSinglePostalCode(), NBEdge::getSpeed(), getSpeedCategory(), getSpeedCategoryUpperBound(), NBEdge::getStreetName(), OptionsCont::getString(), NBEdge::getToNode(), StringTokenizer::next(), speedInKph(), StringUtils::toInt(), toString(), UNDEFINED, and writeHeader().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeNetwork()

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

Writes the network into XML-files (nodes, edges, connections, traffic lights)

Parameters
[in]ocThe options to use
[in]nbThe network builder from which to read data

Definition at line 51 of file NWWriter_DlrNavteq.cpp.

References NBNetBuilder::getEdgeCont(), NBNetBuilder::getNodeCont(), OptionsCont::isSet(), writeConnectedLanes(), writeLinksUnsplitted(), writeNodesUnsplitted(), writeProhibitedManoeuvres(), and writeTrafficSignals().

Referenced by NWFrame::writeNetwork().

Here is the caller graph for this function:

◆ writeNodesUnsplitted()

void NWWriter_DlrNavteq::writeNodesUnsplitted ( const OptionsCont oc,
const NBNodeCont nc,
const NBEdgeCont ec,
std::map< const NBEdge *, std::string > &  internalNodes 
)
staticprivate

◆ writeProhibitedManoeuvres()

void NWWriter_DlrNavteq::writeProhibitedManoeuvres ( const OptionsCont oc,
const NBNodeCont nc,
const NBEdgeCont ec 
)
staticprivate

Writes the prohibited_manoeuvres file.

Parameters
[in]ocThe options to use
[in]ncThe node-container from which to read data

Definition at line 501 of file NWWriter_DlrNavteq.cpp.

References NBNodeCont::begin(), OutputDevice::close(), NBNodeCont::end(), NBEdgeCont::getAllNames(), getAllowedTypes(), OutputDevice::getDevice(), NBEdge::getID(), NBNode::getIncomingEdges(), IDSupplier::getNext(), NBNode::getOutgoingEdges(), NBEdge::getPermissions(), OptionsCont::getString(), NBEdge::isConnectedTo(), OptionsCont::isSet(), NBHelpers::loadPrefixedIDsFomFile(), SVC_PEDESTRIAN, SVCAll, UNDEFINED, and writeHeader().

Referenced by writeNetwork().

Here is the caller graph for this function:

◆ writeTrafficSignals()

void NWWriter_DlrNavteq::writeTrafficSignals ( const OptionsCont oc,
NBNodeCont nc 
)
staticprivate

Writes the traffic_signals file.

Parameters
[in]ocThe options to use
[in]ncThe node-container from which to read data

Definition at line 468 of file NWWriter_DlrNavteq.cpp.

References NBNodeCont::begin(), GeoConvHelper::cartesian2geo(), OutputDevice::close(), NBNodeCont::end(), OutputDevice::getDevice(), GeoConvHelper::getFinal(), NBEdge::getID(), Named::getID(), NBNode::getIncomingEdges(), OptionsCont::getInt(), NBNode::getPosition(), OptionsCont::getString(), NBNode::isTLControlled(), Position::mul(), OutputDevice::setPrecision(), GeoConvHelper::usingGeoProjection(), writeHeader(), Position::x(), and Position::y().

Referenced by writeNetwork().

Here is the caller graph for this function:

Field Documentation

◆ UNDEFINED

const std::string NWWriter_DlrNavteq::UNDEFINED
staticprivate

magic value for undefined stuff

Definition at line 125 of file NWWriter_DlrNavteq.h.

Referenced by writeLinksUnsplitted(), writeNodesUnsplitted(), and writeProhibitedManoeuvres().


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