Eclipse SUMO - Simulation of Urban MObility
RORouteHandler Class Reference

Parser and container for routes during their loading. More...

#include <RORouteHandler.h>

Inheritance diagram for RORouteHandler:
[legend]
Collaboration diagram for RORouteHandler:
[legend]

Public Types

enum  StopPos { STOPPOS_VALID , STOPPOS_INVALID_STARTPOS , STOPPOS_INVALID_ENDPOS , STOPPOS_INVALID_LANELENGTH }
 enum for stops More...
 

Public Member Functions

void characters (const XMLCh *const chars, const XERCES3_SIZE_t length)
 The inherited method called when characters occurred. 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...
 
void registerParent (const int tag, GenericSAXHandler *handler)
 Assigning a parent handler which is enabled when the specified tag is closed. More...
 
 RORouteHandler (RONet &net, const std::string &file, const bool tryRepair, const bool emptyDestinationsAllowed, const bool ignoreErrors, const bool checkSchema)
 standard constructor 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 ~RORouteHandler ()
 standard destructor More...
 

Static Public Member Functions

static StopPos checkStopPos (double &startPos, double &endPos, const double laneLength, const double minLength, const bool friendlyPos)
 check start and end position of a stop More...
 
static bool isStopPosValid (const double startPos, const double endPos, const double laneLength, const double minLength, const bool friendlyPos)
 check if start and end position of a stop is valid More...
 

Protected Member Functions

inherited from GenericSAXHandler
virtual void myEndElement (int element)
 Called when a closing tag occurs. More...
 

inherited from GenericSAXHandler

RONetmyNet
 The current route. More...
 
ConstROEdgeVector myActiveRoute
 The current route. More...
 
int myActiveRouteRepeat
 number of repetitions of the active route More...
 
SUMOTime myActiveRoutePeriod
 
ROPersonmyActivePerson
 The plan of the current person. More...
 
OutputDevice_StringmyActiveContainerPlan
 The plan of the current container. More...
 
int myActiveContainerPlanSize
 The number of stages in myActiveContainerPlan. More...
 
const bool myTryRepair
 Information whether routes shall be repaired. More...
 
const bool myEmptyDestinationsAllowed
 Information whether the "to" attribute is mandatory. More...
 
MsgHandler *const myErrorOutput
 Depending on the "ignore-errors" option different outputs are used. More...
 
const SUMOTime myBegin
 The begin time. More...
 
const bool myKeepVTypeDist
 whether to keep the the vtype distribution in output More...
 
const double myMapMatchingDistance
 maximum distance when map-matching More...
 
const bool myMapMatchJunctions
 
RandomDistributor< SUMOVTypeParameter * > * 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...
 
RORouteDefmyCurrentAlternatives
 The currently parsed route alternatives. More...
 
NamedRTreemyLaneTree
 RTree for finding lanes. More...
 
virtual void myStartElement (int element, const SUMOSAXAttributes &attrs)
 Called on the opening of a tag;. More...
 
void parseFromViaTo (SumoXMLTag tag, const SUMOSAXAttributes &attrs, bool &ok)
 Called for parsing from and to and the corresponding taz attributes. More...
 
void openVehicleTypeDistribution (const SUMOSAXAttributes &attrs)
 opens a type distribution for reading More...
 
void closeVehicleTypeDistribution ()
 closes (ends) the building of a distribution More...
 
void openRoute (const SUMOSAXAttributes &attrs)
 opens a route for reading More...
 
void openFlow (const SUMOSAXAttributes &attrs)
 opens a flow for reading More...
 
void openRouteFlow (const SUMOSAXAttributes &attrs)
 opens a route flow for reading More...
 
void openTrip (const SUMOSAXAttributes &attrs)
 opens a trip for reading More...
 
void closeRoute (const bool mayBeDisconnected=false)
 closes (ends) the building of a route. More...
 
void openRouteDistribution (const SUMOSAXAttributes &attrs)
 opens a route distribution for reading More...
 
void closeRouteDistribution ()
 closes (ends) the building of a distribution More...
 
void closeVehicle ()
 Ends the processing of a vehicle. More...
 
void closeVType ()
 Ends the processing of a vehicle type. More...
 
void closePerson ()
 Ends the processing of a person. More...
 
void closePersonFlow ()
 Ends the processing of a personFlow. More...
 
void closeContainer ()
 Ends the processing of a container. More...
 
void closeFlow ()
 Ends the processing of a flow. More...
 
void closeTrip ()
 Ends the processing of a trip. More...
 
void addStop (const SUMOSAXAttributes &attrs)
 Processing of a stop. More...
 
void addPerson (const SUMOSAXAttributes &attrs)
 Processing of a person. More...
 
void addFlowPerson (SUMOTime depart, const std::string &baseID, int i)
 Processing of a person from a personFlow. More...
 
void addContainer (const SUMOSAXAttributes &attrs)
 Processing of a container. More...
 
void addRide (const SUMOSAXAttributes &attrs)
 Processing of a ride. More...
 
void addTransport (const SUMOSAXAttributes &attrs)
 Processing of a transport. More...
 
void addTranship (const SUMOSAXAttributes &attrs)
 Processing of a tranship. More...
 
