SUMO - Simulation of Urban MObility
NLHandler Class Reference

The XML-Handler for network loading. More...

#include <NLHandler.h>

Inheritance diagram for NLHandler:
Inheritance graph
Collaboration diagram for NLHandler:
Collaboration graph

Public Types

typedef std::vector< MSLane * > LaneVector
 Definition of a lane vector. More...
 

Public Member Functions

void characters (const XMLCh *const chars, const XERCES3_SIZE_t length)
 The inherited method called when characters occured. More...
 
void endElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname)
 The inherited method called when a tag is being closed. More...
 
const std::string & getFileName () const
 returns the current file name More...
 
SUMOTime getFirstDepart () const
 returns the first departure time that was ever read More...
 
SUMOTime getLastDepart () const
 Returns the last loaded depart time. More...
 
bool haveSeenInternalEdge () const
 
bool lefthand () const
 
SUMOReal networkVersion () const
 
 NLHandler (const std::string &file, MSNet &net, NLDetectorBuilder &detBuilder, NLTriggerBuilder &triggerBuilder, NLEdgeControlBuilder &edgeBuilder, NLJunctionControlBuilder &junctionBuilder)
 Constructor. More...
 
void registerParent (const int tag, GenericSAXHandler *handler)
 Assigning a parent handler which is enabled when the specified tag is closed. More...
 
void setFileName (const std::string &name)
 Sets the current file name. More...
 
void startElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname, const XERCES_CPP_NAMESPACE::Attributes &attrs)
 The inherited method called when a new tag opens. More...
 
virtual ~NLHandler ()
 Destructor. More...
 
SAX ErrorHandler callbacks
void warning (const XERCES_CPP_NAMESPACE::SAXParseException &exception)
 Handler for XML-warnings. More...
 
void error (const XERCES_CPP_NAMESPACE::SAXParseException &exception)
 Handler for XML-errors. More...
 
void fatalError (const XERCES_CPP_NAMESPACE::SAXParseException &exception)
 Handler for XML-errors. More...
 

Static Public Member Functions

static bool checkStopPos (SUMOReal &startPos, SUMOReal &endPos, const SUMOReal laneLength, const SUMOReal minLength, const bool friendlyPos)
 check start and end position of a stop More...
 
static MTRandgetParsingRNG ()
 

Protected Types

typedef std::map< std::string, std::pair< std::string, std::string > > JunctionGraph
 temporary data for building the junction graph after network parsing is finished More...
 

Protected Member Functions

virtual void addE1Detector (const SUMOSAXAttributes &attrs)
 Builds an e1 detector using the given specification. More...
 
virtual void addE2Detector (const SUMOSAXAttributes &attrs)
 Builds an e2 detector using the given specification. More...
 
void addE3Entry (const SUMOSAXAttributes &attrs)
 Adds an entry to the currently processed e3 detector. More...
 
void addE3Exit (const SUMOSAXAttributes &attrs)
 Adds an exit to the currently processed e3 detector. More...
 
virtual void addEdgeLaneMeanData (const SUMOSAXAttributes &attrs, int objecttype)
 Builds edge or lane base mean data collector using the given specification. More...
 
virtual void addInstantE1Detector (const SUMOSAXAttributes &attrs)
 Builds an e1 detector using the given specification. More...
 
void addParam (const SUMOSAXAttributes &attrs)
 
virtual void addRouteProbeDetector (const SUMOSAXAttributes &attrs)
 Builds a routeProbe-detector using the given specification. More...
 
void addStop (const SUMOSAXAttributes &attrs)
 Processing of a stop. More...
 
virtual void addVTypeProbeDetector (const SUMOSAXAttributes &attrs)
 Builds a vtype-detector using the given specification. More...
 
void beginE3Detector (const SUMOSAXAttributes &attrs)
 Starts building of an e3 detector using the given specification. More...
 
std::string buildErrorMessage (const XERCES_CPP_NAMESPACE::SAXParseException &exception)
 Builds an error message. More...
 
bool checkLastDepart ()
 Checks whether the route file is sorted by departure time if needed. More...
 
void closeContainer ()
 Ends the processing of a container. More...
 
virtual void closeEdge ()
 Closes the process of building an edge. More...
 
void closeFlow ()
 Ends the processing of a flow. More...
 
void closePerson ()
 Ends the processing of a person. More...
 
void closeRoute (const bool mayBeDisconnected=false)
 
void closeRouteDistribution ()
 
void closeVehicle ()
 Ends the processing of a vehicle. More...
 
void closeVehicleTypeDistribution ()
 
virtual void endE3Detector ()
 Builds of an e3 detector using collected values. More...
 
virtual void myCharacters (int element, const std::string &chars)
 Callback method for characters to implement by derived classes. More...
 
void openRoute (const SUMOSAXAttributes &attrs)
 
void openRouteDistribution (const SUMOSAXAttributes &attrs)
 
void openVehicleTypeDistribution (const SUMOSAXAttributes &attrs)
 
