SUMO - Simulation of Urban MObility
|
#include <RORDGenerator_ODAmounts.h>
Data Structures | |
class | FlowDef |
Public Member Functions | |
void | characters (const XMLCh *const chars, const XERCES3_SIZE_t length) |
The inherited method called when characters occured. More... | |
void | endDocument () |
Called when the document has ended. More... | |
bool | ended () const |
Returns the information whether no routes are available from this loader anymore. 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 | getLastReadTimeStep () const |
Returns the time the current (last read) route starts at. More... | |
bool | readRoutesAtLeastUntil (SUMOTime until) |
Adds routes from the file until the given time is reached. More... | |
void | registerParent (const int tag, GenericSAXHandler *handler) |
Assigning a parent handler which is enabled when the specified tag is closed. More... | |
RORDGenerator_ODAmounts (RONet &net, SUMOTime begin, SUMOTime end, bool emptyDestinationsAllowed, bool randomize, const std::string &file="") | |
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... | |
~RORDGenerator_ODAmounts () | |
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... | |
Protected Member Functions | |
std::string | buildErrorMessage (const XERCES_CPP_NAMESPACE::SAXParseException &exception) |
Builds an error message. More... | |
ROEdge * | getEdge (const SUMOSAXAttributes &attrs, const std::string &purpose, SumoXMLAttr which, const std::string &id, bool emptyAllowed) |
Parses a named edge frm the attributes. More... | |
std::string | getVehicleID (const SUMOSAXAttributes &attrs) |
Parses the vehicle id. More... | |
virtual void | myCharacters (int element, const std::string &chars) |
Callback method for characters to implement by derived classes. More... | |
void | myEndFlowAmountDef () |
Closes the trip amount parsing. More... | |
void | parseFlowAmountDef (const SUMOSAXAttributes &attrs) |
Parses the trip amount definition. More... | |
inherited from GenericSAXHandler | |
void | myStartElement (int element, const SUMOSAXAttributes &attrs) |
Called on the opening of a tag;. More... | |
void | myEndElement (int element) |
Called when a closing tag occurs. More... | |
Protected Attributes | |
SUMOTime | myBegin |
The time for which the first route shall be loaded. More... | |
ROEdge * | myBeginEdge |
The starting edge. More... | |
SUMOTime | myCurrentDepart |
The currently read vehicle's depart. More... | |
SUMOVTypeParameter * | myCurrentVehicleType |
The currently parsed vehicle type. More... | |
const bool | myEmptyDestinationsAllowed |
Information whether empty destinations are allowed This is a feature used for the handling of explicit routes within the jtrrouter where the destination is not necessary. More... | |
SUMOTime | myEnd |
The time for which the first route shall be loaded. More... | |
bool | myEnded |
Information whether the whole file has been parsed. More... | |
ROEdge * | myEndEdge |
The end edge. More... | |
IDSupplier | myIdSupplier |
generates numerical ids More... | |
RONet & | myNet |
The network to add routes to. More... | |
bool | myNextRouteRead |
The information whether the next route was read. More... | |
SUMOVehicleParameter * | myParameter |
SUMOSAXReader * | myParser |
The parser used. More... | |
const bool | myWithTaz |
Information whether zones (districts) are used as origins / destinations. More... | |
Private Types | |
typedef std::vector< FlowDef * > | FlowDefV |
Definition of a container for flo definitions (vector) More... | |
Private Member Functions | |
void | buildForTimeStep (SUMOTime time) |
Builds the routes for the given time step. More... | |
RORDGenerator_ODAmounts & | operator= (const RORDGenerator_ODAmounts &src) |
Invalidated assignment operator. More... | |
RORDGenerator_ODAmounts (const RORDGenerator_ODAmounts &src) | |
Invalidated copy constructor. More... | |
Private Attributes | |
SUMOTime | myCurrentTimeStep |
The current time step read. More... | |
FlowDefV | myFlows |
The definitions of the read flows. More... | |
SUMOTime | myIntervalBegin |
The begin of the interval current read. More... | |
SUMOTime | myIntervalEnd |
The end of the interval current read. More... | |
std::set< std::string > | myKnownIDs |
A storage for ids (!!! this should be done router-wide) More... | |
bool | myRandom |
Information whether randomized departures are used. More... | |
SUMOTime | myUpperIntervalBegin |
The begin of the embedding interval (if given) More... | |
SUMOTime | myUpperIntervalEnd |
The end of the embedding interval (if given) More... | |
unsigned int | myVehicle2InsertNumber |
The number of vehicles to insert. More... | |
This class is a file-based generator. Within the first step, all route definitions are parsed into the memory from a file and then consecutively build on demand.
Definition at line 60 of file RORDGenerator_ODAmounts.h.
|
private |
Definition of a container for flo definitions (vector)
Definition at line 195 of file RORDGenerator_ODAmounts.h.
RORDGenerator_ODAmounts::RORDGenerator_ODAmounts | ( | RONet & | net, |
SUMOTime | begin, | ||
SUMOTime | end, | ||
bool | emptyDestinationsAllowed, | ||
bool | randomize, | ||
const std::string & | file = "" |
||
) |
Constructor.
Definition at line 139 of file RORDGenerator_ODAmounts.cpp.
References GenericSAXHandler::getFileName(), ROTypedXMLRoutesLoader::myCurrentDepart, and XMLSubSys::runParser().
RORDGenerator_ODAmounts::~RORDGenerator_ODAmounts | ( | ) |
|
private |
Invalidated copy constructor.
|
protectedinherited |
Builds an error message.
The error message includes the file name and the line/column information as supported by the given SAXParseException
[in] | exception | The name of the currently processed file |
Definition at line 193 of file GenericSAXHandler.cpp.
References GenericSAXHandler::getFileName().
Referenced by GenericSAXHandler::error(), GenericSAXHandler::fatalError(), and GenericSAXHandler::warning().
|
private |
Builds the routes for the given time step.
Definition at line 178 of file RORDGenerator_ODAmounts.cpp.
References RORDGenerator_ODAmounts::FlowDef::addRoutes(), RORDGenerator_ODAmounts::FlowDef::applicableForTime(), RORDGenerator_ODAmounts::FlowDef::getIntervalEnd(), ROTypedXMLRoutesLoader::myEnd, ROTypedXMLRoutesLoader::myEnded, myFlows, and ROTypedXMLRoutesLoader::myNet.
Referenced by readRoutesAtLeastUntil().
|
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.
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.
|
inherited |
Called when the document has ended.
Definition at line 83 of file ROTypedXMLRoutesLoader.cpp.
References ROTypedXMLRoutesLoader::myEnded.
|
inlineinherited |
Returns the information whether no routes are available from this loader anymore.
Definition at line 101 of file ROTypedXMLRoutesLoader.h.
References ROTypedXMLRoutesLoader::myEnded.
Referenced by ROTypedXMLRoutesLoader::readRoutesAtLeastUntil().
|
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.
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.
|
inherited |
Handler for XML-errors.
The message is built using buildErrorMessage and thrown within a ProcessError.
[in] | exception | The occured exception to process |
ProcessError | On any call |
Definition at line 212 of file GenericSAXHandler.cpp.
References GenericSAXHandler::buildErrorMessage().
|
inherited |
Handler for XML-errors.
The message is built using buildErrorMessage and thrown within a ProcessError.
ProcessError | On any call |
[in] | exception | The occured exception to process |
Definition at line 218 of file GenericSAXHandler.cpp.
References GenericSAXHandler::buildErrorMessage().
|
protectedinherited |
Parses a named edge frm the attributes.
Definition at line 118 of file RORDLoader_TripDefs.cpp.
References RONet::getEdge(), SUMOSAXAttributes::getStringReporting(), ROTypedXMLRoutesLoader::myNet, SUMO_ATTR_FROM_TAZ, SUMO_ATTR_TO_TAZ, UNUSED_PARAMETER, and WRITE_ERROR.
Referenced by RORDLoader_TripDefs::myStartElement(), and parseFlowAmountDef().
|
inherited |
returns the current file name
Definition at line 86 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myFileName.
Referenced by NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addEdgeLaneMeanData(), NLHandler::addInstantE1Detector(), NLHandler::addPOI(), NLHandler::addPoly(), NLHandler::addRouteProbeDetector(), NLHandler::addVTypeProbeDetector(), NLHandler::beginE3Detector(), GenericSAXHandler::buildErrorMessage(), MSRouteLoader::init(), PCNetProjectionLoader::loadIfSet(), NILoader::loadXMLType(), MSTriggeredXMLReader::myInit(), GUISettingsHandler::myStartElement(), RODFDetectorHandler::myStartElement(), RORDLoader_TripDefs::myStartElement(), SUMORouteHandler::myStartElement(), RORDLoader_SUMOBase::myStartElement(), PCLoaderXML::myStartElement(), NLHandler::myStartElement(), NIImporter_OpenDrive::myStartElement(), RORDGenerator_ODAmounts(), ROTypedXMLRoutesLoader::ROTypedXMLRoutesLoader(), XMLSubSys::runParser(), and GenericSAXHandler::startElement().
|
inlineinherited |
Returns the time the current (last read) route starts at.
Definition at line 92 of file ROTypedXMLRoutesLoader.h.
References ROTypedXMLRoutesLoader::myCurrentDepart.
Referenced by ROTypedXMLRoutesLoader::readRoutesAtLeastUntil().
|
protectedinherited |
Parses the vehicle id.
Definition at line 104 of file RORDLoader_TripDefs.cpp.
References IDSupplier::getNext(), SUMOSAXAttributes::getOptStringReporting(), RORDLoader_TripDefs::myIdSupplier, and SUMO_ATTR_ID.
Referenced by RORDLoader_TripDefs::myStartElement(), and parseFlowAmountDef().
|
protectedvirtualinherited |
Callback method for characters to implement by derived classes.
Called by "endElement" (see there).
[in] | element | The opened element, given as a int |
[in] | chars | The 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().
|
protectedvirtual |
Called when a closing tag occurs.
[in] | element | ID of the currently opened element |
ProcessError | If something fails |
Reimplemented from GenericSAXHandler.
Definition at line 243 of file RORDGenerator_ODAmounts.cpp.
References RORDLoader_TripDefs::myEndElement(), myEndFlowAmountDef(), myUpperIntervalBegin, myUpperIntervalEnd, SUMO_TAG_FLOW, and SUMO_TAG_INTERVAL.
|
protected |
Closes the trip amount parsing.
!! set double in route def and flowdef?
Definition at line 255 of file RORDGenerator_ODAmounts.cpp.
References RORouteDef::addLoadedAlternative(), RONet::addRouteDef(), SUMOVehicleParameter::color, MsgHandler::getErrorInstance(), RONet::getVehicleTypeSecure(), SUMOVehicleParameter::id, ROTypedXMLRoutesLoader::myBegin, RORDLoader_TripDefs::myBeginEdge, RORDLoader_TripDefs::myEndEdge, myFlows, myIntervalBegin, myIntervalEnd, ROTypedXMLRoutesLoader::myNet, ROTypedXMLRoutesLoader::myNextRouteRead, RORDLoader_TripDefs::myParameter, myRandom, myVehicle2InsertNumber, VEHPARS_COLOR_SET, SUMOVehicleParameter::vtypeid, SUMOVehicleParameter::wasSet(), and WRITE_ERROR.
Referenced by myEndElement().
|
protectedvirtual |
Called on the opening of a tag;.
[in] | element | ID of the currently opened element |
[in] | attrs | Attributes within the currently opened element |
ProcessError | If something fails |
Reimplemented from GenericSAXHandler.
Definition at line 198 of file RORDGenerator_ODAmounts.cpp.
References SUMOSAXAttributes::getOptSUMOTimeReporting(), RORDLoader_TripDefs::myStartElement(), myUpperIntervalBegin, myUpperIntervalEnd, parseFlowAmountDef(), SUMO_ATTR_BEGIN, SUMO_ATTR_END, SUMO_TAG_FLOW, and SUMO_TAG_INTERVAL.
|
private |
Invalidated assignment operator.
|
protected |
Parses the trip amount definition.
Definition at line 212 of file RORDGenerator_ODAmounts.cpp.
References RORDLoader_TripDefs::getEdge(), SUMOSAXAttributes::getIntReporting(), SUMOSAXAttributes::getOptSUMOTimeReporting(), RORDLoader_TripDefs::getVehicleID(), SUMOVehicleParameter::id, RORDLoader_TripDefs::myBeginEdge, RORDLoader_TripDefs::myEmptyDestinationsAllowed, RORDLoader_TripDefs::myEndEdge, myIntervalBegin, myIntervalEnd, myKnownIDs, RORDLoader_TripDefs::myParameter, myUpperIntervalBegin, myUpperIntervalEnd, myVehicle2InsertNumber, SUMOVehicleParserHelper::parseVehicleAttributes(), StringUtils::replace(), SUMO_ATTR_BEGIN, SUMO_ATTR_END, SUMO_ATTR_FROM, SUMO_ATTR_NUMBER, and SUMO_ATTR_TO.
Referenced by myStartElement().
Adds routes from the file until the given time is reached.
[in] | time | The time until which route definitions shall be loaded |
ProcessError | If a major error occured |
Reimplemented from ROTypedXMLRoutesLoader.
Definition at line 161 of file RORDGenerator_ODAmounts.cpp.
References buildForTimeStep(), DELTA_T, ROTypedXMLRoutesLoader::myBegin, and ROTypedXMLRoutesLoader::myCurrentDepart.
|
inherited |
Assigning a parent handler which is enabled when the specified tag is closed.
Definition at line 168 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myParentHandler, GenericSAXHandler::myParentIndicator, and XMLSubSys::setHandler().
Referenced by NLTriggerBuilder::parseAndBuildLaneSpeedTrigger(), and NLTriggerBuilder::parseAndBuildRerouter().
|
inherited |
Sets the current file name.
[in] | name | The name of the currently processed file |
Definition at line 80 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myFileName.
Referenced by NIImporter_SUMO::_loadNetwork(), GUISettingsHandler::GUISettingsHandler(), NIImporter_OpenStreetMap::load(), PCNetProjectionLoader::loadIfSet(), loadNet(), ROLoader::loadNet(), NIImporter_ITSUMO::loadNetwork(), NIImporter_MATSim::loadNetwork(), NIImporter_OpenDrive::loadNetwork(), and XMLSubSys::runParser().
|
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.
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.
|
inherited |
Handler for XML-warnings.
The message is built using buildErrorMessage and reported to the warning-instance of the MsgHandler.
[in] | exception | The occured exception to process |
Definition at line 206 of file GenericSAXHandler.cpp.
References GenericSAXHandler::buildErrorMessage(), and WRITE_WARNING.
|
protectedinherited |
The time for which the first route shall be loaded.
Definition at line 118 of file ROTypedXMLRoutesLoader.h.
Referenced by RORDLoader_SUMOBase::closeVehicle(), myEndFlowAmountDef(), and readRoutesAtLeastUntil().
|
protectedinherited |
The starting edge.
Definition at line 103 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::myEndElement(), myEndFlowAmountDef(), RORDLoader_TripDefs::myStartElement(), and parseFlowAmountDef().
|
protectedinherited |
The currently read vehicle's depart.
Definition at line 127 of file ROTypedXMLRoutesLoader.h.
Referenced by ROTypedXMLRoutesLoader::getLastReadTimeStep(), RORDLoader_TripDefs::myStartElement(), RORDLoader_SUMOBase::myStartElement(), readRoutesAtLeastUntil(), and RORDGenerator_ODAmounts().
|
private |
The current time step read.
Definition at line 192 of file RORDGenerator_ODAmounts.h.
|
protectedinherited |
The currently parsed vehicle type.
Definition at line 117 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::myEndElement(), and RORDLoader_TripDefs::myStartElement().
|
protectedinherited |
Information whether empty destinations are allowed This is a feature used for the handling of explicit routes within the jtrrouter where the destination is not necessary.
Definition at line 111 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::myStartElement(), and parseFlowAmountDef().
|
protectedinherited |
The time for which the first route shall be loaded.
Definition at line 121 of file ROTypedXMLRoutesLoader.h.
Referenced by buildForTimeStep(), RORDLoader_SUMOBase::closeVehicle(), and RORDLoader_TripDefs::myEndElement().
|
protectedinherited |
Information whether the whole file has been parsed.
Definition at line 133 of file ROTypedXMLRoutesLoader.h.
Referenced by buildForTimeStep(), ROTypedXMLRoutesLoader::endDocument(), ROTypedXMLRoutesLoader::ended(), and ROTypedXMLRoutesLoader::readRoutesAtLeastUntil().
|
protectedinherited |
The end edge.
Definition at line 106 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::myEndElement(), myEndFlowAmountDef(), RORDLoader_TripDefs::myStartElement(), and parseFlowAmountDef().
|
private |
The definitions of the read flows.
Definition at line 198 of file RORDGenerator_ODAmounts.h.
Referenced by buildForTimeStep(), myEndFlowAmountDef(), and ~RORDGenerator_ODAmounts().
|
protectedinherited |
generates numerical ids
Definition at line 100 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::getVehicleID().
|
private |
The begin of the interval current read.
Definition at line 177 of file RORDGenerator_ODAmounts.h.
Referenced by RORDGenerator_ODAmounts::FlowDef::addRoutes(), myEndFlowAmountDef(), and parseFlowAmountDef().
|
private |
The end of the interval current read.
Definition at line 180 of file RORDGenerator_ODAmounts.h.
Referenced by RORDGenerator_ODAmounts::FlowDef::addRoutes(), RORDGenerator_ODAmounts::FlowDef::getIntervalEnd(), myEndFlowAmountDef(), and parseFlowAmountDef().
|
private |
A storage for ids (!!! this should be done router-wide)
Definition at line 201 of file RORDGenerator_ODAmounts.h.
Referenced by parseFlowAmountDef().
|
protectedinherited |
The network to add routes to.
Definition at line 115 of file ROTypedXMLRoutesLoader.h.
Referenced by buildForTimeStep(), RORDLoader_SUMOBase::closeVehicle(), RORDLoader_TripDefs::getEdge(), RORDLoader_TripDefs::myEndElement(), RORDLoader_SUMOBase::myEndElement(), myEndFlowAmountDef(), and RORDLoader_SUMOBase::parseRoute().
|
protectedinherited |
The information whether the next route was read.
Definition at line 130 of file ROTypedXMLRoutesLoader.h.
Referenced by RORDLoader_TripDefs::myEndElement(), RORDLoader_SUMOBase::myEndElement(), myEndFlowAmountDef(), and ROTypedXMLRoutesLoader::readRoutesAtLeastUntil().
|
protectedinherited |
Definition at line 119 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::myEndElement(), myEndFlowAmountDef(), RORDLoader_TripDefs::myStartElement(), and parseFlowAmountDef().
|
protectedinherited |
The parser used.
Definition at line 124 of file ROTypedXMLRoutesLoader.h.
Referenced by ROTypedXMLRoutesLoader::readRoutesAtLeastUntil(), ROTypedXMLRoutesLoader::ROTypedXMLRoutesLoader(), and ROTypedXMLRoutesLoader::~ROTypedXMLRoutesLoader().
|
private |
Information whether randomized departures are used.
Definition at line 204 of file RORDGenerator_ODAmounts.h.
Referenced by RORDGenerator_ODAmounts::FlowDef::addRoutes(), and myEndFlowAmountDef().
|
private |
The begin of the embedding interval (if given)
Definition at line 183 of file RORDGenerator_ODAmounts.h.
Referenced by myEndElement(), myStartElement(), and parseFlowAmountDef().
|
private |
The end of the embedding interval (if given)
Definition at line 186 of file RORDGenerator_ODAmounts.h.
Referenced by myEndElement(), myStartElement(), and parseFlowAmountDef().
|
private |
The number of vehicles to insert.
Definition at line 189 of file RORDGenerator_ODAmounts.h.
Referenced by RORDGenerator_ODAmounts::FlowDef::addRoutes(), myEndFlowAmountDef(), and parseFlowAmountDef().
|
protectedinherited |
Information whether zones (districts) are used as origins / destinations.
Definition at line 114 of file RORDLoader_TripDefs.h.
Referenced by RORDLoader_TripDefs::myStartElement().