void parseEdges (const std::string &desc, ConstROEdgeVector &into, const std::string &rid, bool &ok)
 Parse edges from strings. More...
 
void parseGeoEdges (const PositionVector &positions, bool geo, ConstROEdgeVector &into, const std::string &rid, bool isFrom, bool &ok)
 Parse edges from coordinates. More...
 
const ROEdgegetClosestEdge (const Position &pos, double distance, SUMOVehicleClass vClass)
 find closest edge within distance for the given position or nullptr More...
 
const ROEdgegetJunctionTaz (const Position &pos, const ROEdge *closestEdge, SUMOVehicleClass vClass, bool isFrom)
 find closest junction taz given the closest edge More...
 
void addPersonTrip (const SUMOSAXAttributes &attrs)
 add a routing request for a walking or intermodal person More...
 
void addWalk (const SUMOSAXAttributes &attrs)
 add a fully specified walk More...
 
void parseWalkPositions (const SUMOSAXAttributes &attrs, const std::string &personID, const ROEdge *fromEdge, const ROEdge *&toEdge, double &departPos, double &arrivalPos, std::string &busStopID, const ROPerson::PlanItem *const lastStage, bool &ok)
 @ brief parse depart- and arrival positions of a walk More...
 
NamedRTreegetLaneTree ()
 initialize lane-RTree More...
 
 RORouteHandler (const RORouteHandler &s)=delete
 Invalidated copy constructor. More...
 
RORouteHandleroperator= (const RORouteHandler &s)=delete
 Invalidated assignment operator. More...
 

add element functions

const bool myHardFail
 flag to enable or disable hard fails More...
 
SUMOVehicleParametermyVehicleParameter
 Parameter of the current vehicle, trip, person, container or flow. More...
 
SUMOTime myLastDepart
 The insertion time of the vehicle read last. More...
 
std::string myActiveRouteID
 The id of the current route. More...
 
std::string myActiveRouteRefID
 The id of the route the current route references to. More...
 
double myActiveRouteProbability
 The probability of the current route. More...
 
const RGBColormyActiveRouteColor
 The currently parsed route's color. More...
 
double myCurrentCosts
 The currently parsed route costs. More...
 
std::vector< SUMOVehicleParameter::StopmyActiveRouteStops
 List of the stops on the parsed route. More...
 
SUMOVTypeParametermyCurrentVType
 The currently parsed vehicle type. More...
 
Parameterised myLoadedParameterised
 Parameterised used for saving loaded generic parameters that aren't saved in Vehicles or Vehicle Types. More...
 
IDSupplier myIdSupplier
 generates numerical ids More...
 
SUMOTime myBeginDefault
 The default value for flow begins. More...
 
SUMOTime myEndDefault
 The default value for flow ends. More...
 
SUMOTime myFirstDepart
 the first read departure time More...
 
int myInsertStopEdgesAt
 where stop edges can be inserted into the current route (-1 means no insertion) More...
 
bool checkLastDepart ()
 Checks whether the route file is sorted by departure time if needed. More...
 
void registerLastDepart ()
 save last depart (only to be used if vehicle is not discarded) More...
 
void addParam (const SUMOSAXAttributes &attrs)
 assign arbitrary vehicle parameters More...
 
bool parseStop (SUMOVehicleParameter::Stop &stop, const SUMOSAXAttributes &attrs, std::string errorSuffix, MsgHandler *const errorOutput)
 parses attributes common to all stops 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...
 
std::string buildErrorMessage (const XERCES_CPP_NAMESPACE::SAXParseException &exception)
 Builds an error message. More...
 
virtual void myCharacters (int element, const std::string &chars)
 Callback method for characters to implement by derived classes. More...
 
XMLCh * convert (const std::string &name) const
 converts from c++-string into unicode More...
 
int convertTag (const std::string &tag) const
 Converts a tag from its string into its numerical representation. More...
 

attributes parsing

typedef std::vector< XMLCh * > AttrMap
 
AttrMap myPredefinedTags
 
std::vector< std::string > myPredefinedTagsMML
 the map from ids to their string representation More...
 

elements parsing

typedef std::map< std::string, int > TagMap
 
TagMap myTagMap
 
std::vector< std::string > myCharactersVector
 A list of character strings obtained so far to build the complete characters string at the end. More...
 
GenericSAXHandlermyParentHandler
 The handler to give control back to. More...
 
int myParentIndicator
 The tag indicating that control should be given back. More...
 
std::string myFileName
 The name of the currently parsed file. More...
 
std::string myExpectedRoot
 The root element to expect, empty string disables the check. More...
 
bool myRootSeen
 whether the reader has already seen the root element More...
 

Detailed Description

Parser and container for routes during their loading.

RORouteHandler is the container for routes while they are build until their transfering to the MSNet::RouteDict The result of the operations are single MSNet::Route-instances

Definition at line 57 of file RORouteHandler.h.

Member Typedef Documentation

◆ AttrMap

typedef std::vector<XMLCh*> GenericSAXHandler::AttrMap
privateinherited

Definition at line 279 of file GenericSAXHandler.h.

◆ TagMap

typedef std::map<std::string, int> GenericSAXHandler::TagMap
privateinherited

Definition at line 293 of file GenericSAXHandler.h.

Member Enumeration Documentation

◆ StopPos

enum SUMORouteHandler::StopPos
inherited