void parseFromViaTo (std::string element, const SUMOSAXAttributes &attrs)
 Called for parsing from and to and the corresponding taz attributes. More...
 
bool parseStop (SUMOVehicleParameter::Stop &stop, const SUMOSAXAttributes &attrs, std::string errorSuffix, MsgHandler *const errorOutput)
 parses attributes common to all stops More...
 
SUMOReal parseWalkPos (SumoXMLAttr attr, const std::string &id, const MSEdge *edge, const std::string &val)
 
void parseWalkPositions (const SUMOSAXAttributes &attrs, const std::string &personID, const MSEdge *fromEdge, const MSEdge *&toEdge, SUMOReal &departPos, SUMOReal &arrivalPos, MSStoppingPlace *&bs, bool &ok)
 @ brief parse depart- and arrival positions of a walk More...
 
void registerLastDepart ()
 save last depart (only to be used if vehicle is not discarded) More...
 
inherited from GenericSAXHandler
virtual void myStartElement (int element, const SUMOSAXAttributes &attrs)
 Called on the opening of a tag;. More...
 
virtual void myEndElement (int element)
 Called when a closing tag occurs. More...
 

Protected Attributes

NLDiscreteEventBuilder myActionBuilder
 A builder for object actions. More...
 
MSTransportable::MSTransportablePlanmyActiveContainerPlan
 The plan of the current container. More...
 
MSTransportable::MSTransportablePlanmyActivePlan
 The plan of the current person. More...
 
ConstMSEdgeVector myActiveRoute
 The current route. More...
 
const RGBColormyActiveRouteColor
 The currently parsed route's color. More...
 
std::string myActiveRouteID
 The id of the current route. More...
 
SUMOReal myActiveRouteProbability
 The probability of the current route. More...
 
std::string myActiveRouteRefID
 The id of the route the current route references to. More...
 
std::vector< SUMOVehicleParameter::StopmyActiveRouteStops
 List of the stops on the parsed route. More...
 
bool myAddVehiclesDirectly
 Information whether vehicles shall be directly added to the network or kept within the buffer. More...
 
bool myAmInTLLogicMode
 internal information whether a tls-logic is currently read More...
 
SUMOTime myBeginDefault
 The default value for flow begins. More...
 
Boundary myConvBoundary
 
SUMOReal myCurrentCosts
 The currently parsed route costs. More...
 
std::string myCurrentDistrictID
 The id of the current district. More...
 
bool myCurrentIsBroken
 
bool myCurrentIsInternalToSkip
 Information whether the currently parsed edge is internal and not wished, here. More...
 
RandomDistributor< const MSRoute * > * myCurrentRouteDistribution
 The currently parsed distribution of routes (probability->route) More...
 
std::string myCurrentRouteDistributionID
 The id of the currently parsed route distribution. More...
 
std::string myCurrentTypeID
 The id of the currently processed edge type. More...
 
SUMOVTypeParametermyCurrentVType
 The currently parsed vehicle type. More...
 
RandomDistributor< MSVehicleType * > * myCurrentVTypeDistribution
 The currently parsed distribution of vehicle types (probability->vehicle type) More...
 
std::string myCurrentVTypeDistributionID
 The id of the currently parsed vehicle type distribution. More...
 
std::string myCurrentWAUTID
 The id of the currently processed WAUT. More...
 
NLDetectorBuildermyDetectorBuilder
 The detector builder to use. More...
 
NLEdgeControlBuildermyEdgeControlBuilder
 The edge builder to use. More...
 
SUMOTime myEndDefault
 The default value for flow ends. More...
 
SUMOTime myFirstDepart
 the first read departure time More...
 
bool myHaveSeenInternalEdge
 whether the loaded network contains internal lanes More...
 
bool myHaveWarnedAboutDeprecatedLanes
 
IDSupplier myIdSupplier
 generates numerical ids More...
 
int myInsertStopEdgesAt
 where stop edges can be inserted into the current route (-1 means no insertion) More...
 
NLJunctionControlBuildermyJunctionControlBuilder
 The junction builder to use. More...
 
JunctionGraph myJunctionGraph
 
SUMOTime myLastDepart
 The insertion time of the vehicle read last. More...
 
ParameterisedmyLastParameterised
 
bool myLefthand
 whether the loaded network was built for left hand traffic More...
 
MSNetmyNet
 The net to fill (preinitialised) More...
 
bool myNetIsLoaded
 whether the location element was already loadee More...
 
Position myNetworkOffset
 The network offset. More...
 
SUMOReal myNetworkVersion
 the loaded network version More...
 
Boundary myOrigBoundary
 The network's boundaries. More...
 
NLTriggerBuildermyTriggerBuilder
 The trigger builder to use. More...
 
SUMOVehicleParametermyVehicleParameter
 Parameter of the current vehicle, trip, person, container or flow. More...
 

Static Protected Attributes

static MTRand myParsingRNG
 A random number generator used to choose from vtype/route distributions and computing the speed factors. More...
 

Private Member Functions

