#include <MSLaneSpeedTrigger.h>

This trigger reads the next maximum velocity of the lane he is responsible for from a file and sets it. Lanes with variable speeds are so possible.
Definition at line 57 of file MSLaneSpeedTrigger.h.
Public Member Functions | |
| void | characters (const XMLCh *const chars, const XERCES3_SIZE_t length) |
| The inherited method called when characters occured. | |
| void | endElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname) |
| The inherited method called when a tag is being closed. | |
| SUMOTime | execute (SUMOTime currentTime) throw (ProcessError) |
| SUMOReal | getCurrentSpeed () const |
| Returns the current speed. | |
| SUMOReal | getDefaultSpeed () const |
| const std::string & | getFileName () const throw () |
| returns the current file name | |
| const std::string & | getID () const throw () |
| Returns the id. | |
| SUMOReal | getLoadedSpeed () |
| MSLaneSpeedTrigger (const std::string &id, const std::vector< MSLane * > &destLanes, const std::string &file) throw (ProcessError) | |
| Constructor. | |
| SUMOTime | processCommand (bool move2next, SUMOTime currentTime) |
| void | registerParent (const SumoXMLTag tag, GenericSAXHandler *handler) |
| Assigning a parent handler which is enabled when the specified tag is closed. | |
| void | setFileName (const std::string &name) throw () |
| Sets the current file name. | |
| void | setOverriding (bool val) |
| void | setOverridingValue (SUMOReal val) |
| void | startElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname, const Attributes &attrs) |
| The inherited method called when a new tag opens. | |
| virtual | ~MSLaneSpeedTrigger () throw () |
SAX ErrorHandler callbacks | |
| void | error (const SAXParseException &exception) throw (ProcessError) |
| Handler for XML-errors. | |
| void | fatalError (const SAXParseException &exception) throw (ProcessError) |
| Handler for XML-errors. | |
| void | warning (const SAXParseException &exception) throw () |
| Handler for XML-warnings. | |
Protected Member Functions | |
| std::string | buildErrorMessage (const SAXParseException &exception) throw () |
| Builds an error message. | |
| virtual void | myCharacters (SumoXMLTag element, const std::string &chars) throw (ProcessError) |
| Callback method for characters to implement by derived classes. | |
inherited from GenericSAXHandler | |
| virtual void | myEndElement (SumoXMLTag element) throw (ProcessError) |
| Called on the closing of a tag;. | |
| virtual void | myStartElement (SumoXMLTag element, const SUMOSAXAttributes &attrs) throw (ProcessError) |
| Called on the opening of a tag;. | |
Protected Attributes | |
| bool | myAmOverriding |
| The information whether the read speed shall be overridden. | |
| std::vector< std::pair < SUMOTime, SUMOReal > >::iterator | myCurrentEntry |
| SUMOReal | myCurrentSpeed |
| SUMOReal | myDefaultSpeed |
| The original speed allowed on the lanes. | |
| std::vector< MSLane * > | myDestLanes |
| std::string | myID |
| The name of the object. | |
| std::vector< std::pair < SUMOTime, SUMOReal > > | myLoadedSpeeds |
| SUMOReal | mySpeedOverrideValue |
| The speed to use if overriding the read speed. | |
Private Member Functions | |
| void | init () throw (ProcessError) |
| MSLaneSpeedTrigger (const MSLaneSpeedTrigger &) | |
| Invalidated copy constructor. | |
| MSLaneSpeedTrigger & | operator= (const MSLaneSpeedTrigger &) |
| Invalidated assignment operator. | |
Private Attributes | |
| bool | myDidInit |
| The information whether init was called. | |
| MSLaneSpeedTrigger::MSLaneSpeedTrigger | ( | const std::string & | id, | |
| const std::vector< MSLane * > & | destLanes, | |||
| const std::string & | file | |||
| ) | throw (ProcessError) |
Constructor.
| [in] | id | The id of the lane speed trigger |
| [in] | net | The net the lane speed trigger belongs to |
| [in] | destLanes | List of lanes affected by this speed trigger |
| [in] | file | Name of the file to read the speeds to set from |
Definition at line 55 of file MSLaneSpeedTrigger.cpp.
References XMLSubSys::runParser().
00058 : MSTrigger(id), SUMOSAXHandler(file), 00059 myDestLanes(destLanes), myAmOverriding(false), myDidInit(false) { 00060 myCurrentSpeed = destLanes[0]->getMaxSpeed(); 00061 if (file != "") { 00062 if (!XMLSubSys::runParser(*this, file)) { 00063 throw ProcessError(); 00064 } 00065 if (!myDidInit) { 00066 init(); 00067 } 00068 } 00069 }
| MSLaneSpeedTrigger::~MSLaneSpeedTrigger | ( | ) | throw () [virtual] |
| MSLaneSpeedTrigger::MSLaneSpeedTrigger | ( | const MSLaneSpeedTrigger & | ) | [private] |
Invalidated copy constructor.
| std::string SUMOSAXHandler::buildErrorMessage | ( | const SAXParseException & | exception | ) | throw () [protected, inherited] |
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 55 of file SUMOSAXHandler.cpp.
References GenericSAXHandler::getFileName().
Referenced by SUMOSAXHandler::error(), SUMOSAXHandler::fatalError(), and SUMOSAXHandler::warning().
00055 { 00056 std::ostringstream buf; 00057 char *pMsg = XMLString::transcode(exception.getMessage()); 00058 buf << pMsg << std::endl; 00059 buf << " In file '" << getFileName() << "'" << std::endl; 00060 buf << " At line/column " << exception.getLineNumber()+1 00061 << '/' << exception.getColumnNumber() << "." << std::endl; 00062 XMLString::release(&pMsg); 00063 return buf.str(); 00064 }
| 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.
Definition at line 168 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myCharactersVector.
00169 { 00170 myCharactersVector.push_back(TplConvert<XMLCh>::_2str(chars, length)); 00171 }
| 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.
Definition at line 118 of file GenericSAXHandler.cpp.
References TplConvert< E >::_2str(), GenericSAXHandler::convertTag(), GenericSAXHandler::myCharacters(), GenericSAXHandler::myCharactersVector, GenericSAXHandler::myEndElement(), GenericSAXHandler::myParentHandler, GenericSAXHandler::myParentIndicator, XMLSubSys::setHandler(), SUMO_TAG_INCLUDE, and SUMO_TAG_NOTHING.
00120 { 00121 std::string name = TplConvert<XMLCh>::_2str(qname); 00122 SumoXMLTag element = convertTag(name); 00123 // collect characters 00124 if (myCharactersVector.size()!=0) { 00125 size_t len = 0; 00126 unsigned i; 00127 for (i=0; i<myCharactersVector.size(); ++i) { 00128 len += myCharactersVector[i].length(); 00129 } 00130 char *buf = new char[len+1]; 00131 size_t pos = 0; 00132 for (i=0; i<myCharactersVector.size(); ++i) { 00133 memcpy((unsigned char*) buf+pos, (unsigned char*) myCharactersVector[i].c_str(), 00134 sizeof(char)*myCharactersVector[i].length()); 00135 pos += myCharactersVector[i].length(); 00136 } 00137 buf[pos] = 0; 00138 00139 // call user handler 00140 try { 00141 myCharacters(element, buf); 00142 } catch (std::runtime_error &) { 00143 delete[] buf; 00144 throw; 00145 } 00146 delete[] buf; 00147 } 00148 if (element != SUMO_TAG_INCLUDE) { 00149 myEndElement(element); 00150 if (myParentHandler && myParentIndicator == element) { 00151 XMLSubSys::setHandler(*myParentHandler); 00152 myParentIndicator = SUMO_TAG_NOTHING; 00153 myParentHandler = 0; 00154 } 00155 } 00156 }
| void SUMOSAXHandler::error | ( | const SAXParseException & | exception | ) | throw (ProcessError) [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 74 of file SUMOSAXHandler.cpp.
References SUMOSAXHandler::buildErrorMessage().
00074 { 00075 throw ProcessError(buildErrorMessage(exception)); 00076 }
| SUMOTime MSLaneSpeedTrigger::execute | ( | SUMOTime | currentTime | ) | throw (ProcessError) |
Definition at line 97 of file MSLaneSpeedTrigger.cpp.
References processCommand().
Referenced by init().
00097 { 00098 return processCommand(true, currentTime); 00099 }
| void SUMOSAXHandler::fatalError | ( | const SAXParseException & | exception | ) | throw (ProcessError) [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 80 of file SUMOSAXHandler.cpp.
References SUMOSAXHandler::buildErrorMessage().
00080 { 00081 throw ProcessError(buildErrorMessage(exception)); 00082 }
| SUMOReal MSLaneSpeedTrigger::getCurrentSpeed | ( | ) | const |
Returns the current speed.
Definition at line 198 of file MSLaneSpeedTrigger.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), myAmOverriding, myCurrentEntry, myDefaultSpeed, myLoadedSpeeds, and mySpeedOverrideValue.
Referenced by GUILaneSpeedTrigger::drawGL(), GUILaneSpeedTrigger::getParameterWindow(), and processCommand().
00198 { 00199 if (myAmOverriding) { 00200 return mySpeedOverrideValue; 00201 } else { 00202 // ok, maybe the first shall not yet be the valid one 00203 if (myCurrentEntry==myLoadedSpeeds.begin()&&(*myCurrentEntry).first>MSNet::getInstance()->getCurrentTimeStep()) { 00204 return myDefaultSpeed; 00205 } 00206 // try the loaded 00207 if (myCurrentEntry!=myLoadedSpeeds.end()&&(*myCurrentEntry).first<=MSNet::getInstance()->getCurrentTimeStep()) { 00208 return (*myCurrentEntry).second; 00209 } else { 00210 return (*(myCurrentEntry-1)).second; 00211 } 00212 } 00213 }
| SUMOReal MSLaneSpeedTrigger::getDefaultSpeed | ( | ) | const |
Definition at line 168 of file MSLaneSpeedTrigger.cpp.
References myDefaultSpeed.
00168 { 00169 return myDefaultSpeed; 00170 }
| const std::string & GenericSAXHandler::getFileName | ( | ) | const throw () [inherited] |
returns the current file name
Definition at line 78 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myFileName.
Referenced by NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addEdgeLaneMeanData(), NLHandler::addRouteProbeDetector(), NLHandler::addSource(), NLHandler::addTrigger(), NLHandler::addVTypeProbeDetector(), NLHandler::beginE3Detector(), SUMOSAXHandler::buildErrorMessage(), MSRouteLoader::init(), PCNetProjectionLoader::loadIfSet(), NILoader::loadXMLType(), MSTriggeredXMLReader::myInit(), RODFDetectorHandler::myStartElement(), NLHandler::myStartElement(), NIImporter_OpenDrive::myStartElement(), myStartElement(), GUISettingsHandler::myStartElement(), RORDGenerator_ODAmounts::RORDGenerator_ODAmounts(), and GenericSAXHandler::startElement().
00078 { 00079 return myFileName; 00080 }
| const std::string& Named::getID | ( | ) | const throw () [inline, inherited] |
Returns the id.
Definition at line 59 of file Named.h.
References Named::myID.
Referenced by RORouteDef_Alternatives::addAlternative(), MSRouteProbe::addRoute(), MSEmitter::MSEmitter_FileTriggeredChild::buildAndScheduleFlowVehicle(), MSCalibrator::MSCalibrator_FileTriggeredChild::buildAndScheduleFlowVehicle(), RORouteDef_Complete::buildCurrentRoute(), ODDistrictHandler::closeDistrict(), NBTrafficLightDefinition::collectLinks(), NBTrafficLightDefinition::compute(), GUIPointOfInterest::drawGL(), MSInductLoop::enterDetectorByMove(), MSVTypeProbe::execute(), MSNet::getBusStopID(), GUITriggeredRerouter::getMicrosimID(), GUIPointOfInterest::getMicrosimID(), GUILaneSpeedTrigger::getMicrosimID(), GUIInductLoop::MyWrapper::getMicrosimID(), GUIEmitter::getMicrosimID(), GUIBusStop::getMicrosimID(), GUI_E2_ZS_Collector::MyWrapper::getMicrosimID(), traci::TraCIServer::handlePoiDomain(), RORDLoader_SUMOBase::myCharacters(), NBOwnTLDef::myCompute(), NBLoadedTLDef::myCompute(), MSTriggeredRerouter::myStartElement(), myStartElement(), MSEmitter::MSEmitter_FileTriggeredChild::myStartElement(), MSCalibrator::MSCalibrator_FileTriggeredChild::myStartElement(), NBLoadedTLDef::SignalGroup::patchTYellow(), TraCIServerAPI_Vehicle::processGet(), MSVehicle::replaceRoute(), MSVehicle::saveState(), NBOwnTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), RORDLoader_SUMOBase::startRoute(), GUIEmitter::GUIEmitterChild_UserTriggeredChild::wrappedExecute(), NBTrafficLightLogic::writeXML(), MSRouteProbe::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSE2Collector::writeXMLOutput(), and MSVehicle::~MSVehicle().
00059 { 00060 return myID; 00061 }
| SUMOReal MSLaneSpeedTrigger::getLoadedSpeed | ( | ) |
Definition at line 188 of file MSLaneSpeedTrigger.cpp.
References myCurrentEntry, and myLoadedSpeeds.
00188 { 00189 if (myCurrentEntry!=myLoadedSpeeds.begin()) { 00190 return (*(myCurrentEntry-1)).second; 00191 } else { 00192 return (*myCurrentEntry).second; 00193 } 00194 }
| void MSLaneSpeedTrigger::init | ( | ) | throw (ProcessError) [private] |
Definition at line 72 of file MSLaneSpeedTrigger.cpp.
References MSEventControl::addEvent(), execute(), MSNet::getBeginOfTimestepEvents(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), myCurrentEntry, myCurrentSpeed, myDidInit, myLoadedSpeeds, MSEventControl::NO_CHANGE, and processCommand().
Referenced by myEndElement().
00072 { 00073 // set it to the right value 00074 // assert there is at least one 00075 if (myLoadedSpeeds.size()==0) { 00076 myLoadedSpeeds.push_back(std::make_pair(100000, myCurrentSpeed)); 00077 } 00078 // set the process to the begin 00079 myCurrentEntry = myLoadedSpeeds.begin(); 00080 // pass previous time steps 00081 while ((*myCurrentEntry).first<MSNet::getInstance()->getCurrentTimeStep()&&myCurrentEntry!=myLoadedSpeeds.end()) { 00082 processCommand(true, MSNet::getInstance()->getCurrentTimeStep()); 00083 } 00084 00085 // add the processing to the event handler 00086 MSNet::getInstance()->getBeginOfTimestepEvents().addEvent( 00087 new WrappingCommand<MSLaneSpeedTrigger>(this, &MSLaneSpeedTrigger::execute), 00088 (*myCurrentEntry).first, MSEventControl::NO_CHANGE); 00089 myDidInit = true; 00090 }
| void GenericSAXHandler::myCharacters | ( | SumoXMLTag | element, | |
| const std::string & | chars | |||
| ) | throw (ProcessError) [protected, virtual, inherited] |
Callback method for characters to implement by derived classes.
Called by "endElement" (see there).
| [in] | element | The opened element, given as a SumoXMLTag |
| [in] | chars | The complete embedded character string ProcessError These method may throw a ProcessError if something fails |
Reimplemented in ROJTRTurnDefLoader, MSRouteHandler, NIImporter_OpenDrive, NIImporter_SUMO, NLHandler, PCLoaderXML, PCNetProjectionLoader, and RORDLoader_SUMOBase.
Definition at line 189 of file GenericSAXHandler.cpp.
Referenced by GenericSAXHandler::endElement().
| void MSLaneSpeedTrigger::myEndElement | ( | SumoXMLTag | element | ) | throw (ProcessError) [protected, virtual] |
Called on the closing of a tag;.
| [in] | element | ID of the currently closed element |
| ProcessError | If something fails |
Reimplemented from GenericSAXHandler.
Definition at line 160 of file MSLaneSpeedTrigger.cpp.
References init(), myDidInit, and SUMO_TAG_VSS.
00160 { 00161 if (element==SUMO_TAG_VSS && !myDidInit) { 00162 init(); 00163 } 00164 }
| void MSLaneSpeedTrigger::myStartElement | ( | SumoXMLTag | element, | |
| const SUMOSAXAttributes & | attrs | |||
| ) | throw (ProcessError) [protected, virtual] |
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 135 of file MSLaneSpeedTrigger.cpp.
References MsgHandler::getErrorInstance(), GenericSAXHandler::getFileName(), Named::getID(), MsgHandler::inform(), myLoadedSpeeds, SUMO_ATTR_SPEED, SUMO_ATTR_TIME, SUMO_TAG_STEP, and SUMOReal.
00136 { 00137 // check whether the correct tag is read 00138 if (element!=SUMO_TAG_STEP) { 00139 return; 00140 } 00141 // extract the values 00142 bool ok = true; 00143 SUMOTime next = attrs.getSUMOTimeReporting(SUMO_ATTR_TIME, "vss/step", getID().c_str(), ok); 00144 SUMOReal speed = attrs.getOptSUMORealReporting(SUMO_ATTR_SPEED, "vss/step", getID().c_str(), ok, -1); 00145 // check the values 00146 if (next<0) { 00147 MsgHandler::getErrorInstance()->inform("Wrong time in MSLaneSpeedTrigger in file '" + getFileName() + "'."); 00148 return; 00149 } 00150 if (speed<0) { 00151 MsgHandler::getErrorInstance()->inform("Wrong speed in MSLaneSpeedTrigger in file '" + getFileName() + "'."); 00152 return; 00153 } 00154 // set the values for the next step as they are valid 00155 myLoadedSpeeds.push_back(std::make_pair(next, speed)); 00156 }
| MSLaneSpeedTrigger& MSLaneSpeedTrigger::operator= | ( | const MSLaneSpeedTrigger & | ) | [private] |
Invalidated assignment operator.
Definition at line 103 of file MSLaneSpeedTrigger.cpp.
References getCurrentSpeed(), myCurrentEntry, myDestLanes, myLoadedSpeeds, and SUMOReal.
Referenced by execute(), init(), setOverriding(), and setOverridingValue().
00103 { 00104 std::vector<MSLane*>::iterator i; 00105 const SUMOReal speed = getCurrentSpeed(); 00106 for (i=myDestLanes.begin(); i!=myDestLanes.end(); ++i) { 00107 #ifdef HAVE_MESOSIM 00108 if (MSGlobals::gUseMesoSim) { 00109 MESegment *first = MSGlobals::gMesoNet->getSegmentForEdge((*i)->getEdge()); 00110 while (first!=0) { 00111 MSGlobals::gMesoNet->setSpeed(first, speed, currentTime); 00112 first = first->getNextSegment(); 00113 } 00114 continue; 00115 } 00116 #endif 00117 (*i)->setMaxSpeed(speed); 00118 } 00119 if (!move2next) { 00120 // changed from the gui 00121 return 0; 00122 } 00123 if (myCurrentEntry!=myLoadedSpeeds.end()) { 00124 ++myCurrentEntry; 00125 } 00126 if (myCurrentEntry!=myLoadedSpeeds.end()) { 00127 return ((*myCurrentEntry).first)-((*(myCurrentEntry-1)).first); 00128 } else { 00129 return 0; 00130 } 00131 }
| void GenericSAXHandler::registerParent | ( | const SumoXMLTag | tag, | |
| GenericSAXHandler * | handler | |||
| ) | [inherited] |
Assigning a parent handler which is enabled when the specified tag is closed.
Definition at line 160 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myParentHandler, GenericSAXHandler::myParentIndicator, and XMLSubSys::setHandler().
Referenced by NLTriggerBuilder::parseAndBuildLaneSpeedTrigger().
00160 { 00161 myParentHandler = handler; 00162 myParentIndicator = tag; 00163 XMLSubSys::setHandler(*this); 00164 }
| void GenericSAXHandler::setFileName | ( | const std::string & | name | ) | throw () [inherited] |
Sets the current file name.
| [in] | name | The name of the currently processed file |
Definition at line 72 of file GenericSAXHandler.cpp.
References GenericSAXHandler::myFileName.
Referenced by PCNetProjectionLoader::loadIfSet(), ROLoader::loadNet(), NIImporter_OpenStreetMap::loadNetwork(), NILoader::loadXMLType(), and traci::TraCIServer::TraCIServer().
00072 { 00073 myFileName = name; 00074 }
| void MSLaneSpeedTrigger::setOverriding | ( | bool | val | ) |
Definition at line 174 of file MSLaneSpeedTrigger.cpp.
References MSNet::getInstance(), myAmOverriding, and processCommand().
Referenced by GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdChangeOption().
00174 { 00175 myAmOverriding = val; 00176 processCommand(false, MSNet::getInstance()->getCurrentTimeStep()); 00177 }
| void MSLaneSpeedTrigger::setOverridingValue | ( | SUMOReal | val | ) |
Definition at line 181 of file MSLaneSpeedTrigger.cpp.
References MSNet::getInstance(), mySpeedOverrideValue, and processCommand().
Referenced by GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdChangeOption(), GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdPreDef(), and GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdUserDef().
00181 { 00182 mySpeedOverrideValue = val; 00183 processCommand(false, MSNet::getInstance()->getCurrentTimeStep()); 00184 }
| void GenericSAXHandler::startElement | ( | const XMLCh *const | uri, | |
| const XMLCh *const | localname, | |||
| const XMLCh *const | qname, | |||
| const 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.
Definition at line 97 of file GenericSAXHandler.cpp.
References TplConvert< E >::_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.
00100 { 00101 std::string name = TplConvert<XMLCh>::_2str(qname); 00102 SumoXMLTag element = convertTag(name); 00103 myCharactersVector.clear(); 00104 SUMOSAXAttributesImpl_Xerces na(attrs, myPredefinedTags, myPredefinedTagsMML); 00105 if (element == SUMO_TAG_INCLUDE) { 00106 std::string file = na.getString(SUMO_ATTR_HREF); 00107 if (!FileHelpers::isAbsolute(file)) { 00108 file = FileHelpers::getConfigurationRelative(getFileName(), file); 00109 } 00110 XMLSubSys::runParser(*this, file); 00111 } else { 00112 myStartElement(element, na); 00113 } 00114 }
| void SUMOSAXHandler::warning | ( | const SAXParseException & | exception | ) | throw () [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 68 of file SUMOSAXHandler.cpp.
References SUMOSAXHandler::buildErrorMessage(), MsgHandler::getWarningInstance(), and MsgHandler::inform().
00068 { 00069 MsgHandler::getWarningInstance()->inform(buildErrorMessage(exception)); 00070 }
bool MSLaneSpeedTrigger::myAmOverriding [protected] |
The information whether the read speed shall be overridden.
Definition at line 123 of file MSLaneSpeedTrigger.h.
Referenced by getCurrentSpeed(), and setOverriding().
std::vector<std::pair<SUMOTime, SUMOReal> >::iterator MSLaneSpeedTrigger::myCurrentEntry [protected] |
Definition at line 129 of file MSLaneSpeedTrigger.h.
Referenced by getCurrentSpeed(), getLoadedSpeed(), init(), and processCommand().
SUMOReal MSLaneSpeedTrigger::myCurrentSpeed [protected] |
the speed that will be set on the next call
Definition at line 117 of file MSLaneSpeedTrigger.h.
Referenced by init().
SUMOReal MSLaneSpeedTrigger::myDefaultSpeed [protected] |
The original speed allowed on the lanes.
Definition at line 120 of file MSLaneSpeedTrigger.h.
Referenced by getCurrentSpeed(), getDefaultSpeed(), and GUILaneSpeedTrigger::GUILaneSpeedTrigger().
std::vector<MSLane*> MSLaneSpeedTrigger::myDestLanes [protected] |
the lane the trigger is responsible for
Definition at line 114 of file MSLaneSpeedTrigger.h.
Referenced by processCommand().
bool MSLaneSpeedTrigger::myDidInit [private] |
The information whether init was called.
Definition at line 143 of file MSLaneSpeedTrigger.h.
Referenced by init(), and myEndElement().
std::string Named::myID [protected, inherited] |
The name of the object.
Definition at line 66 of file Named.h.
Referenced by RORouteDef_OrigDest::buildCurrentRoute(), RORouteDef_Complete::buildCurrentRoute(), RORouteDef_Alternatives::buildCurrentRoute(), and Named::getID().
std::vector<std::pair<SUMOTime, SUMOReal> > MSLaneSpeedTrigger::myLoadedSpeeds [protected] |
Definition at line 128 of file MSLaneSpeedTrigger.h.
Referenced by getCurrentSpeed(), getLoadedSpeed(), init(), myStartElement(), and processCommand().
SUMOReal MSLaneSpeedTrigger::mySpeedOverrideValue [protected] |
The speed to use if overriding the read speed.
Definition at line 126 of file MSLaneSpeedTrigger.h.
Referenced by getCurrentSpeed(), GUILaneSpeedTrigger::GUILaneSpeedTrigger(), and setOverridingValue().
1.5.6