enum for stops

Enumerator
STOPPOS_VALID 
STOPPOS_INVALID_STARTPOS 
STOPPOS_INVALID_ENDPOS 
STOPPOS_INVALID_LANELENGTH 

Definition at line 51 of file SUMORouteHandler.h.

Constructor & Destructor Documentation

◆ RORouteHandler() [1/2]

RORouteHandler::RORouteHandler ( RONet net,
const std::string &  file,
const bool  tryRepair,
const bool  emptyDestinationsAllowed,
const bool  ignoreErrors,
const bool  checkSchema 
)

standard constructor

Definition at line 53 of file RORouteHandler.cpp.

References myActiveRoute.

◆ ~RORouteHandler()

RORouteHandler::~RORouteHandler ( )
virtual

standard destructor

Definition at line 79 of file RORouteHandler.cpp.

◆ RORouteHandler() [2/2]

RORouteHandler::RORouteHandler ( const RORouteHandler s)
privatedelete

Invalidated copy constructor.

Member Function Documentation

◆ addContainer()

void RORouteHandler::addContainer ( const SUMOSAXAttributes attrs)
protectedvirtual

Processing of a container.

Implements SUMORouteHandler.

Definition at line 845 of file RORouteHandler.cpp.

◆ addFlowPerson()

void RORouteHandler::addFlowPerson ( SUMOTime  depart,
const std::string &  baseID,
int  i 
)
protected

Processing of a person from a personFlow.

Definition at line 648 of file RORouteHandler.cpp.

References RONet::addPerson(), SUMOVehicleParameter::depart, RORoutable::getParameter(), ROPerson::getPlan(), RORoutable::getType(), SUMOVehicleParameter::id, myActivePerson, myNet, SUMORouteHandler::registerLastDepart(), and toString().

Referenced by closePersonFlow().

Here is the caller graph for this function:

◆ addParam()

void SUMORouteHandler::addParam ( const SUMOSAXAttributes attrs)
protectedinherited

assign arbitrary vehicle parameters

Definition at line 345 of file SUMORouteHandler.cpp.

References SUMOSAXAttributes::get(), SUMOSAXAttributes::getString(), SUMOSAXAttributes::hasAttribute(), SUMORouteHandler::myCurrentVType, SUMORouteHandler::myLoadedParameterised, SUMORouteHandler::myVehicleParameter, Parameterised::setParameter(), SUMO_ATTR_KEY, and SUMO_ATTR_VALUE.

Referenced by SUMORouteHandler::myStartElement().

Here is the caller graph for this function:

◆ addPerson()

void RORouteHandler::addPerson ( const SUMOSAXAttributes attrs)
protectedvirtual

Processing of a person.

Implements SUMORouteHandler.

Definition at line 840 of file RORouteHandler.cpp.

◆ addPersonTrip()

◆ addRide()

void RORouteHandler::addRide ( const SUMOSAXAttributes attrs)
protectedvirtual

Processing of a ride.

Implements SUMORouteHandler.

Definition at line 850 of file RORouteHandler.cpp.

◆ addStop()

◆ addTranship()

void RORouteHandler::addTranship ( const SUMOSAXAttributes attrs)
protectedvirtual

Processing of a tranship.

Implements SUMORouteHandler.

Definition at line 860 of file RORouteHandler.cpp.

◆ addTransport()

void RORouteHandler::addTransport ( const SUMOSAXAttributes attrs)
protectedvirtual

Processing of a transport.

Implements SUMORouteHandler.

Definition at line 855 of file RORouteHandler.cpp.

◆ addWalk()

◆ buildErrorMessage()

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 188 of file GenericSAXHandler.cpp.

References GenericSAXHandler::getFileName(), and transcode().

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

Here is the caller graph for this function:

◆ characters()

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

The inherited method called when characters occurred.

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 171 of file GenericSAXHandler.cpp.

References GenericSAXHandler::myCharactersVector, and StringUtils::transcode().

◆ checkLastDepart()

bool SUMORouteHandler::checkLastDepart ( )
protectedinherited

Checks whether the route file is sorted by departure time if needed.

Definition at line 59 of file SUMORouteHandler.cpp.

References SUMOVehicleParameter::depart, DEPART_GIVEN, SUMOVehicleParameter::departProcedure, SUMOVehicleParameter::id, SUMORouteHandler::myLastDepart, SUMORouteHandler::myVehicleParameter, and WRITE_WARNING.

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

Here is the caller graph for this function:

◆ checkStopPos()

◆ closeContainer()

◆ closeFlow()

◆ closePerson()

void RORouteHandler::closePerson ( )
protectedvirtual

◆ closePersonFlow()

◆ closeRoute()

void RORouteHandler::closeRoute ( const bool  mayBeDisconnected = false)
protectedvirtual

closes (ends) the building of a route.

Note
Afterwards no edges may be added to it; this method may throw exceptions when a) the route is empty or b) another route with the same id already exists

Implements SUMORouteHandler.

Definition at line 392 of file RORouteHandler.cpp.