void addConnection (const SUMOSAXAttributes &attrs)
 adds a connection More...
 
void addDistrict (const SUMOSAXAttributes &attrs)
 
void addDistrictEdge (const SUMOSAXAttributes &attrs, bool isSource)
 
void addLane (const SUMOSAXAttributes &attrs)
 adds a lane to the previously opened edge More...
 
void addPhase (const SUMOSAXAttributes &attrs)
 adds a phase to the traffic lights logic currently build More...
 
void addPOI (const SUMOSAXAttributes &attrs)
 adds a polygon More...
 
void addPoly (const SUMOSAXAttributes &attrs)
 adds a polygon More...
 
void addRequest (const SUMOSAXAttributes &attrs)
 adds a request item to the current junction logic More...
 
void addRoundabout (const SUMOSAXAttributes &attrs)
 
void addWAUTJunction (const SUMOSAXAttributes &attrs)
 
void addWAUTSwitch (const SUMOSAXAttributes &attrs)
 
void beginEdgeParsing (const SUMOSAXAttributes &attrs)
 begins the processing of an edge More...
 
void closeWAUT ()
 
void initJunctionLogic (const SUMOSAXAttributes &attrs)
 begins the reading of a junction row logic More...
 
void initTrafficLightLogic (const SUMOSAXAttributes &attrs)
 begins the reading of a traffic lights logic More...
 
 NLHandler (const NLHandler &s)
 
virtual void openJunction (const SUMOSAXAttributes &attrs)
 opens a junction for processing More...
 
virtual void openWAUT (const SUMOSAXAttributes &attrs)
 
NLHandleroperator= (const NLHandler &s)
 
void parseLanes (const std::string &junctionID, const std::string &def, std::vector< MSLane * > &into, bool &ok)
 
LinkDirection parseLinkDir (const std::string &dir)
 Parses the given character into an enumeration typed link direction. More...
 
LinkState parseLinkState (const std::string &state)
 Parses the given character into an enumeration typed link state. More...
 
void setLocation (const SUMOSAXAttributes &attrs)
 Parses network location description. More...
 

Detailed Description

The XML-Handler for network loading.

The SAX2-handler responsible for parsing networks and routes to load. This is an extension of the MSRouteHandler as routes and vehicles may also be loaded from network descriptions.

Definition at line 84 of file NLHandler.h.

Member Typedef Documentation

typedef std::map<std::string, std::pair<std::string, std::string> > NLHandler::JunctionGraph
protected

temporary data for building the junction graph after network parsing is finished

Definition at line 345 of file NLHandler.h.

typedef std::vector<MSLane*> NLHandler::LaneVector

Definition of a lane vector.

Definition at line 87 of file NLHandler.h.

Constructor & Destructor Documentation

NLHandler::NLHandler ( const std::string &  file,
MSNet net,
NLDetectorBuilder detBuilder,
NLTriggerBuilder triggerBuilder,
NLEdgeControlBuilder edgeBuilder,
NLJunctionControlBuilder junctionBuilder 
)

Constructor.

Parameters
[in]fileName of the parsed file
[in,out]netThe network to fill
[in]detBuilderThe detector builder to use
[in]triggerBuilderThe trigger builder to use
[in]edgeBuilderThe builder of edges to use
[in]junctionBuilderThe builder of junctions to use

Definition at line 68 of file NLHandler.cpp.

NLHandler::~NLHandler ( )
virtual

Destructor.

Definition at line 88 of file NLHandler.cpp.

NLHandler::NLHandler ( const NLHandler s)
private

invalid copy constructor

Member Function Documentation

void NLHandler::addDistrict ( const SUMOSAXAttributes attrs)
private

Parses a district and creates a pseudo edge for it

Called on the occurence of a "district" element, this method retrieves the id of the district and creates a district type edge with this id.

Parameters
[in]attrsThe attributes (of the "district"-element) to parse
Exceptions
ProcessErrorIf an edge given in district is not known

Definition at line 1137 of file NLHandler.cpp.

References ShapeContainer::addPolygon(), MSEdge::addSuccessor(), NLEdgeControlBuilder::buildEdge(), MSEdge::dictionary(), MSEdge::EDGEFUNCTION_DISTRICT, SUMOSAXAttributes::get(), MSNet::getShapeContainer(), SUMOSAXAttributes::getStringVector(), SUMOSAXAttributes::hasAttribute(), MSEdge::initialize(), myCurrentDistrictID, myCurrentIsBroken, myEdgeControlBuilder, myNet, RGBColor::parseColor(), SUMO_ATTR_EDGES, SUMO_ATTR_ID, SUMO_ATTR_SHAPE, WRITE_ERROR, and WRITE_WARNING.

Referenced by myStartElement().

void NLHandler::addDistrictEdge ( const SUMOSAXAttributes attrs,
bool  isSource 
)
private

Parses a district edge and connects it to the district

Called on the occurence of a "dsource" or "dsink" element, this method retrieves the id of the approachable edge. If this edge is known and valid, the approaching edge is informed about it.