References RORouteDef::addAlternativeDef(), RORouteDef::addLoadedAlternative(), RONet::addRouteDef(), RONet::getEdge(), OptionsCont::getOptions(), RONet::getRouteDef(), ROEdge::getSuccessors(), SUMOVehicleParameter::id, MsgHandler::inform(), myActiveRoute, SUMORouteHandler::myActiveRouteColor, SUMORouteHandler::myActiveRouteID, myActiveRoutePeriod, SUMORouteHandler::myActiveRouteProbability, SUMORouteHandler::myActiveRouteRefID, myActiveRouteRepeat, SUMORouteHandler::myActiveRouteStops, myCurrentAlternatives, SUMORouteHandler::myCurrentCosts, myErrorOutput, myNet, myTryRepair, and SUMORouteHandler::myVehicleParameter.

Referenced by closeFlow(), and closeTrip().

Here is the caller graph for this function:

◆ closeRouteDistribution()

void RORouteHandler::closeRouteDistribution ( )
protectedvirtual

closes (ends) the building of a distribution

Implements SUMORouteHandler.

Definition at line 532 of file RORouteHandler.cpp.

References RONet::addRouteDef(), Named::getID(), RORouteDef::getOverallProb(), MsgHandler::inform(), myCurrentAlternatives, myErrorOutput, and myNet.

◆ closeTrip()

void RORouteHandler::closeTrip ( )
protectedvirtual

Ends the processing of a trip.

Implements SUMORouteHandler.

Definition at line 731 of file RORouteHandler.cpp.

References closeRoute(), and closeVehicle().

◆ closeVehicle()

◆ closeVehicleTypeDistribution()

void RORouteHandler::closeVehicleTypeDistribution ( )
protectedvirtual

◆ closeVType()

◆ convert()

XMLCh * GenericSAXHandler::convert ( const std::string &  name) const
privateinherited

converts from c++-string into unicode

Todo:
recheck encoding
Parameters
[in]nameThe string to convert
Returns
The string converted into a XMLCh-string

Definition at line 84 of file GenericSAXHandler.cpp.

Referenced by GenericSAXHandler::GenericSAXHandler().

Here is the caller graph for this function:

◆ convertTag()

int GenericSAXHandler::convertTag ( const std::string &  tag) const
privateinherited

Converts a tag from its string into its numerical representation.

Returns the enum-representation stored for the given tag. If the tag is not known, SUMO_TAG_NOTHING is returned.

Parameters
[in]tagThe string to convert
Returns
The int-value that represents the string, SUMO_TAG_NOTHING if the named attribute is not known

Definition at line 178 of file GenericSAXHandler.cpp.

References GenericSAXHandler::myTagMap, and SUMO_TAG_NOTHING.

Referenced by GenericSAXHandler::endElement(), and GenericSAXHandler::startElement().

Here is the caller graph for this function:

◆ endElement()

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 122 of file GenericSAXHandler.cpp.

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

◆ error()

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 occurred exception to process
Exceptions
ProcessErrorOn any call

Definition at line 207 of file GenericSAXHandler.cpp.

References GenericSAXHandler::buildErrorMessage().

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

Here is the caller graph for this function:

◆ fatalError()

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 occurred exception to process

Definition at line 213 of file GenericSAXHandler.cpp.

References GenericSAXHandler::buildErrorMessage().

◆ getClosestEdge()

const ROEdge * RORouteHandler::getClosestEdge ( const Position pos,
double  distance,
SUMOVehicleClass  vClass 
)
protected

find closest edge within distance for the given position or nullptr

Definition at line 920 of file RORouteHandler.cpp.

References Boundary::add(), ROLane::allowsVehicleClass(), PositionVector::distance2D(), ROLane::getEdge(), getLaneTree(), ROLane::getShape(), ROEdge::getSuccessors(), Boundary::grow(), ROEdge::isInternal(), NamedRTree::Search(), Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

Referenced by parseGeoEdges().

Here is the caller graph for this function:

◆ getFileName()

◆ getFirstDepart()

SUMOTime SUMORouteHandler::getFirstDepart ( ) const
inherited

returns the first departure time that was ever read

Definition at line 333 of file SUMORouteHandler.cpp.

References SUMORouteHandler::myFirstDepart.

Referenced by SUMORouteLoader::getFirstDepart().

Here is the caller graph for this function:

◆ getJunctionTaz()

const ROEdge * RORouteHandler::getJunctionTaz ( const Position pos,
const ROEdge closestEdge,
SUMOVehicleClass  vClass,
bool  isFrom 
)
protected

find closest junction taz given the closest edge

Definition at line 957 of file RORouteHandler.cpp.

References Position::distanceSquaredTo2D(), RONet::getEdge(), ROEdge::getFromJunction(), Named::getID(), RONode::getPosition(), ROEdge::getPredecessors(), ROEdge::getSuccessors(), ROEdge::getToJunction(), MsgHandler::inform(), JUNCTION_TAZ_MISSING_HELP, myErrorOutput, myNet, and toString().

Referenced by parseGeoEdges().

Here is the caller graph for this function:

◆ getLaneTree()

NamedRTree * RORouteHandler::getLaneTree ( )
protected

initialize lane-RTree

Definition at line 1139 of file RORouteHandler.cpp.

References RONet::getEdgeMap(), NamedRTree::Insert(), myLaneTree, myNet, Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

Referenced by getClosestEdge().

Here is the caller graph for this function:

◆ getLastDepart()

SUMOTime SUMORouteHandler::getLastDepart ( ) const
inherited

Returns the last loaded depart time.

Definition at line 339 of file SUMORouteHandler.cpp.

References SUMORouteHandler::myLastDepart.

Referenced by SUMORouteLoader::loadUntil().

Here is the caller graph for this function:

◆ isStopPosValid()

bool SUMORouteHandler::isStopPosValid ( const double  startPos,
const double  endPos,
const double  laneLength,
const double  minLength,
const bool  friendlyPos 
)
staticinherited

check if start and end position of a stop is valid

Definition at line 323 of file SUMORouteHandler.cpp.

References SUMORouteHandler::checkStopPos(), and SUMORouteHandler::STOPPOS_VALID.

Referenced by GNEBusStop::isValid(), GNEChargingStation::isValid(), GNEContainerStop::isValid(), GNEParkingArea::isValid(), GNEPersonStop::isValid(), and GNEStop::isValid().

Here is the caller graph for this function:

◆ myCharacters()

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 @exceptions ProcessError These method may throw a ProcessError if something fails

Reimplemented in NIImporter_OpenDrive, and NIImporter_ITSUMO::Handler.

Definition at line 223 of file GenericSAXHandler.cpp.

Referenced by GenericSAXHandler::endElement().

Here is the caller graph for this function:

◆ myEndElement()

void SUMORouteHandler::myEndElement ( int  element)
protectedvirtualinherited

◆ myStartElement()

◆ openFlow()

void RORouteHandler::openFlow ( const SUMOSAXAttributes attrs)
protectedvirtual

opens a flow for reading

Implements SUMORouteHandler.

Definition at line 374 of file RORouteHandler.cpp.

◆ openRoute()

◆ openRouteDistribution()

◆ openRouteFlow()

void RORouteHandler::openRouteFlow ( const SUMOSAXAttributes attrs)
protectedvirtual

opens a route flow for reading

Implements SUMORouteHandler.

Definition at line 380 of file RORouteHandler.cpp.

◆ openTrip()

void RORouteHandler::openTrip ( const SUMOSAXAttributes attrs)
protectedvirtual

opens a trip for reading

Implements SUMORouteHandler.

Definition at line 386 of file RORouteHandler.cpp.

◆ openVehicleTypeDistribution()

void RORouteHandler::openVehicleTypeDistribution ( const SUMOSAXAttributes attrs)
protectedvirtual

◆ operator=()

RORouteHandler& RORouteHandler::operator= ( const RORouteHandler s)
privatedelete

Invalidated assignment operator.

◆ parseEdges()

void RORouteHandler::parseEdges ( const std::string &  desc,
ConstROEdgeVector into,
const std::string &  rid,
bool &  ok 
)
protected

Parse edges from strings.

Definition at line 865 of file RORouteHandler.cpp.

References RONet::getEdge(), StringTokenizer::hasNext(), MsgHandler::inform(), myErrorOutput, and myNet.

Referenced by addWalk(), openRoute(), and parseFromViaTo().

Here is the caller graph for this function:

◆ parseFromViaTo()

void RORouteHandler::parseFromViaTo ( SumoXMLTag  tag,
const SUMOSAXAttributes attrs,
bool &  ok 
)
protected

◆ parseGeoEdges()

void RORouteHandler::parseGeoEdges ( const PositionVector positions,
bool  geo,
ConstROEdgeVector into,
const std::string &  rid,
bool  isFrom,
bool &  ok 
)
protected

Parse edges from coordinates.

Definition at line 880 of file RORouteHandler.cpp.

References getClosestEdge(), GeoConvHelper::getFinal(), getJunctionTaz(), RONet::getVehicleTypeSecure(), gPrecision, gPrecisionGeo, MsgHandler::inform(), MIN2(), myErrorOutput, myMapMatchingDistance, myMapMatchJunctions, myNet, SUMORouteHandler::myVehicleParameter, SVC_PASSENGER, toString(), SUMOVTypeParameter::vehicleClass, SUMOVehicleParameter::vtypeid, WRITE_ERROR, and GeoConvHelper::x2cartesian_const().

Referenced by parseFromViaTo().

Here is the caller graph for this function:

◆ parseStop()

bool SUMORouteHandler::parseStop ( SUMOVehicleParameter::Stop stop,
const SUMOSAXAttributes attrs,
std::string  errorSuffix,
MsgHandler *const  errorOutput 
)
protectedinherited

parses attributes common to all stops

Definition at line 365 of file SUMORouteHandler.cpp.