Parameters
[in]attrsThe attributes to parse
[in]isSourcewhether a "dsource or a "dsink" was given
Todo:
No exception?

Definition at line 1187 of file NLHandler.cpp.

References MSEdge::dictionary(), SUMOSAXAttributes::get(), myCurrentDistrictID, myCurrentIsBroken, SUMO_ATTR_ID, and WRITE_ERROR.

Referenced by myStartElement().

void NLHandler::addE1Detector ( const SUMOSAXAttributes attrs)
protectedvirtual
void NLHandler::addE3Entry ( const SUMOSAXAttributes attrs)
protected

Adds an entry to the currently processed e3 detector.

Parameters
[in]attrsThe attributes that define the entry

Definition at line 931 of file NLHandler.cpp.

References NLDetectorBuilder::addE3Entry(), SUMOSAXAttributes::get(), NLDetectorBuilder::getCurrentE3ID(), SUMOSAXAttributes::getOpt(), myDetectorBuilder, SUMO_ATTR_FRIENDLY_POS, SUMO_ATTR_LANE, SUMO_ATTR_POSITION, and SUMOReal.

Referenced by myStartElement().

void NLHandler::addE3Exit ( const SUMOSAXAttributes attrs)
protected

Adds an exit to the currently processed e3 detector.

Parameters
[in]attrsThe attributes that define the exit

Definition at line 944 of file NLHandler.cpp.

References NLDetectorBuilder::addE3Exit(), SUMOSAXAttributes::get(), NLDetectorBuilder::getCurrentE3ID(), SUMOSAXAttributes::getOpt(), myDetectorBuilder, SUMO_ATTR_FRIENDLY_POS, SUMO_ATTR_LANE, SUMO_ATTR_POSITION, and SUMOReal.

Referenced by myStartElement().

void NLHandler::addEdgeLaneMeanData ( const SUMOSAXAttributes attrs,
int  objecttype 
)
protectedvirtual
void NLHandler::addInstantE1Detector ( const SUMOSAXAttributes attrs)
protectedvirtual
void NLHandler::addPOI ( const SUMOSAXAttributes attrs)
private

adds a polygon

void NLHandler::addPoly ( const SUMOSAXAttributes attrs)
private

adds a polygon

void NLHandler::addRequest ( const SUMOSAXAttributes attrs)
private
void NLHandler::addRoundabout ( const SUMOSAXAttributes attrs)
private

Parses a roundabout and sets flags for the edges

Parameters
[in]attrsThe attributes to parse

Definition at line 1209 of file NLHandler.cpp.

References MSEdge::dictionary(), SUMOSAXAttributes::getStringVector(), SUMOSAXAttributes::hasAttribute(), MSEdge::markAsRoundabout(), SUMO_ATTR_EDGES, and WRITE_ERROR.

Referenced by myStartElement().

void NLHandler::addRouteProbeDetector ( const SUMOSAXAttributes attrs)
protectedvirtual
void MSRouteHandler::addStop ( const SUMOSAXAttributes attrs)
protectedvirtualinherited
void NLHandler::addVTypeProbeDetector ( const SUMOSAXAttributes attrs)
protectedvirtual
std::string GenericSAXHandler::buildErrorMessage ( const XERCES_CPP_NAMESPACE::SAXParseException &  exception)
protectedinherited

Builds an error message.

The error message includes the file name and the line/column information as supported by the given SAXParseException

Parameters
[in]exceptionThe name of the currently processed file
Returns
A string describing the given exception

Definition at line 193 of file GenericSAXHandler.cpp.

References GenericSAXHandler::getFileName().

Referenced by GenericSAXHandler::error(), GenericSAXHandler::fatalError(), and GenericSAXHandler::warning().

void GenericSAXHandler::characters ( const XMLCh *const  chars,
const XERCES3_SIZE_t  length 
)
inherited

The inherited method called when characters occured.

The retrieved characters are converted into a string and appended into a private buffer. They are reported as soon as the element ends.

Todo:

recheck/describe what happens with characters when a new element is opened

describe characters processing in the class' head

Definition at line 176 of file GenericSAXHandler.cpp.

References TplConvert::_2str(), and GenericSAXHandler::myCharactersVector.

bool SUMORouteHandler::checkStopPos ( SUMOReal startPos,
SUMOReal endPos,
const SUMOReal  laneLength,
const SUMOReal  minLength,
const bool  friendlyPos 
)
staticinherited
void NLHandler::closeEdge ( )
protectedvirtual

Closes the process of building an edge.

Definition at line 381 of file NLHandler.cpp.

References NLEdgeControlBuilder::closeEdge(), MSEdge::dictionary(), Named::getID(), myCurrentIsBroken, myCurrentIsInternalToSkip, myEdgeControlBuilder, and WRITE_ERROR.

Referenced by myEndElement().

void MSRouteHandler::closeRouteDistribution ( )
protectedvirtualinherited
void MSRouteHandler::closeVehicleTypeDistribution ( )
protectedvirtualinherited
void NLHandler::endE3Detector ( )
protectedvirtual