References SUMOVehicleParameter::Stop::actualArrival, SUMOVehicleParameter::Stop::arrival, SUMOVehicleParameter::Stop::awaitedContainers, SUMOVehicleParameter::Stop::awaitedPersons, SUMOVehicleParameter::Stop::busstop, SUMOVehicleParameter::Stop::chargingStation, SUMOVehicleParameter::Stop::containerstop, SUMOVehicleParameter::Stop::containerTriggered, SUMOVehicleParameter::Stop::depart, SUMOVehicleParameter::Stop::duration, SUMOVehicleParameter::Stop::extension, SUMOSAXAttributes::get(), SUMOSAXAttributes::getOpt(), SUMOSAXAttributes::getOptStringVector(), SUMOSAXAttributes::getOptSUMOTimeReporting(), SUMOSAXAttributes::hasAttribute(), SUMOVehicleParameter::Stop::index, MsgHandler::inform(), SUMOVehicleParameter::Stop::join, SUMOVehicleParameter::Stop::lane, SUMOVehicleParameter::Stop::line, SUMOVehicleParameter::Stop::overheadWireSegment, SUMOVehicleParameter::Stop::parametersSet, SUMOVehicleParameter::Stop::parking, SUMOVehicleParameter::Stop::parkingarea, SUMOVehicleParameter::parseStopTriggers(), SUMOVehicleParameter::Stop::speed, SUMOVehicleParameter::Stop::split, STOP_ARRIVAL_SET, STOP_CONTAINER_TRIGGER_SET, STOP_DURATION_SET, STOP_END_SET, STOP_EXPECTED_CONTAINERS_SET, STOP_EXPECTED_SET, STOP_EXTENSION_SET, STOP_INDEX_END, STOP_INDEX_FIT, STOP_JOIN_SET, STOP_LINE_SET, STOP_PARKING_SET, STOP_SPEED_SET, STOP_SPLIT_SET, STOP_START_SET, STOP_TRIGGER_SET, STOP_TRIP_ID_SET, STOP_UNTIL_SET, SUMO_ATTR_ACTUALARRIVAL, SUMO_ATTR_ARRIVAL, SUMO_ATTR_BUS_STOP, SUMO_ATTR_CHARGING_STATION, SUMO_ATTR_CONTAINER_STOP, SUMO_ATTR_CONTAINER_TRIGGERED, SUMO_ATTR_DEPART, SUMO_ATTR_DURATION, SUMO_ATTR_ENDPOS, SUMO_ATTR_EXPECTED, SUMO_ATTR_EXPECTED_CONTAINERS, SUMO_ATTR_EXTENSION, SUMO_ATTR_INDEX, SUMO_ATTR_JOIN, SUMO_ATTR_LINE, SUMO_ATTR_OVERHEAD_WIRE_SEGMENT, SUMO_ATTR_PARKING, SUMO_ATTR_PARKING_AREA, SUMO_ATTR_SPEED, SUMO_ATTR_SPLIT, SUMO_ATTR_STARTPOS, SUMO_ATTR_TRIGGERED, SUMO_ATTR_TRIP_ID, SUMO_ATTR_UNTIL, SUMO_TAG_CONTAINER, toString(), SUMOVehicleParameter::Stop::triggered, SUMOVehicleParameter::Stop::tripId, SUMOVehicleParameter::Stop::until, and WRITE_WARNING.

Referenced by MSRouteHandler::addStop(), GNERouteHandler::addStop(), and addStop().

Here is the caller graph for this function:

◆ parseWalkPositions()

void RORouteHandler::parseWalkPositions ( const SUMOSAXAttributes attrs,
const std::string &  personID,
const ROEdge fromEdge,
const ROEdge *&  toEdge,
double &  departPos,
double &  arrivalPos,
std::string &  busStopID,
const ROPerson::PlanItem *const  lastStage,
bool &  ok 
)
protected

◆ registerLastDepart()

void SUMORouteHandler::registerLastDepart ( )
protectedinherited

save last depart (only to be used if vehicle is not discarded)

Definition at line 71 of file SUMORouteHandler.cpp.

References SUMOVehicleParameter::depart, DEPART_GIVEN, SUMOVehicleParameter::departProcedure, SUMOVehicleParameter::line, SUMORouteHandler::myFirstDepart, SUMORouteHandler::myLastDepart, and SUMORouteHandler::myVehicleParameter.

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

Here is the caller graph for this function:

◆ registerParent()

void GenericSAXHandler::registerParent ( const int  tag,
GenericSAXHandler handler 
)
inherited

Assigning a parent handler which is enabled when the specified tag is closed.

Definition at line 163 of file GenericSAXHandler.cpp.

References GenericSAXHandler::myParentHandler, GenericSAXHandler::myParentIndicator, and XMLSubSys::setHandler().

Referenced by NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildLaneSpeedTrigger(), and NLTriggerBuilder::parseAndBuildRerouter().

Here is the caller graph for this function:

◆ setFileName()

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 72 of file GenericSAXHandler.cpp.

References GenericSAXHandler::myFileName.

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

Here is the caller graph for this function:

◆ startElement()

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 97 of file GenericSAXHandler.cpp.

References GenericSAXHandler::convertTag(), FileHelpers::getConfigurationRelative(), GenericSAXHandler::getFileName(), SUMOSAXAttributesImpl_Xerces::getString(), FileHelpers::isAbsolute(), GenericSAXHandler::myCharactersVector, GenericSAXHandler::myExpectedRoot, GenericSAXHandler::myPredefinedTags, GenericSAXHandler::myPredefinedTagsMML, GenericSAXHandler::myRootSeen, GenericSAXHandler::myStartElement(), XMLSubSys::runParser(), SUMO_ATTR_HREF, SUMO_TAG_INCLUDE, StringUtils::transcode(), and WRITE_WARNING.

◆ warning()

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 occurred exception to process

Definition at line 201 of file GenericSAXHandler.cpp.

References GenericSAXHandler::buildErrorMessage(), and WRITE_WARNING.

Field Documentation

◆ myActiveContainerPlan

OutputDevice_String* RORouteHandler::myActiveContainerPlan
protected

The plan of the current container.

Definition at line 210 of file RORouteHandler.h.

Referenced by addStop(), closeContainer(), and myStartElement().

◆ myActiveContainerPlanSize

int RORouteHandler::myActiveContainerPlanSize
protected

The number of stages in myActiveContainerPlan.

Definition at line 213 of file RORouteHandler.h.

Referenced by addStop(), closeContainer(), and myStartElement().

◆ myActivePerson

ROPerson* RORouteHandler::myActivePerson
protected

The plan of the current person.

Definition at line 207 of file RORouteHandler.h.

Referenced by addFlowPerson(), addPersonTrip(), addStop(), addWalk(), closePerson(), closePersonFlow(), myStartElement(), and parseWalkPositions().

◆ myActiveRoute

ConstROEdgeVector RORouteHandler::myActiveRoute
protected

The current route.

Definition at line 200 of file RORouteHandler.h.

Referenced by addPersonTrip(), addStop(), addWalk(), closeRoute(), openRoute(), parseFromViaTo(), and RORouteHandler().

◆ myActiveRouteColor

const RGBColor* SUMORouteHandler::myActiveRouteColor
protectedinherited

The currently parsed route's color.

Definition at line 222 of file SUMORouteHandler.h.

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

◆ myActiveRouteID

◆ myActiveRoutePeriod

SUMOTime RORouteHandler::myActiveRoutePeriod
protected

Definition at line 204 of file RORouteHandler.h.

Referenced by closeRoute(), and openRoute().

◆ myActiveRouteProbability

double SUMORouteHandler::myActiveRouteProbability
protectedinherited

The probability of the current route.

Definition at line 219 of file SUMORouteHandler.h.

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

◆ myActiveRouteRefID

std::string SUMORouteHandler::myActiveRouteRefID
protectedinherited

The id of the route the current route references to.

Definition at line 216 of file SUMORouteHandler.h.

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

◆ myActiveRouteRepeat

int RORouteHandler::myActiveRouteRepeat
protected

number of repetitions of the active route

Definition at line 203 of file RORouteHandler.h.

Referenced by closeRoute(), and openRoute().

◆ myActiveRouteStops

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

List of the stops on the parsed route.

Definition at line 228 of file SUMORouteHandler.h.

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

◆ myBegin

const SUMOTime RORouteHandler::myBegin
protected

The begin time.

Definition at line 225 of file RORouteHandler.h.

Referenced by closeFlow(), and closeVehicle().

◆ myBeginDefault

SUMOTime SUMORouteHandler::myBeginDefault
protectedinherited

The default value for flow begins.

Definition at line 240 of file SUMORouteHandler.h.

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

◆ myCharactersVector

std::vector<std::string> GenericSAXHandler::myCharactersVector
privateinherited

A list of character strings obtained so far to build the complete characters string at the end.

Definition at line 300 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::characters(), GenericSAXHandler::endElement(), and GenericSAXHandler::startElement().

◆ myCurrentAlternatives

RORouteDef* RORouteHandler::myCurrentAlternatives
protected

The currently parsed route alternatives.

Definition at line 241 of file RORouteHandler.h.

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

◆ myCurrentCosts

double SUMORouteHandler::myCurrentCosts
protectedinherited

The currently parsed route costs.

Definition at line 225 of file SUMORouteHandler.h.

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

◆ myCurrentVType

◆ myCurrentVTypeDistribution

RandomDistributor<SUMOVTypeParameter*>* RORouteHandler::myCurrentVTypeDistribution
protected

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

Definition at line 235 of file RORouteHandler.h.

Referenced by closeVehicleTypeDistribution(), closeVType(), and openVehicleTypeDistribution().

◆ myCurrentVTypeDistributionID

std::string RORouteHandler::myCurrentVTypeDistributionID
protected

The id of the currently parsed vehicle type distribution.

Definition at line 238 of file RORouteHandler.h.

Referenced by closeVehicleTypeDistribution(), and openVehicleTypeDistribution().

◆ myEmptyDestinationsAllowed

const bool RORouteHandler::myEmptyDestinationsAllowed
protected

Information whether the "to" attribute is mandatory.

Definition at line 219 of file RORouteHandler.h.

◆ myEndDefault

SUMOTime SUMORouteHandler::myEndDefault
protectedinherited

The default value for flow ends.

Definition at line 243 of file SUMORouteHandler.h.

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

◆ myErrorOutput

MsgHandler* const RORouteHandler::myErrorOutput
protected

◆ myExpectedRoot

std::string GenericSAXHandler::myExpectedRoot
privateinherited

The root element to expect, empty string disables the check.

Definition at line 312 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::startElement().

◆ myFileName

std::string GenericSAXHandler::myFileName
privateinherited

The name of the currently parsed file.

Definition at line 309 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::getFileName(), and GenericSAXHandler::setFileName().

◆ myFirstDepart

SUMOTime SUMORouteHandler::myFirstDepart
protectedinherited

the first read departure time

Definition at line 246 of file SUMORouteHandler.h.

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

◆ myHardFail

const bool SUMORouteHandler::myHardFail
protectedinherited

flag to enable or disable hard fails