Builds of an e3 detector using collected values.

Definition at line 1228 of file NLHandler.cpp.

References NLDetectorBuilder::endE3Detector(), myDetectorBuilder, and WRITE_ERROR.

Referenced by myEndElement().

void GenericSAXHandler::endElement ( const XMLCh *const  uri,
const XMLCh *const  localname,
const XMLCh *const  qname 
)
inherited

The inherited method called when a tag is being closed.

This method calls the user-implemented methods myCharacters with the previously collected and converted characters.

Then, myEndElement is called, supplying it the qname converted to its enum- and string-representations.

Todo:

recheck/describe encoding of the string-representation

do not generate and report the string-representation

Definition at line 126 of file GenericSAXHandler.cpp.

References TplConvert::_2str(), GenericSAXHandler::convertTag(), GenericSAXHandler::myCharacters(), GenericSAXHandler::myCharactersVector, GenericSAXHandler::myEndElement(), GenericSAXHandler::myParentHandler, GenericSAXHandler::myParentIndicator, XMLSubSys::setHandler(), SUMO_TAG_INCLUDE, and SUMO_TAG_NOTHING.

void GenericSAXHandler::error ( const XERCES_CPP_NAMESPACE::SAXParseException &  exception)
inherited

Handler for XML-errors.

The message is built using buildErrorMessage and thrown within a ProcessError.

Parameters
[in]exceptionThe occured exception to process
Exceptions
ProcessErrorOn any call

Definition at line 212 of file GenericSAXHandler.cpp.

References GenericSAXHandler::buildErrorMessage().

Referenced by MSRouteHandler::closeContainer(), MSRouteHandler::closePerson(), NIImporter_OpenDrive::geomFromSpiral(), MSRouteHandler::myStartElement(), and MSRouteHandler::parseWalkPos().

void GenericSAXHandler::fatalError ( const XERCES_CPP_NAMESPACE::SAXParseException &  exception)
inherited

Handler for XML-errors.

The message is built using buildErrorMessage and thrown within a ProcessError.

Exceptions
ProcessErrorOn any call
Parameters
[in]exceptionThe occured exception to process

Definition at line 218 of file GenericSAXHandler.cpp.

References GenericSAXHandler::buildErrorMessage().

SUMOTime SUMORouteHandler::getLastDepart ( ) const
inherited

Returns the last loaded depart time.

Definition at line 72 of file SUMORouteHandler.cpp.

References SUMORouteHandler::myLastDepart.

Referenced by SUMORouteLoader::loadUntil().

bool NLHandler::haveSeenInternalEdge ( ) const
inline

Definition at line 108 of file NLHandler.h.

Referenced by NLBuilder::build(), and NLBuilder::buildNet().

void NLHandler::initJunctionLogic ( const SUMOSAXAttributes attrs)
private

begins the reading of a junction row logic

Definition at line 626 of file NLHandler.cpp.

References SUMOSAXAttributes::get(), NLJunctionControlBuilder::initJunctionLogic(), myCurrentIsBroken, myJunctionControlBuilder, and SUMO_ATTR_ID.

Referenced by myStartElement().

bool NLHandler::lefthand ( ) const
inline

Definition at line 112 of file NLHandler.h.

Referenced by NLBuilder::buildNet().

void GenericSAXHandler::myCharacters ( int  element,
const std::string &  chars 
)
protectedvirtualinherited

Callback method for characters to implement by derived classes.

Called by "endElement" (see there).

Parameters
[in]elementThe opened element, given as a int
[in]charsThe complete embedded character string ProcessError These method may throw a ProcessError if something fails

Reimplemented in NIImporter_ITSUMO::Handler.

Definition at line 228 of file GenericSAXHandler.cpp.

Referenced by GenericSAXHandler::endElement().

void NLHandler::myStartElement ( int  element,
const SUMOSAXAttributes attrs 
)
protectedvirtual

Called on the opening of a tag;.

Parameters
[in]elementID of the currently opened element
[in]attrsAttributes within the currently opened element
Exceptions
ProcessErrorIf something fails
See also
GenericSAXHandler::myStartElement
Todo:
Refactor/describe

Reimplemented from MSRouteHandler.

Definition at line 92 of file NLHandler.cpp.