Definition at line 204 of file SUMORouteHandler.h.

Referenced by addWalk(), SUMORouteHandler::myStartElement(), MSRouteHandler::parseWalkPositions(), and parseWalkPositions().

◆ myIdSupplier

IDSupplier SUMORouteHandler::myIdSupplier
protectedinherited

generates numerical ids

Definition at line 237 of file SUMORouteHandler.h.

◆ myInsertStopEdgesAt

int SUMORouteHandler::myInsertStopEdgesAt
protectedinherited

◆ myKeepVTypeDist

const bool RORouteHandler::myKeepVTypeDist
protected

whether to keep the the vtype distribution in output

Definition at line 228 of file RORouteHandler.h.

Referenced by closeVehicle().

◆ myLaneTree

NamedRTree* RORouteHandler::myLaneTree
protected

RTree for finding lanes.

Definition at line 244 of file RORouteHandler.h.

Referenced by getLaneTree().

◆ myLastDepart

SUMOTime SUMORouteHandler::myLastDepart
protectedinherited

The insertion time of the vehicle read last.

Definition at line 210 of file SUMORouteHandler.h.

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

◆ myLoadedParameterised

Parameterised SUMORouteHandler::myLoadedParameterised
protectedinherited

Parameterised used for saving loaded generic parameters that aren't saved in Vehicles or Vehicle Types.

Definition at line 234 of file SUMORouteHandler.h.

Referenced by SUMORouteHandler::addParam(), and GNERouteHandler::closeRoute().

◆ myMapMatchingDistance

const double RORouteHandler::myMapMatchingDistance
protected

maximum distance when map-matching

Definition at line 231 of file RORouteHandler.h.

Referenced by parseGeoEdges().

◆ myMapMatchJunctions

const bool RORouteHandler::myMapMatchJunctions
protected

Definition at line 232 of file RORouteHandler.h.

Referenced by parseGeoEdges().

◆ myNet

◆ myParentHandler

GenericSAXHandler* GenericSAXHandler::myParentHandler
privateinherited

The handler to give control back to.

Definition at line 303 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::endElement(), and GenericSAXHandler::registerParent().

◆ myParentIndicator

int GenericSAXHandler::myParentIndicator
privateinherited

The tag indicating that control should be given back.

Definition at line 306 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::endElement(), and GenericSAXHandler::registerParent().

◆ myPredefinedTags

AttrMap GenericSAXHandler::myPredefinedTags
privateinherited

◆ myPredefinedTagsMML

std::vector<std::string> GenericSAXHandler::myPredefinedTagsMML
privateinherited

the map from ids to their string representation

Definition at line 285 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::GenericSAXHandler(), and GenericSAXHandler::startElement().

◆ myRootSeen

bool GenericSAXHandler::myRootSeen
privateinherited

whether the reader has already seen the root element

Definition at line 315 of file GenericSAXHandler.h.

Referenced by GenericSAXHandler::startElement().

◆ myTagMap

TagMap GenericSAXHandler::myTagMap
privateinherited

◆ myTryRepair

const bool RORouteHandler::myTryRepair
protected

Information whether routes shall be repaired.

Definition at line 216 of file RORouteHandler.h.

Referenced by closeRoute(), and openRouteDistribution().

◆ myVehicleParameter

SUMOVehicleParameter* SUMORouteHandler::myVehicleParameter
protectedinherited

Parameter of the current vehicle, trip, person, container or flow.

Definition at line 207 of file SUMORouteHandler.h.

Referenced by MSRouteHandler::addFlowPerson(), SUMORouteHandler::addParam(), MSRouteHandler::addPersonTrip(), addPersonTrip(), MSRouteHandler::addRide(), MSRouteHandler::addStop(), GNERouteHandler::addStop(), addStop(), MSRouteHandler::addTransport(), MSRouteHandler::addVehicleStopsToImplicitRoute(), MSRouteHandler::addWalk(), addWalk(), SUMORouteHandler::checkLastDepart(), MSRouteHandler::closeContainer(), closeContainer(), MSRouteHandler::closeFlow(), GNERouteHandler::closeFlow(), closeFlow(), MSRouteHandler::closePerson(), GNERouteHandler::closePerson(), closePerson(), MSRouteHandler::closePersonFlow(), GNERouteHandler::closePersonFlow(), closePersonFlow(), MSRouteHandler::closeRoute(), GNERouteHandler::closeRoute(), closeRoute(), MSRouteHandler::closeRouteDistribution(), MSRouteHandler::closeTrip(), GNERouteHandler::closeTrip(), MSRouteHandler::closeVehicle(), MSStateHandler::closeVehicle(), GNERouteHandler::closeVehicle(), closeVehicle(), MSStateHandler::myEndElement(), SUMORouteHandler::myEndElement(), MSRouteHandler::myStartElement(), MSStateHandler::myStartElement(), myStartElement(), SUMORouteHandler::myStartElement(), GNERouteHandler::openFlow(), MSRouteHandler::openRoute(), openRoute(), MSRouteHandler::openRouteDistribution(), openRouteDistribution(), GNERouteHandler::openTrip(), MSRouteHandler::parseFromViaTo(), parseFromViaTo(), parseGeoEdges(), and SUMORouteHandler::registerLastDepart().


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