References NLTriggerBuilder::addAccess(), NLDiscreteEventBuilder::addAction(), addConnection(), addDistrict(), addDistrictEdge(), addE1Detector(), addE2Detector(), addE3Entry(), addE3Exit(), addEdgeLaneMeanData(), addInstantE1Detector(), addLane(), addParam(), addPhase(), addRequest(), MSNet::addRestriction(), addRoundabout(), addRouteProbeDetector(), addVTypeProbeDetector(), addWAUTJunction(), addWAUTSwitch(), beginE3Detector(), beginEdgeParsing(), NLTriggerBuilder::buildVaporizer(), SUMOSAXAttributes::get(), GenericSAXHandler::getFileName(), SUMOSAXAttributes::getOpt(), getVehicleClassID(), initJunctionLogic(), initTrafficLightLogic(), myActionBuilder, myCurrentTypeID, myLefthand, myNet, myNetworkVersion, MSRouteHandler::myStartElement(), myTriggerBuilder, openJunction(), openWAUT(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildChargingStation(), NLTriggerBuilder::parseAndBuildLaneSpeedTrigger(), NLTriggerBuilder::parseAndBuildRerouter(), NLTriggerBuilder::parseAndBuildStoppingPlace(), setLocation(), SUMO_ATTR_ID, SUMO_ATTR_LEFTHAND, SUMO_ATTR_SPEED, SUMO_ATTR_VCLASS, SUMO_ATTR_VERSION, SUMO_TAG_ACCESS, SUMO_TAG_BUS_STOP, SUMO_TAG_CALIBRATOR, SUMO_TAG_CHARGING_STATION, SUMO_TAG_CONNECTION, SUMO_TAG_CONTAINER_STOP, SUMO_TAG_DET_ENTRY, SUMO_TAG_DET_EXIT, SUMO_TAG_E1DETECTOR, SUMO_TAG_E2DETECTOR, SUMO_TAG_E3DETECTOR, SUMO_TAG_EDGE, SUMO_TAG_ENTRY_EXIT_DETECTOR, SUMO_TAG_INDUCTION_LOOP, SUMO_TAG_INSTANT_INDUCTION_LOOP, SUMO_TAG_JUNCTION, SUMO_TAG_LANE, SUMO_TAG_LANE_AREA_DETECTOR, SUMO_TAG_LOCATION, SUMO_TAG_MEANDATA_EDGE, SUMO_TAG_MEANDATA_LANE, SUMO_TAG_NET, SUMO_TAG_PARAM, SUMO_TAG_PHASE, SUMO_TAG_REQUEST, SUMO_TAG_REROUTER, SUMO_TAG_RESTRICTION, SUMO_TAG_ROUNDABOUT, SUMO_TAG_ROUTEPROBE, SUMO_TAG_TAZ, SUMO_TAG_TAZSINK, SUMO_TAG_TAZSOURCE, SUMO_TAG_TIMEDEVENT, SUMO_TAG_TLLOGIC, SUMO_TAG_TRAIN_STOP, SUMO_TAG_TYPE, SUMO_TAG_VAPORIZER, SUMO_TAG_VSS, SUMO_TAG_VTYPEPROBE, SUMO_TAG_WAUT, SUMO_TAG_WAUT_JUNCTION, SUMO_TAG_WAUT_SWITCH, SUMOReal, and WRITE_ERROR.

SUMOReal NLHandler::networkVersion ( ) const
inline

Definition at line 116 of file NLHandler.h.

References GenericSAXHandler::myEndElement(), and ShapeHandler::myStartElement().

Referenced by NLBuilder::buildNet().

NLHandler& NLHandler::operator= ( const NLHandler s)
private

invalid assignment operator

void NLHandler::parseLanes ( const std::string &  junctionID,
const std::string &  def,
std::vector< MSLane * > &  into,
bool &  ok 
)
private
LinkDirection NLHandler::parseLinkDir ( const std::string &  dir)
private

Parses the given character into an enumeration typed link direction.

Definition at line 1090 of file NLHandler.cpp.

References StringBijection< T >::get(), and SUMOXMLDefinitions::LinkDirections.

Referenced by addConnection().

LinkState NLHandler::parseLinkState ( const std::string &  state)
private

Parses the given character into an enumeration typed link state.

Definition at line 1100 of file NLHandler.cpp.

References StringBijection< T >::get(), LINKSTATE_TL_OFF_BLINKING, and SUMOXMLDefinitions::LinkStates.

Referenced by addConnection().

bool SUMORouteHandler::parseStop ( SUMOVehicleParameter::Stop stop,
const SUMOSAXAttributes attrs,
std::string  errorSuffix,
MsgHandler *const  errorOutput 
)
protectedinherited
void GenericSAXHandler::registerParent ( const int  tag,
GenericSAXHandler handler 
)
inherited
void GenericSAXHandler::setFileName ( const std::string &  name)
inherited

Sets the current file name.

Parameters
[in]nameThe name of the currently processed file
Todo:
Hmmm - this is as unsafe as having a direct access to the variable; recheck

Definition at line 80 of file GenericSAXHandler.cpp.

References GenericSAXHandler::myFileName.

Referenced by NIImporter_SUMO::_loadNetwork(), GUISettingsHandler::GUISettingsHandler(), PCNetProjectionLoader::load(), NIImporter_OpenStreetMap::load(), loadNet(), ROLoader::loadNet(), NIImporter_ITSUMO::loadNetwork(), NIImporter_MATSim::loadNetwork(), NIImporter_Vissim::loadXML(), NILoader::loadXMLType(), main(), and XMLSubSys::runParser().

void NLHandler::setLocation ( const SUMOSAXAttributes attrs)
private
void GenericSAXHandler::startElement ( const XMLCh *const  uri,
const XMLCh *const  localname,
const XMLCh *const  qname,
const XERCES_CPP_NAMESPACE::Attributes &  attrs 
)
inherited

The inherited method called when a new tag opens.

The method parses the supplied XMLCh*-qname using the internal name/enum-map to obtain the enum representation of the attribute name.

Then, "myStartElement" is called supplying the enumeration value, the string-representation of the name and the attributes.

Todo:

recheck/describe encoding of the string-representation

do not generate and report the string-representation

Definition at line 105 of file GenericSAXHandler.cpp.

References TplConvert::_2str(), GenericSAXHandler::convertTag(), FileHelpers::getConfigurationRelative(), GenericSAXHandler::getFileName(), SUMOSAXAttributesImpl_Xerces::getString(), FileHelpers::isAbsolute(), GenericSAXHandler::myCharactersVector, GenericSAXHandler::myPredefinedTags, GenericSAXHandler::myPredefinedTagsMML, GenericSAXHandler::myStartElement(), XMLSubSys::runParser(), SUMO_ATTR_HREF, and SUMO_TAG_INCLUDE.

void GenericSAXHandler::warning ( const XERCES_CPP_NAMESPACE::SAXParseException &  exception)
inherited

Handler for XML-warnings.

The message is built using buildErrorMessage and reported to the warning-instance of the MsgHandler.

Parameters
[in]exceptionThe occured exception to process

Definition at line 206 of file GenericSAXHandler.cpp.

References GenericSAXHandler::buildErrorMessage(), and WRITE_WARNING.

Field Documentation

NLDiscreteEventBuilder NLHandler::myActionBuilder
protected

A builder for object actions.

Definition at line 290 of file NLHandler.h.

Referenced by myStartElement().

MSTransportable::MSTransportablePlan* MSRouteHandler::myActiveContainerPlan
protectedinherited
MSTransportable::MSTransportablePlan* MSRouteHandler::myActivePlan
protectedinherited
const RGBColor* SUMORouteHandler::myActiveRouteColor
protectedinherited

The currently parsed route's color.

Definition at line 169 of file SUMORouteHandler.h.

Referenced by MSRouteHandler::closeRoute(), RORouteHandler::closeRoute(), MSRouteHandler::openRoute(), and RORouteHandler::openRoute().

SUMOReal SUMORouteHandler::myActiveRouteProbability
protectedinherited
std::string SUMORouteHandler::myActiveRouteRefID
protectedinherited

The id of the route the current route references to.

Definition at line 163 of file SUMORouteHandler.h.

Referenced by MSRouteHandler::closeRoute(), RORouteHandler::closeRoute(), MSRouteHandler::openRoute(), and RORouteHandler::openRoute().

std::vector<SUMOVehicleParameter::Stop> SUMORouteHandler::myActiveRouteStops
protectedinherited

List of the stops on the parsed route.

Definition at line 175 of file SUMORouteHandler.h.

Referenced by MSRouteHandler::addStop(), RORouteHandler::addStop(), MSRouteHandler::closeRoute(), and RORouteHandler::closeRoute().

bool MSRouteHandler::myAddVehiclesDirectly
protectedinherited

Information whether vehicles shall be directly added to the network or kept within the buffer.

Definition at line 163 of file MSRouteHandler.h.

Referenced by MSRouteHandler::closeContainer(), MSRouteHandler::closeFlow(), MSRouteHandler::closePerson(), and MSRouteHandler::closeVehicle().

bool NLHandler::myAmInTLLogicMode
protected

internal information whether a tls-logic is currently read

Definition at line 312 of file NLHandler.h.

Referenced by addParam(), initTrafficLightLogic(), and myEndElement().

SUMOTime SUMORouteHandler::myBeginDefault
protectedinherited

The default value for flow begins.

Definition at line 184 of file SUMORouteHandler.h.

Referenced by SUMORouteHandler::myEndElement(), and SUMORouteHandler::myStartElement().

Boundary NLHandler::myConvBoundary
protected

Definition at line 324 of file NLHandler.h.

SUMOReal SUMORouteHandler::myCurrentCosts
protectedinherited

The currently parsed route costs.

Definition at line 172 of file SUMORouteHandler.h.

Referenced by MSRouteHandler::closeRoute(), RORouteHandler::closeRoute(), MSRouteHandler::openRoute(), and RORouteHandler::openRoute().

std::string NLHandler::myCurrentDistrictID
protected

The id of the current district.

Definition at line 309 of file NLHandler.h.

Referenced by addDistrict(), and addDistrictEdge().

bool NLHandler::myCurrentIsInternalToSkip
protected

Information whether the currently parsed edge is internal and not wished, here.

Definition at line 293 of file NLHandler.h.

Referenced by addLane(), beginEdgeParsing(), and closeEdge().

RandomDistributor<const MSRoute*>* MSRouteHandler::myCurrentRouteDistribution
protectedinherited

The currently parsed distribution of routes (probability->route)

Definition at line 172 of file MSRouteHandler.h.

Referenced by MSRouteHandler::closeRoute(), MSRouteHandler::closeRouteDistribution(), MSRouteHandler::openRoute(), and MSRouteHandler::openRouteDistribution().

std::string MSRouteHandler::myCurrentRouteDistributionID
protectedinherited

The id of the currently parsed route distribution.

Definition at line 175 of file MSRouteHandler.h.

Referenced by MSRouteHandler::closeRouteDistribution(), MSRouteHandler::openRoute(), and MSRouteHandler::openRouteDistribution().

std::string NLHandler::myCurrentTypeID
protected

The id of the currently processed edge type.

Definition at line 318 of file NLHandler.h.

Referenced by myStartElement().

RandomDistributor<MSVehicleType*>* MSRouteHandler::myCurrentVTypeDistribution
protectedinherited

The currently parsed distribution of vehicle types (probability->vehicle type)

Definition at line 166 of file MSRouteHandler.h.

Referenced by MSRouteHandler::closeVehicleTypeDistribution(), MSRouteHandler::myEndElement(), and MSRouteHandler::openVehicleTypeDistribution().

std::string MSRouteHandler::myCurrentVTypeDistributionID
protectedinherited

The id of the currently parsed vehicle type distribution.

Definition at line 169 of file MSRouteHandler.h.

Referenced by MSRouteHandler::closeVehicleTypeDistribution(), and MSRouteHandler::openVehicleTypeDistribution().

std::string NLHandler::myCurrentWAUTID
protected

The id of the currently processed WAUT.

Definition at line 315 of file NLHandler.h.

Referenced by addWAUTSwitch(), closeWAUT(), and openWAUT().

NLDetectorBuilder& NLHandler::myDetectorBuilder
protected
NLEdgeControlBuilder& NLHandler::myEdgeControlBuilder
protected

The edge builder to use.

Definition at line 303 of file NLHandler.h.

Referenced by addDistrict(), addLane(), beginEdgeParsing(), and closeEdge().

SUMOTime SUMORouteHandler::myEndDefault
protectedinherited

The default value for flow ends.

Definition at line 187 of file SUMORouteHandler.h.

Referenced by SUMORouteHandler::myEndElement(), and SUMORouteHandler::myStartElement().

SUMOTime SUMORouteHandler::myFirstDepart
protectedinherited

the first read departure time

Definition at line 190 of file SUMORouteHandler.h.

Referenced by SUMORouteHandler::getFirstDepart(), and SUMORouteHandler::registerLastDepart().

bool NLHandler::myHaveSeenInternalEdge
protected

whether the loaded network contains internal lanes

Definition at line 333 of file NLHandler.h.

Referenced by beginEdgeParsing().

bool NLHandler::myHaveWarnedAboutDeprecatedLanes
protected

Definition at line 328 of file NLHandler.h.

IDSupplier SUMORouteHandler::myIdSupplier
protectedinherited

generates numerical ids

Definition at line 181 of file SUMORouteHandler.h.

Referenced by SUMORouteHandler::myStartElement().

int SUMORouteHandler::myInsertStopEdgesAt
protectedinherited
NLJunctionControlBuilder& NLHandler::myJunctionControlBuilder
protected
JunctionGraph NLHandler::myJunctionGraph
protected

Definition at line 346 of file NLHandler.h.

Referenced by beginEdgeParsing(), and myEndElement().

SUMOTime SUMORouteHandler::myLastDepart
protectedinherited

The insertion time of the vehicle read last.

Definition at line 157 of file SUMORouteHandler.h.

Referenced by SUMORouteHandler::checkLastDepart(), SUMORouteHandler::getLastDepart(), and SUMORouteHandler::registerLastDepart().

Parameterised* NLHandler::myLastParameterised
protected

Definition at line 330 of file NLHandler.h.

Referenced by addLane(), addParam(), and myEndElement().

bool NLHandler::myLefthand
protected

whether the loaded network was built for left hand traffic

Definition at line 336 of file NLHandler.h.

Referenced by myStartElement().

MSNet& NLHandler::myNet
protected

The net to fill (preinitialised)

Definition at line 205 of file NLHandler.h.

Referenced by addDistrict(), addLane(), and myStartElement().

bool NLHandler::myNetIsLoaded
protected

whether the location element was already loadee

Definition at line 342 of file NLHandler.h.

Referenced by myEndElement(), and setLocation().

Position NLHandler::myNetworkOffset
protected

The network offset.

Definition at line 321 of file NLHandler.h.

SUMOReal NLHandler::myNetworkVersion
protected

the loaded network version

Definition at line 339 of file NLHandler.h.

Referenced by addConnection(), and myStartElement().

Boundary NLHandler::myOrigBoundary
protected

The network's boundaries.

Definition at line 324 of file NLHandler.h.

NLTriggerBuilder& NLHandler::myTriggerBuilder
protected

The trigger builder to use.

Definition at line 300 of file NLHandler.h.

Referenced by myStartElement().


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